tru64_syscalls.hh

来自「linux下基于c++的处理器仿真平台。具有处理器流水线」· HH 代码 · 共 363 行

HH
363
字号
/* * Copyright (c) 2003, 2004, 2005 * The Regents of The University of Michigan * All Rights Reserved * * This code is part of the M5 simulator, developed by Nathan Binkert, * Erik Hallnor, Steve Raasch, and Steve Reinhardt, with contributions * from Ron Dreslinski, Dave Greene, Lisa Hsu, Kevin Lim, Ali Saidi, * and Andrew Schultz. * * Permission is granted to use, copy, create derivative works and * redistribute this software and such derivative works for any * purpose, so long as the copyright notice above, this grant of * permission, and the disclaimer below appear in all copies made; and * so long as the name of The University of Michigan is not used in * any advertising or publicity pertaining to the use or distribution * of this software without specific, written prior authorization. * * THIS SOFTWARE IS PROVIDED AS IS, WITHOUT REPRESENTATION FROM THE * UNIVERSITY OF MICHIGAN AS TO ITS FITNESS FOR ANY PURPOSE, AND * WITHOUT WARRANTY BY THE UNIVERSITY OF MICHIGAN OF ANY KIND, EITHER * EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE. THE REGENTS OF THE UNIVERSITY OF MICHIGAN SHALL NOT BE * LIABLE FOR ANY DAMAGES, INCLUDING DIRECT, SPECIAL, INDIRECT, * INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WITH RESPECT TO ANY CLAIM * ARISING OUT OF OR IN CONNECTION WITH THE USE OF THE SOFTWARE, EVEN * IF IT HAS BEEN OR IS HEREAFTER ADVISED OF THE POSSIBILITY OF SUCH * DAMAGES. */#ifndef __KERN_TRU64_TRU64_SYSCALLS_HH__#define __KERN_TRU64_TRU64_SYSCALLS_HH__#include "kern/tru64/tru64.hh"template <class OS>class SystemCalls;template <>class SystemCalls<Tru64>{  public:    enum {	syscall = 0,	exit = 1,	fork = 2,	read = 3,	write = 4,	old_open = 5,	close = 6,	wait4 = 7,	old_creat = 8,	link = 9,	unlink = 10,	execv = 11,	chdir = 12,	fchdir = 13,	mknod = 14,	chmod = 15,	chown = 16,	obreak = 17,	pre_F64_getfsstat = 18,	lseek = 19,	getpid = 20,	mount = 21,	unmount = 22,	setuid = 23,	getuid = 24,	exec_with_loader = 25,	ptrace = 26,	recvmsg = 27,	sendmsg = 28,	recvfrom = 29,	accept = 30,	getpeername = 31,	getsockname = 32,	access = 33,	chflags = 34,	fchflags = 35,	sync = 36,	kill = 37,	old_stat = 38,	setpgid = 39,	old_lstat = 40,	dup = 41,	pipe = 42,	set_program_attributes = 43,	profil = 44,	open = 45,	obsolete_osigaction = 46,	getgid = 47,	sigprocmask = 48,	getlogin = 49,	setlogin = 50,	acct = 51,	sigpending = 52,	classcntl = 53,	ioctl = 54,	reboot = 55,	revoke = 56,	symlink = 57,	readlink = 58,	execve = 59,	umask = 60,	chroot = 61,	old_fstat = 62,	getpgrp = 63,	getpagesize = 64,	mremap = 65,	vfork = 66,	pre_F64_stat = 67,	pre_F64_lstat = 68,	sbrk = 69,	sstk = 70,	mmap = 71,	ovadvise = 72,	munmap = 73,	mprotect = 74,	madvise = 75,	old_vhangup = 76,	kmodcall = 77,	mincore = 78,	getgroups = 79,	setgroups = 80,	old_getpgrp = 81,	setpgrp = 82,	setitimer = 83,	old_wait = 84,	table = 85,	getitimer = 86,	gethostname = 87,	sethostname = 88,	getdtablesize = 89,	dup2 = 90,	pre_F64_fstat = 91,	fcntl = 92,	select = 93,	poll = 94,	fsync = 95,	setpriority = 96,	socket = 97,	connect = 98,	old_accept = 99,	getpriority = 100,	old_send = 101,	old_recv = 102,	sigreturn = 103,	bind = 104,	setsockopt = 105,	listen = 106,	plock = 107,	old_sigvec = 108,	old_sigblock = 109,	old_sigsetmask = 110,	sigsuspend = 111,	sigstack = 112,	old_recvmsg = 113,	old_sendmsg = 114,	obsolete_vtrcae = 115,	gettimeofday = 116,	getrusage = 117,	getsockopt = 118,	numa_syscalls = 119,	readv = 120,	writev = 121,	settimeofday = 122,	fchown = 123,	fchmod = 124,	old_recvfrom = 125,	setreuid = 126,	setregid = 127,	rename = 128,	truncate = 129,	ftruncate = 130,	flock = 131,	setgid = 132,	sendto = 133,	shutdown = 134,	socketpair = 135,	mkdir = 136,	rmdir = 137,	utimes = 138,	obsolete_42_sigreturn = 139,	adjtime = 140,	old_getpeername = 141,	gethostid = 142,	sethostid = 143,	getrlimit = 144,	setrlimit = 145,	old_killpg = 146,	setsid = 147,	quotactl = 148,	oldquota = 149,	old_getsockname = 150,	pread = 151,	pwrite = 152,	pid_block = 153,	pid_unblock = 154,	signal_urti = 155,	sigaction = 156,	sigwaitprim = 157,	nfssvc = 158,	getdirentries = 159,	pre_F64_statfs = 160,	pre_F64_fstatfs = 161,	async_daemon = 163,	getfh = 164,	getdomainname = 165,	setdomainname = 166,	exportfs = 169,	alt_plock = 181,	getmnt = 184,	alt_sigpending = 187,	alt_setsid = 188,	swapon = 199,	msgctl = 200,	msgget = 201,	msgrcv = 202,	msgsnd = 203,	semctl = 204,	semget = 205,	semop = 206,	uname = 207,	lchown = 208,	shmat = 209,	shmctl = 210,	shmdt = 211,	shmget = 212,	mvalid = 213,	getaddressconf = 214,	msleep = 215,	mwakeup = 216,	msync = 217,	signal = 218,	utc_gettime = 219,	utc_adjtime = 220,	security = 222,	kloadcall = 223,	stat = 224,	lstat = 225,	fstat = 226,	statfs = 227,	fstatfs = 228,	getfsstat = 229,	gettimeofday64 = 230,	settimeofday64 = 231,	getpgid = 233,	getsid = 234,	sigaltstack = 235,	waitid = 236,	priocntlset = 237,	sigsendset = 238,	set_speculative = 239,	msfs_syscall = 240,	sysinfo = 241,	uadmin = 242,	fuser = 243,	proplist_syscall = 244,	ntp_adjtime = 245,	ntp_gettime = 246,	pathconf = 247,	fpathconf = 248,	sync2 = 249,	uswitch = 250,	usleep_thread = 251,	audcntl = 252,	audgen = 253,	sysfs = 254,	subsys_info = 255,	getsysinfo = 256,	setsysinfo = 257,	afs_syscall = 258,	swapctl = 259,	memcntl = 260,	fdatasync = 261,	oflock = 262,	_F64_readv = 263,	_F64_writev = 264,	cdslxlate = 265,	sendfile = 266,	StandardNumber    };    enum {        task_self = 10,        thread_reply = 11,        task_notify = 12,        thread_self = 13,        msg_send_trap = 20,        msg_receive_trap = 21,        msg_rpc_trap = 22,        nxm_block = 24,        nxm_unblock = 25,        nxm_thread_destroy = 29,        lw_wire = 30,        lw_unwire = 31,        nxm_thread_create = 32,        nxm_task_init = 33,        nxm_idle = 35,        nxm_wakeup_idle = 36,        nxm_set_pthid = 37,        nxm_thread_kill = 38,        nxm_thread_block = 39,        nxm_thread_wakeup = 40,        init_process = 41,        nxm_get_binding = 42,        map_fd = 43,        nxm_resched = 44,        nxm_set_cancel = 45,        nxm_set_binding = 46,        stack_create = 47,        nxm_get_state = 48,        nxm_thread_suspend = 49,        nxm_thread_resume = 50,        nxm_signal_check = 51,        htg_unix_syscall = 52,        host_self = 55,        host_priv_self = 56,        swtch_pri = 59,        swtch = 60,        thread_switch = 61,        semop_fast = 62,        nxm_pshared_init = 63,        nxm_pshared_block = 64,        nxm_pshared_unblock = 65,        nxm_pshared_destroy = 66,        nxm_swtch_pri = 67,        lw_syscall = 68,        mach_sctimes_0 = 70,        mach_sctimes_1 = 71,        mach_sctimes_2 = 72,        mach_sctimes_3 = 73,        mach_sctimes_4 = 74,        mach_sctimes_5 = 75,        mach_sctimes_6 = 76,        mach_sctimes_7 = 77,        mach_sctimes_8 = 78,        mach_sctimes_9 = 79,        mach_sctimes_10 = 80,        mach_sctimes_11 = 81,        mach_sctimes_port_alloc_dealloc = 82,	MachNumber    };    static const int Number = StandardNumber + MachNumber;    static const char *name(int num);    static bool validSyscallNumber(int num) {	return -MachNumber < num && num < StandardNumber;    }    static int convert(int syscall_num) {	if (!validSyscallNumber(syscall_num))	    return -1;	return syscall_num < 0 ? StandardNumber - syscall_num : syscall_num;    }};#endif // __KERN_TRU64_TRU64_SYSCALLS_HH__

⌨️ 快捷键说明

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