亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? syscall.c.svn-base

?? 模擬多核狀態下龍芯處理器的功能
?? SVN-BASE
?? 第 1 頁 / 共 5 頁
字號:
      }
      break;


    /* syscall SS_SYS_execve() 4010 is not implemented for simplescalar */  

    
    case SS_SYS_chdir:
      {
	char buf[MAXBUFSIZE];

	/* copy filename to host memory */
	mem_strcpy(mem_fn, mem, Read, /*fname*/regs->regs_R[4], buf);

	/* change the working directory */
	/*result*/regs->regs_R[2] = chdir(buf);

	/* check for an error condition */
	if (regs->regs_R[2] != -1)
	  regs->regs_R[7] = 0;
	else
	  {
	    /* got an error, return details */
	    regs->regs_R[2] = errno;
	    regs->regs_R[7] = 1;
	  }
      }
      break;


	/* get the system time */
	case SS_SYS_time:
	  {
	  	time_t * tloc;
	  	tloc = (time_t *)malloc(sizeof(time_t));
	  	if (!tloc)
	  	  fatal("out of virtual memory in SYS_SS_time");
	  	
		/* copy the arguments to the host memory */
	  	mem_bcopy(mem_fn, mem, Read, regs->regs_R[4],
		  tloc, sizeof(time_t));

		/* get the system time */
		regs->regs_R[2] = time(tloc);
		
		/* copy the result to the target memory */
		mem_bcopy(mem_fn, mem, Write, regs->regs_R[4],
		  tloc, sizeof(time_t));

		/* check for an error condition */
		if (regs->regs_R[2] != -1)
	      regs->regs_R[7] = 0;
	    else
	    {
	    /* got an error, return details */
	      regs->regs_R[2] = errno;
	      regs->regs_R[7] = 1;
	    }
	    free(tloc);
	  }
	break;


	case SS_SYS_mknod:
	  {
	  	char buf[MAXBUFSIZE];

	  	/* copy filename to host memory */
	    mem_strcpy(mem_fn, mem, Read, /*fname*/regs->regs_R[4], buf);

	  	/*result*/regs->regs_R[2] = mknod(buf, regs->regs_R[5], regs->regs_R[6]);
		/* check for an error condition */
	    if (regs->regs_R[2] != -1)
	      regs->regs_R[7] = 0;
	    else
	    {
	      /* got an error, return details */
	      regs->regs_R[2] = errno;
	      regs->regs_R[7] = 1;
	    }
	}
	break;


    case SS_SYS_chmod:
      {
	char buf[MAXBUFSIZE];

	/* copy filename to host memory */
	mem_strcpy(mem_fn, mem, Read, /*fname*/regs->regs_R[4], buf);

	/* chmod the file */
	/*result*/regs->regs_R[2] = chmod(buf, /*mode*/regs->regs_R[5]);

	/* check for an error condition */
	if (regs->regs_R[2] != -1)
	  regs->regs_R[7] = 0;
	else
	  {
	    /* got an error, return details */
	    regs->regs_R[2] = errno;
	    regs->regs_R[7] = 1;
	  }
      }
      break;


case SS_SYS_lchown:
#ifdef _MSC_VER
      warn("syscall chown() not yet implemented for MSC...");
      regs->regs_R[7] = 0;
#else /* !_MSC_VER */
      {
	char buf[MAXBUFSIZE];

	/* copy filename to host memory */
	mem_strcpy(mem_fn, mem, Read, /*fname*/regs->regs_R[4], buf);

	/* chown the file */
	/*result*/regs->regs_R[2] = lchown(buf, /*owner*/regs->regs_R[5],
				    /*group*/regs->regs_R[6]);

	/* check for an error condition */
	if (regs->regs_R[2] != -1)
	  regs->regs_R[7] = 0;
	else
	  {
	    /* got an error, return details */
	    regs->regs_R[2] = errno;
	    regs->regs_R[7] = 1;
	  }
      }
#endif /* _MSC_VER */
      break;


     case SS_SYS_stat:
      {
#if 0 /* mips mark it as unimplemented */
	char buf[MAXBUFSIZE];
	struct ss_old_statbuf ss_old_sbuf;
	struct __old_kernel_stat old_sbuf;
	
	/* copy filename to host memory */
	mem_strcpy(mem_fn, mem, Read, /*fName*/regs->regs_R[4], buf);

	/* stat() the file */
	/*result*/regs->regs_R[2] = stat(buf, &old_sbuf);
	
	/* check for an error condition */
	if (regs->regs_R[2] != -1)
	  regs->regs_R[7] = 0;
	else
	  {
	    /* got an error, return details */
	    regs->regs_R[2] = errno;
	    regs->regs_R[7] = 1;
	  }

	/* translate from host stat structure to target format */
	ss_old_sbuf.ss_st_dev = (word_t)MD_SWAPH(old_sbuf.st_dev);
	ss_old_sbuf.ss_st_ino = (word_t)MD_SWAPH(old_sbuf.st_ino);
	ss_old_sbuf.ss_st_mode = (word_t)MD_SWAPH(old_sbuf.st_mode);
	ss_old_sbuf.ss_st_nlink = (word_t)MD_SWAPH(old_sbuf.st_nlink);
	ss_old_sbuf.ss_st_uid = (word_t)MD_SWAPH(old_sbuf.st_uid);
	ss_old_sbuf.ss_st_gid = (word_t)MD_SWAPH(old_sbuf.st_gid);
	ss_old_sbuf.ss_st_rdev = (word_t)MD_SWAPH(old_sbuf.st_rdev);
	ss_old_sbuf.ss_st_size = (long)MD_SWAPW(old_sbuf.st_size);
	ss_old_sbuf.ss_st_atime = (word_t)MD_SWAPW(old_sbuf.st_atime);
	ss_old_sbuf.ss_st_mtime = (word_t)MD_SWAPW(old_sbuf.st_mtime);
	ss_old_sbuf.ss_st_ctime = (word_t)MD_SWAPW(old_sbuf.st_ctime);

	ss_old_sbuf.ss_st_res1 = ss_old_sbuf.ss_st_res2 = ss_old_sbuf.ss_st_res3 = 0;
	ss_old_sbuf.ss_st_blksize = 0;
	ss_old_sbuf.ss_st_blocks = 0;
	ss_old_sbuf.ss_st_unused[0] = 0;
	ss_old_sbuf.ss_st_unused[1] = 0;
	
	/* copy stat() results to simulator memory */
	mem_bcopy(mem_fn, mem, Write, /*old_sbuf*/regs->regs_R[5],
		  &ss_old_sbuf, sizeof(struct ss_old_statbuf));
#else
	/* got an error, return details */
	regs->regs_R[2] = -ENOSYS;
	regs->regs_R[7] = 1;
#endif
      }
      break;

    
    case SS_SYS_lseek:
      /* seek into file */
      regs->regs_R[2] =
	lseek(/*fd*/regs->regs_R[4],
	      /*off*/regs->regs_R[5], /*dir*/regs->regs_R[6]);

      /* check for an error condition */
      if (regs->regs_R[2] != -1)
	regs->regs_R[7] = 0;
      else
	{
	  /* got an error, return details */
	  regs->regs_R[2] = errno;
	  regs->regs_R[7] = 1;
	}
      break;

      
    case SS_SYS_getpid:
#ifdef _MSC_VER
      warn("syscall getuid() not yet implemented for MSC...");
#else /*!_MSC_VER*/
      /* get the simulator process id */
      /*result*/regs->regs_R[2] = getpid();

      /* check for an error condition */
      if (regs->regs_R[2] != -1)
	regs->regs_R[7] = 0;
      else
	{
	  /* got an error, return details */
	  regs->regs_R[2] = errno;
	  regs->regs_R[7] = 1;
	}
#endif /*_MSC_VER*/
      break;


#if 0
    case SS_SYS_mount:
    {
		char dev_name[MAXBUFSIZE], dir_name[MAXBUFSIZE], type[MAXBUFSIZE];
		unsigned long *data, addr;

		data = (unsigned long *)malloc(sizeof(unsigned long));
		if (!data)
		  fatal ("out of virtual memory in SS_SYS_mount");
		
    	/* copy arguments to the host memory and translate it to the host format */
    	mem_strcpy(mem_fn, mem, Read, /*dev_name*/regs->regs_R[4], dev_name);
        mem_strcpy(mem_fn, mem, Read, /*dir_name*/regs->regs_R[5], dir_name);
        mem_strcpy(mem_fn, mem, Read, /*type*/regs->regs_R[6], type);
        /* locate the argument first and then copy it to the host memory */ 
        mem_bcopy(mem_fn, mem, Read, regs->regs_R[29]+16,
          &addr, sizeof(unsigned long));
        addr = MD_SWAPW(addr);
        mem_bcopy(mem_fn, mem, Read, /*data*/addr, data, sizeof(unsigned long));
		*data = MD_SWAPW(*data);
		
		/*result*/regs->regs_R[2] = mount(dev_name, dir_name, type, 
			regs->regs_R[7], data);
		
		/* check for an error condition */
        if (regs->regs_R[2] != -1)
	      regs->regs_R[7] = 0;
        else
	    {
	    /* got an error, return details */
	      regs->regs_R[2] = errno;
	      regs->regs_R[7] = 1;
	    }
        free(data);
    }	
    break;


	case SS_SYS_oldumount:
	{
		char name[MAXBUFSIZE];

		/* copy arguments to the host memory */
		mem_strcpy(mem_fn, mem, Read, /*name*/regs->regs_R[4], name);

		/*result*/regs->regs_R[2] = umount(name, 0);
		/* check for an error condition */
	    if (regs->regs_R[2] != -1)
	      regs->regs_R[7] = 0;
	    else
	    {
	      /* got an error, return details */
	      regs->regs_R[2] = errno;
	      regs->regs_R[7] = 1;
	    }
	}
    break;
#endif


    case SS_SYS_setuid:
#ifdef _MSC_VER_
	warn("syscall setuid() not yet implemented for MSC...");
	regs->regs_R[7] = 0;
#else
	{
		half_t uid;

    	/* copy arguments to the host memory */
    	uid = (half_t)regs->regs_R[4];

    	regs->regs_R[2] = setuid(uid);

    	/* check for an error condition */
	    if (regs->regs_R[2] != -1)
	      regs->regs_R[7] = 0;
	    else
	    {
	      /* got an error, return details */
	      regs->regs_R[2] = errno;
	      regs->regs_R[7] = 1;
	    }
	}
#endif /*_MSC_VER_*/
    break;


    case SS_SYS_getuid:
#ifdef _MSC_VER
      warn("syscall getuid() not yet implemented for MSC...");
      regs->regs_R[7] = 0;
#else /* !_MSC_VER */
      /* get current user id */
      /* result */regs->regs_R[2] = getuid();

      /* check for an error condition */
      if (regs->regs_R[2] != -1)
	    regs->regs_R[7] = 0;
      else
	{
	  /* got an error, return details */
	  regs->regs_R[2] = errno;
	  regs->regs_R[7] = 1;
	}
#endif /* _MSC_VER */
      break;


    case SS_SYS_stime:
	{
		/*long*/time_t * tptr;

		tptr = (time_t*)malloc(sizeof(time_t));
		if (!tptr)
		  fatal("out of virtual memory in SS_SYS_stime");

		/* copy arguments to the host memory */
		mem_bcopy(mem_fn, mem, Read, regs->regs_R[4],
		  tptr, sizeof(time_t));

		/* translate from host time_t structure to target format */
		*tptr = MD_SWAPW(*tptr);
		
		/*result*/regs->regs_R[2] = stime(tptr);
		
		/* check for an error condition */
	    if (regs->regs_R[2] != -1)
	      regs->regs_R[7] = 0;
	    else
	    {
	      /* got an error, return details */
	      regs->regs_R[2] = errno;
	      regs->regs_R[7] = 1;
	    }
	    free(tptr);
    }
	break;


#if 0
	case SS_SYS_ptrace:
	{
		/*result*/regs->regs_R[2] = ptrace(/*request*/regs->regs_R[4], /*pid*/regs->regs_R[5], 
			                              /*addr*/regs->regs_R[6], /*data*/regs->regs_R[7]);

		/* check for an error condition */
	    if (regs->regs_R[2] != -1)
	      regs->regs_R[7] = 0;
	    else
	    {
	      /* got an error, return details */
	      regs->regs_R[2] = errno;
	      regs->regs_R[7] = 1;
	    }
	}
	break;
#endif


	case SS_SYS_alarm:
    {
		/*result*/regs->regs_R[2] = alarm(/*seconds*/regs->regs_R[4]);    

		/* check for an error condition */
	    if (regs->regs_R[2] != -1)
	      regs->regs_R[7] = 0;
	    else
	    {
	      /* got an error, return details */
	      regs->regs_R[2] = errno;
	      regs->regs_R[7] = 1;
	    }
	}
    break;


case SS_SYS_fstat:
      {
#if 0 /* linux/mips have not implement this */
	struct ss_old_statbuf ss_old_sbuf;
	struct __old_kernel_stat old_sbuf;

	/* fstat() the file */
	/*result*/regs->regs_R[2] = fstat(/*fd*/regs->regs_R[4], &old_sbuf);

	/* check for an error condition */
	if (regs->regs_R[2] != -1)
	  regs->regs_R[7] = 0;
	else
	  {
	    /* got an error, return details */
	    regs->regs_R[2] = errno;
	    regs->regs_R[7] = 1;
	  }

	/* translate from host stat structure to target format */
	ss_old_sbuf.ss_st_dev = (word_t)MD_SWAPH(old_sbuf.st_dev);
	ss_old_sbuf.ss_st_ino = (word_t)MD_SWAPH(old_sbuf.st_ino);
	ss_old_sbuf.ss_st_mode = (word_t)MD_SWAPH(old_sbuf.st_mode);
	ss_old_sbuf.ss_st_nlink = (word_t)MD_SWAPH(old_sbuf.st_nlink);
	ss_old_sbuf.ss_st_uid = (word_t)MD_SWAPH(old_sbuf.st_uid);
	ss_old_sbuf.ss_st_gid = (word_t)MD_SWAPH(old_sbuf.st_gid);
	ss_old_sbuf.ss_st_rdev = (word_t)MD_SWAPH(old_sbuf.st_rdev);
	ss_old_sbuf.ss_st_size = (long)MD_SWAPW(old_sbuf.st_size);
	ss_old_sbuf.ss_st_atime = (word_t)MD_SWAPW(old_sbuf.st_atime);
	ss_old_sbuf.ss_st_mtime = (word_t)MD_SWAPW(old_sbuf.st_mtime);
	ss_old_sbuf.ss_st_ctime = (word_t)MD_SWAPW(old_sbuf.st_ctime);

	ss_old_sbuf.ss_st_res1 = ss_old_sbuf.ss_st_res2 = ss_old_sbuf.ss_st_res3 = 0;
	ss_old_sbuf.ss_st_blksize = 0;
	ss_old_sbuf.ss_st_blocks = 0;
	ss_old_sbuf.ss_st_unused[0] = 0;
	ss_old_sbuf.ss_st_unused[1] = 0;

	/* copy fstat() results to simulator memory */
	mem_bcopy(mem_fn, mem, Write, /*old_sbuf*/regs->regs_R[5],
		  &ss_old_sbuf, sizeof(struct ss_old_statbuf));
#else
	      regs->regs_R[2] = -ENOSYS;
	      regs->regs_R[7] = 1;
#endif
      }
      break;


	  case SS_SYS_pause:
	  {
		/*result*/regs->regs_R[2] = pause();

		/* check for an error condition */
	    if (regs->regs_R[2] != -1)
	      regs->regs_R[7] = 0;
	    else
	    {
	      /* got an error, return details */
	      regs->regs_R[2] = errno;
	      regs->regs_R[7] = 1;
	    }
	  }
	  break;
	  

	case SS_SYS_utime:
	{
		char buf[MAXBUFSIZE];
		struct utimbuf times;
		struct ss_utimbuf ss_times;

		/* copy arguments to the host memory */
		mem_strcpy(mem_fn, mem, Read, /*filename*/regs->regs_R[4], buf);
		mem_bcopy(mem_fn, mem, Read, /*times*/regs->regs_R[5],
			&ss_times, sizeof(struct ss_utimbuf));

		/* translate from target utimbuf structure to host format */
		times.actime = MD_SWAPW(ss_times.ss_actime);
		times.modtime = MD_SWAPW(ss_times.ss_modtime);
	
		/*result*/regs->regs_R[2] = utime(buf, &times);

		/* check for an error condition */
	    if (regs->regs_R[2] != -1)
	      regs->regs_R[7] = 0;
	    else
	    {
	      /* got an error, return details */
	      regs->regs_R[2] = errno;
	      regs->regs_R[7] = 1;
	    }
	}
	break;


	case SS_SYS_access:
      {
	char buf[MAXBUFSIZE];

	/* copy filename to host memory */
	mem_strcpy(mem_fn, mem, Read, /*fName*/regs->regs_R[4], buf);

	/* check access on the file */
	/*result*/regs->regs_R[2] = access(buf, /*mode*/regs->regs_R[5]);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线中文字幕不卡| 日本乱人伦aⅴ精品| 2欧美一区二区三区在线观看视频 337p粉嫩大胆噜噜噜噜噜91av | 久久久久久久免费视频了| 麻豆精品久久久| 久久久久久久久久电影| 成人免费观看av| 又紧又大又爽精品一区二区| 欧美日韩亚洲综合在线| 亚洲成人在线网站| 精品国产髙清在线看国产毛片| 国产在线不卡视频| 亚洲欧美日韩国产综合在线| 欧美色精品天天在线观看视频| 日本免费在线视频不卡一不卡二 | wwwwxxxxx欧美| 成人精品鲁一区一区二区| 亚洲男人的天堂网| 91精品欧美久久久久久动漫| 国产精品一区二区三区乱码| 亚洲精品久久久久久国产精华液| 7777精品伊人久久久大香线蕉完整版| 久久精品国产精品亚洲综合| 国产精品国产成人国产三级 | 91在线精品秘密一区二区| 亚洲国产精品久久人人爱| 日韩欧美高清一区| 99国产精品久久久| 免费一区二区视频| ●精品国产综合乱码久久久久| 欧美精品色综合| 国产91富婆露脸刺激对白| 午夜精品成人在线视频| 欧美极品美女视频| 在线成人av网站| 国产成人丝袜美腿| 日韩影院在线观看| 亚洲欧美另类小说| 久久综合一区二区| 欧美精品免费视频| 一本色道久久综合亚洲aⅴ蜜桃 | 国产伦理精品不卡| 亚洲一区二区视频| 欧美韩日一区二区三区四区| 欧美一级高清片| 在线观看视频一区二区欧美日韩| 国产精品一区二区久久精品爱涩 | 美脚の诱脚舐め脚责91| 亚洲精品中文字幕在线观看| 久久久久久久久伊人| 日韩午夜在线播放| 欧美四级电影在线观看| 成人av资源在线| 国产自产高清不卡| 美日韩一级片在线观看| 亚洲第一狼人社区| 亚洲精品亚洲人成人网| 中文子幕无线码一区tr| 精品久久人人做人人爽| 欧美一区二区三区小说| 欧美日韩1234| 欧美日韩在线亚洲一区蜜芽| 91电影在线观看| 91蜜桃网址入口| 97se亚洲国产综合在线| 成人综合激情网| 国产91精品久久久久久久网曝门| 国精产品一区一区三区mba桃花 | 欧美日韩国产一二三| 色婷婷一区二区三区四区| 色综合中文字幕国产| 懂色中文一区二区在线播放| 国产乱码精品1区2区3区| 国产一区二区三区免费看| 麻豆精品视频在线观看| 久久电影网站中文字幕| 精品在线观看视频| 精品一二三四区| 国产一区美女在线| 国产不卡在线视频| 丁香六月久久综合狠狠色| 成人一区二区三区在线观看| 成人国产亚洲欧美成人综合网| 成人一区二区三区视频在线观看| 成人福利在线看| 色综合久久天天| 欧美性做爰猛烈叫床潮| 欧美区在线观看| 日韩久久久精品| 国产欧美精品一区| 综合在线观看色| 亚洲激情在线激情| 亚洲第一电影网| 麻豆一区二区在线| 顶级嫩模精品视频在线看| 成人av电影在线| 欧美中文字幕亚洲一区二区va在线 | 成人av先锋影音| 欧美日韩性生活| 日韩免费视频一区二区| 欧美国产日本韩| 一区二区在线电影| 美国精品在线观看| av激情成人网| 欧美日本国产一区| 欧美精品一区二区三区很污很色的| 久久久综合激的五月天| 亚洲日本va在线观看| 丝袜诱惑亚洲看片| 国产成人av电影| 欧美日韩亚洲国产综合| 久久婷婷国产综合国色天香| 中文字幕一区二区三区视频| 婷婷六月综合亚洲| aaa欧美日韩| 日韩欧美一区二区视频| 国产精品久久久久aaaa樱花| 五月婷婷另类国产| 成人性生交大片免费看中文| 在线播放国产精品二区一二区四区| 久久尤物电影视频在线观看| 一级女性全黄久久生活片免费| 久久99日本精品| 欧美视频中文一区二区三区在线观看| 亚洲精品一区二区三区蜜桃下载| 亚洲精品高清在线| 国产一区二区女| 欧美无砖专区一中文字| 国产精品无遮挡| 免费成人av资源网| 91精彩视频在线| 国产午夜精品一区二区三区嫩草 | 欧美在线免费视屏| 日韩一区二区三区在线视频| 中文无字幕一区二区三区| 日韩和的一区二区| 99久久伊人网影院| 久久亚洲捆绑美女| 日韩电影在线一区| 日本久久精品电影| 国产精品欧美综合在线| 久久机这里只有精品| 欧美日韩亚洲综合在线 | 国产精品996| 日韩欧美精品三级| 午夜精品久久久久久久久| 99久久99精品久久久久久| 久久人人超碰精品| 奇米影视7777精品一区二区| 欧美日韩国产另类一区| 一区二区三区丝袜| 欧美午夜影院一区| 国产精品美女视频| 国产 日韩 欧美大片| 精品欧美一区二区在线观看| 免费日本视频一区| 欧美午夜精品久久久| 亚洲精选免费视频| 一本大道综合伊人精品热热| 亚洲三级电影全部在线观看高清| 成人美女在线观看| 国产精品久久夜| 97超碰欧美中文字幕| 亚洲日本电影在线| 日本韩国欧美三级| 亚洲国产aⅴ成人精品无吗| 在线精品视频免费观看| 亚洲线精品一区二区三区八戒| 97精品久久久久中文字幕| 中文字幕在线不卡一区| 97se亚洲国产综合自在线观| 亚洲欧美日韩一区二区| 一本大道久久a久久精品综合| 国产精品久久久久久久久快鸭| 成人久久视频在线观看| 亚洲日本va在线观看| 色婷婷精品大在线视频| 亚洲最新在线观看| 欧美猛男gaygay网站| 美女视频黄久久| 精品国产乱码久久久久久免费| 国产一区二区在线看| 亚洲国产精品尤物yw在线观看| 国产**成人网毛片九色 | 99久久国产综合精品女不卡| 国产精品久久99| 91成人国产精品| 日韩电影一二三区| 久久久久久久久久电影| 91同城在线观看| 午夜免费久久看| 精品美女在线播放| www.一区二区| 五月天欧美精品| 久久亚洲综合色| 色香蕉成人二区免费| 日韩成人午夜电影| 国产欧美日本一区视频| 色狠狠一区二区三区香蕉| 日本亚洲免费观看|