Annotation of Gnu-Mach/include/mach/syscall_sw.h, revision 1.1.1.2

1.1       root        1: /* 
                      2:  * Mach Operating System
                      3:  * Copyright (c) 1991,1990,1989,1988,1987 Carnegie Mellon University
                      4:  * All Rights Reserved.
                      5:  * 
                      6:  * Permission to use, copy, modify and distribute this software and its
                      7:  * documentation is hereby granted, provided that both the copyright
                      8:  * notice and this permission notice appear in all copies of the
                      9:  * software, derivative works or modified versions, and any portions
                     10:  * thereof, and that both notices appear in supporting documentation.
                     11:  * 
                     12:  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
                     13:  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
                     14:  * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
                     15:  * 
                     16:  * Carnegie Mellon requests users of this software to return to
                     17:  * 
                     18:  *  Software Distribution Coordinator  or  [email protected]
                     19:  *  School of Computer Science
                     20:  *  Carnegie Mellon University
                     21:  *  Pittsburgh PA 15213-3890
                     22:  * 
                     23:  * any improvements or extensions that they make and grant Carnegie Mellon
                     24:  * the rights to redistribute these changes.
                     25:  */
                     26: 
                     27: #ifndef        _MACH_SYSCALL_SW_H_
                     28: #define _MACH_SYSCALL_SW_H_
                     29: 
                     30: /*
                     31:  *     The machine-dependent "syscall_sw.h" file should
                     32:  *     define a macro for
                     33:  *             kernel_trap(trap_name, trap_number, arg_count)
                     34:  *     which will expand into assembly code for the
                     35:  *     trap.
                     36:  *
                     37:  *     N.B.: When adding calls, do not put spaces in the macros.
                     38:  */
                     39: 
                     40: #include <mach/machine/syscall_sw.h>
                     41: 
                     42: /*
                     43:  *     These trap numbers should be taken from the
                     44:  *     table in <kern/syscall_sw.c>.
                     45:  */
                     46: 
                     47: kernel_trap(evc_wait,-17,1)
                     48: kernel_trap(evc_wait_clear,-18,1)
                     49: 
                     50: kernel_trap(mach_msg_trap,-25,7)
                     51: kernel_trap(mach_reply_port,-26,0)
                     52: kernel_trap(mach_thread_self,-27,0)
                     53: kernel_trap(mach_task_self,-28,0)
                     54: kernel_trap(mach_host_self,-29,0)
1.1.1.2 ! root       55: kernel_trap(mach_print,-30,1)
1.1       root       56: 
                     57: kernel_trap(swtch_pri,-59,1)
                     58: kernel_trap(swtch,-60,0)
                     59: kernel_trap(thread_switch,-61,3)
                     60: kernel_trap(nw_update,-80,3)
                     61: kernel_trap(nw_lookup,-81,2)
                     62: kernel_trap(nw_endpoint_allocate,-82,4)
                     63: kernel_trap(nw_endpoint_deallocate,-83,1)
                     64: kernel_trap(nw_buffer_allocate,-84,2)
                     65: kernel_trap(nw_buffer_deallocate,-85,2)
                     66: kernel_trap(nw_connection_open,-86,4)
                     67: kernel_trap(nw_connection_accept,-87,3)
                     68: kernel_trap(nw_connection_close,-88,1)
                     69: kernel_trap(nw_multicast_add,-89,4)
                     70: kernel_trap(nw_multicast_drop,-90,4)
                     71: kernel_trap(nw_endpoint_status,-91,3)
                     72: kernel_trap(nw_send,-92,3)
                     73: kernel_trap(nw_receive,-93,2)
                     74: kernel_trap(nw_rpc,-94,4)
                     75: kernel_trap(nw_select,-95,3)
                     76: 
                     77: 
                     78: /*
                     79:  *     These are syscall versions of Mach kernel calls.
                     80:  *     They only work on local tasks.
                     81:  */
                     82: 
                     83: kernel_trap(syscall_vm_map,-64,11)
                     84: kernel_trap(syscall_vm_allocate,-65,4)
                     85: kernel_trap(syscall_vm_deallocate,-66,3)
                     86: 
                     87: kernel_trap(syscall_task_create,-68,3)
                     88: kernel_trap(syscall_task_terminate,-69,1)
                     89: kernel_trap(syscall_task_suspend,-70,1)
                     90: kernel_trap(syscall_task_set_special_port,-71,3)
                     91: 
                     92: kernel_trap(syscall_mach_port_allocate,-72,3)
                     93: kernel_trap(syscall_mach_port_deallocate,-73,2)
                     94: kernel_trap(syscall_mach_port_insert_right,-74,4)
                     95: kernel_trap(syscall_mach_port_allocate_name,-75,3)
                     96: kernel_trap(syscall_thread_depress_abort,-76,1)
                     97: 
                     98: /* These are screwing up glibc somehow.  */
                     99: /*kernel_trap(syscall_device_writev_request,-39,6)*/
                    100: /*kernel_trap(syscall_device_write_request,-40,6)*/
                    101: 
                    102: /*
                    103:  *     These "Mach" traps are not implemented by the kernel;
                    104:  *     the emulation library and Unix server implement them.
                    105:  *     But they are traditionally part of libmach, and use
                    106:  *     the Mach trap calling conventions and numbering.
                    107:  */
                    108: 
                    109: #if    UNIXOID_TRAPS
                    110: 
                    111: kernel_trap(task_by_pid,-33,1)
                    112: kernel_trap(pid_by_task,-34,4)
                    113: kernel_trap(init_process,-41,0)
                    114: kernel_trap(map_fd,-43,5)
                    115: kernel_trap(rfs_make_symlink,-44,3)
                    116: kernel_trap(htg_syscall,-52,3)
                    117: kernel_trap(set_ras_address,-53,2)
                    118: 
                    119: #endif /* UNIXOID_TRAPS */
                    120: 
                    121: #endif /* _MACH_SYSCALL_SW_H_ */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.