syscall.c

来自「ppc750 system design simulator using sys」· C语言 代码 · 共 1,548 行 · 第 1/4 页

C
1,548
字号
BOOL ppc_syscall_getgroups(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_setgroups(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_select(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_symlink(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_oldlstat(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_readlink(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_uselib(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_swapon(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_reboot(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_readdir(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_mmap(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_munmap(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_truncate(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_ftruncate(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_fchmod(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_fchown(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_getpriority(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_setpriority(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_profil(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_statfs(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_fstatfs(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_ioperm(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_socketcall(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_syslog(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_setitimer(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_getitimer(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_stat(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_lstat(syscall_cb_t *cb) { RETURN(-1); return FALSE; }static void ppc_swap_stat(struct stat *buf){	ppc_swap(&buf->st_dev, sizeof(&buf->st_dev));	ppc_swap(&buf->st_ino, sizeof(&buf->st_ino));	ppc_swap(&buf->st_mode, sizeof(&buf->st_mode));	ppc_swap(&buf->st_nlink, sizeof(&buf->st_nlink));	ppc_swap(&buf->st_uid, sizeof(&buf->st_uid));	ppc_swap(&buf->st_gid, sizeof(&buf->st_gid));	ppc_swap(&buf->st_rdev, sizeof(&buf->st_rdev));	ppc_swap(&buf->st_size, sizeof(&buf->st_size));	ppc_swap(&buf->st_blksize, sizeof(&buf->st_blksize));	ppc_swap(&buf->st_blocks, sizeof(&buf->st_blocks));	ppc_swap(&buf->st_atime, sizeof(&buf->st_atime));	ppc_swap(&buf->st_mtime, sizeof(&buf->st_mtime));	ppc_swap(&buf->st_ctime, sizeof(&buf->st_ctime));	ppc_swap(&buf->st_ino, sizeof(&buf->st_ino));}BOOL ppc_syscall_fstat(syscall_cb_t *cb){	int fd;	struct stat *buf;	addr_t buf_addr;	int ret;		fd = PARM(0);	buf_addr = PARM(1);	if(verbose)		fprintf(stderr, "fstat(fd=%d, buf=0x%08x)\n", fd, buf_addr);	buf = (struct stat *) malloc(sizeof(struct stat));	if(buf)	{		ret = fstat(fd, buf);		if(ret >= 0)		{			if(swap) ppc_swap_stat(buf);			MEM_WRITE(buf_addr, buf, sizeof(struct stat));		}		free(buf);	}	else	{		ret = -1;	}	RETURN(ret);	return ret != -1;}BOOL ppc_syscall_olduname(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_iopl(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_vhangup(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_idle(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_vm86old(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_wait4(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_swapoff(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_sysinfo(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_ipc(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_fsync(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_sigreturn(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_clone(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_setdomainname(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_uname(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_modify_ldt(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_adjtimex(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_mprotect(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_sigprocmask(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_create_module(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_init_module(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_delete_module(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_get_kernel_syms(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_quotactl(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_getpgid(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_fchdir(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_bdflush(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_sysfs(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_personality(syscall_cb_t *cb) { return TRUE; }BOOL ppc_syscall_afs_syscall(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_setfsuid(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_setfsgid(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall__llseek(syscall_cb_t *cb){	int fd;	UInt32 offset_high;	UInt32 offset_low;	addr_t result_addr;	int whence;	int ret;		fd = PARM(0);	offset_high = PARM(1);	offset_low = PARM(2);	result_addr = PARM(3);	whence = PARM(4);	if(verbose)		fprintf(stderr, "_lseek(fd=%d, offset_high=%u, offset_low=%u, result=0x%08x, whence=%d)\n", fd, offset_high, offset_low, result_addr, whence);	if(offset_high == 0)	{		off_t lseek_ret = lseek(fd, offset_low, whence);		if(lseek_ret >= 0)		{			MEM_WRITE_DWORD(result_addr, lseek_ret);			ret = 0;		}		else		{			ret = -1;		}	}	else	{		ret = -1;	}	RETURN(ret);	return ret != -1;}BOOL ppc_syscall_getdents(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_newselect(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_flock(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_msync(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_readv(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_writev(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_getsid(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_fdatasync(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_sysctl(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_mlock(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_munlock(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_mlockall(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_munlockall(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_sched_setparam(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_sched_getparam(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_sched_setscheduler(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_getsheduler(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_sched_yield(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_sched_get_priority_max(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_sched_get_priority_min(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_sched_rr_get_interval(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_nanosleep(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_mremap(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_setresuid(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_getresuid(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_vm86(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_query_module(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_poll(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_nfsservctl(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_setresgid(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_getresgid(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_prctl(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_rt_sigreturn(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_rt_sigaction(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_rt_sigprocmask(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_rt_sigpending(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_rt_sigtimedwait(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_rt_sigqueueinfo(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_rt_sigsuspend(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_pread(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_pwrite(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_chown(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_getcwd(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_capget(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_capset(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_sigaltstack(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_sendfile(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_getpmsg(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_putpmsg(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_vfork(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_ugetrlimit(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_mmap2(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_truncate64(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_ftruncate64(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_stat64(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_lstat64(syscall_cb_t *cb) { RETURN(-1); return FALSE; }#ifdef linuxstatic void ppc_swap_stat64(struct stat64 *buf){	ppc_swap(&buf->st_dev, sizeof(&buf->st_dev));	ppc_swap(&buf->__pad1, sizeof(&buf->__pad1));//	ppc_swap(&buf->__st_ino, sizeof(&buf->__st_ino));	ppc_swap(&buf->st_mode, sizeof(&buf->st_mode));	ppc_swap(&buf->st_nlink, sizeof(&buf->st_nlink));	ppc_swap(&buf->st_uid, sizeof(&buf->st_uid));	ppc_swap(&buf->st_gid, sizeof(&buf->st_gid));	ppc_swap(&buf->st_rdev, sizeof(&buf->st_rdev));	ppc_swap(&buf->__pad2, sizeof(&buf->__pad2));	ppc_swap(&buf->st_size, sizeof(&buf->st_size));	ppc_swap(&buf->st_blksize, sizeof(&buf->st_blksize));	ppc_swap(&buf->st_blocks, sizeof(&buf->st_blocks));	ppc_swap(&buf->st_atime, sizeof(&buf->st_atime));	ppc_swap(&buf->__unused1, sizeof(&buf->__unused1));	ppc_swap(&buf->st_mtime, sizeof(&buf->st_mtime));	ppc_swap(&buf->__unused2, sizeof(&buf->__unused2));	ppc_swap(&buf->st_ctime, sizeof(&buf->st_ctime));	ppc_swap(&buf->__unused3, sizeof(&buf->__unused3));	ppc_swap(&buf->st_ino, sizeof(&buf->st_ino));}#endifBOOL ppc_syscall_fstat64(syscall_cb_t *cb){#ifdef linux	int fd;	addr_t buf_addr;	struct stat64 *buf;	int ret;		fd = PARM(0);	buf_addr = PARM(1);	if(verbose)		fprintf(stderr, "fstat64(fd=%d, buf=0x%08x)\n", fd, buf_addr);	buf = (struct stat64 *) malloc(sizeof(struct stat64));	if(buf)	{		ret = fstat64(fd, buf);		if(ret >= 0)		{			if(swap) ppc_swap_stat64(buf);			MEM_WRITE(buf_addr, buf, sizeof(struct stat64));		}		free(buf);	}	else	{		ret = -1;	}	RETURN(ret);	return ret != -1;#else	int ret = -1;	RETURN(ret);	return FALSE;#endif}BOOL ppc_syscall_lchown32(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_getuid32(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_getgid32(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_geteuid32(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_getegid32(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_setreuid32(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_setregid32(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_getgroups32(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_setgroups32(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_fchown32(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_setresuid32(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_getresuid32(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_setresgid32(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_getresgid32(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_chown32(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_setuid32(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_setgid32(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_setfsuid32(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_setfsgid32(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_pivot_root(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_mincore(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_madvise(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_getdents64(syscall_cb_t *cb) { RETURN(-1); return FALSE; }BOOL ppc_syscall_fnctl64(syscall_cb_t *cb) { RETURN(-1); return FALSE; }static char *ppc_get_syscall_name(int num){	switch(num)	{		case __SYSCALL_exit: return "exit";		case __SYSCALL_fork: return "fork";		case __SYSCALL_read: return "read";		case __SYSCALL_write: return "write";		case __SYSCALL_open: return "open";		case __SYSCALL_close: return "close";		case __SYSCALL_waitpid: return "waitpid";		case __SYSCALL_creat: return "creat";		case __SYSCALL_link: return "link";		case __SYSCALL_unlink: return "unlink";		case __SYSCALL_execve: return "execve";		case __SYSCALL_chdir: return "chdir";		case __SYSCALL_time: return "time";		case __SYSCALL_mknod: return "mknod";		case __SYSCALL_chmod: return "chmod";		case __SYSCALL_lchown: return "lchown";		case __SYSCALL_break: return "break";		case __SYSCALL_oldstat: return "oldstat";		case __SYSCALL_lseek: return "lseek";		case __SYSCALL_getpid: return "getpid";		case __SYSCALL_mount: return "mount";		case __SYSCALL_umount: return "umount";		case __SYSCALL_setuid: return "setuid";		case __SYSCALL_getuid: return "getuid";		case __SYSCALL_stime: return "stime";		case __SYSCALL_ptrace: return "ptrace";		case __SYSCALL_alarm: return "alarm";		case __SYSCALL_oldfstat: return "oldfstat";		case __SYSCALL_pause: return "pause";		case __SYSCALL_utime: return "utime";		case __SYSCALL_stty: return "stty";		case __SYSCALL_gtty: return "gtty";		case __SYSCALL_access: return "access";		case __SYSCALL_nice: return "nice";		case __SYSCALL_ftime: return "ftime";		case __SYSCALL_sync: return "sync";		case __SYSCALL_kill: return "kill";		case __SYSCALL_rename: return "rename";		case __SYSCALL_mkdir: return "mkdir";		case __SYSCALL_rmdir: return "rmdir";		case __SYSCALL_dup: return "dup";		case __SYSCALL_pipe: return "pipe";		case __SYSCALL_times: return "times";		case __SYSCALL_prof: return "prof";		case __SYSCALL_brk: return "brk";		case __SYSCALL_setgid: return "setgid";		case __SYSCALL_getgid: return "getgid";		case __SYSCALL_signal: return "signal";		case __SYSCALL_geteuid: return "geteuid";		case __SYSCALL_getegid: return "getegid";		case __SYSCALL_acct: return "acct";		case __SYSCALL_umount2: return "umount2";		case __SYSCALL_lock: return "lock";		case __SYSCALL_ioctl: return "ioctl";		case __SYSCALL_fcntl: return "fcntl";		case __SYSCALL_mpx: return "mpx";		case __SYSCALL_setpgid: return "setpgid";		case __SYSCALL_ulimit: return "ulimit";		case __SYSCALL_oldolduname: return "oldolduname";		case __SYSCALL_umask: return "umask";		case __SYSCALL_chroot: return "chroot";		case __SYSCALL_ustat	: return "ustat";		case __SYSCALL_dup2: return "dup2";		case __SYSCALL_getppid: return "getppid";		case __SYSCALL_getpgrp: return "getpgrp";		case __SYSCALL_setsid: return "setsid";		case __SYSCALL_sigaction: return "sigaction";		case __SYSCALL_sgetmask: return "sgetmask";		case __SYSCALL_ssetmask: return "ssetmask";		case __SYSCALL_setreuid: return "setreuid";		case __SYSCALL_setregid: return "setregid";		case __SYSCALL_sigsuspend: return "sigsuspend";		case __SYSCALL_sigpending: return "sigpending";		case __SYSCALL_sethostname: return "sethostname";		case __SYSCALL_setrlimit: return "setrlimit";		case __SYSCALL_getrlimit: return "getrlimit";		case __SYSCALL_getrusage: return "getrusage";		case __SYSCALL_gettimeofday: return "gettimeofday";		case __SYSCALL_settimeofday: return "settimeofday";		case __SYSCALL_getgroups: return "getgroups";		case __SYSCALL_setgroups: return "setgroups";		case __SYSCALL_select: return "select";		case __SYSCALL_symlink: return "symlink";		case __SYSCALL_oldlstat: return "oldlstat";		case __SYSCALL_readlink: return "readlink";		case __SYSCALL_uselib: return "uselib";		case __SYSCALL_swapon: return "swapon";		case __SYSCALL_reboot: return "reboot";		case __SYSCALL_readdir: return "readdir";		case __SYSCALL_mmap: return "mmap";		case __SYSCALL_munmap: return "munmap";

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?