3 * - By John Hodge (thePowersGang)
8 * NOTE: Generated from Kernel/syscalls.lst
13 #define SYS_EXIT 0 // Kill this thread
14 #define SYS_CLONE 1 // Create a new thread
15 #define SYS_KILL 2 // Send a signal
16 #define SYS_SETFAULTHANDLER 3 // Set signal Handler
17 #define SYS_YIELD 4 // Yield remainder of timestamp
18 #define SYS_SLEEP 5 // Sleep until messaged or signaled
19 #define SYS_TIMEDSLEEP 6 // Sleep until a specified time has elapsed
20 #define SYS_WAITEVENT 7 // Wait for an event
21 #define SYS_WAITTID 8 // Wait for a thread to do something
22 #define SYS_SETSIGNALHANDLER 9 // Set the POSIX signal handler
23 #define SYS_SETSIGNALMASK 10 // Sets the mask of disabled POSIX signals
24 #define SYS_SETNAME 11 // Sets the name of the current thread
25 #define SYS_GETNAME 12 // Gets the name of a thread
26 #define SYS_GETTID 13 // Get current thread ID
27 #define SYS_GETPID 14 // Get current thread group ID
28 #define SYS_SETPRI 15 // Set process priority
29 #define SYS_SENDMSG 16 // Send an IPC message
30 #define SYS_GETMSG 17 // Recieve an IPC message
31 #define SYS_GETTIME 18 // Get the current timestamp
32 #define SYS_SPAWN 19 // Spawn a new process
33 #define SYS_EXECVE 20 // Replace the current process
34 #define SYS_LOADBIN 21 // Load a binary into the current address space
35 #define SYS_UNLOADBIN 22 // Unload a loaded binary
36 #define SYS_LOADMOD 23 // Load a module into the kernel
37 #define SYS_GETPHYS 32 // Get the physical address of a page
38 #define SYS_MAP 33 // Map a physical address
39 #define SYS_ALLOCATE 34 // Allocate a page
40 #define SYS_UNMAP 35 // Unmap a page
41 #define SYS_PREALLOC 36 // Preallocate a page
42 #define SYS_SETFLAGS 37 // Set a page's flags
43 #define SYS_SHAREWITH 38 // Share a page with another thread
44 #define SYS_GETUID 39 // Get current User ID
45 #define SYS_GETGID 40 // Get current Group ID
46 #define SYS_SETUID 41 // Set current user ID
47 #define SYS_SETGID 42 // Set current Group ID
48 #define SYS_OPEN 64 // Open a file
49 #define SYS_REOPEN 65 // Close a file and reuse its handle
50 #define SYS_OPENCHILD 66 // Open a child entry in a directory
51 #define SYS_OPENPIPE 67 // Open a FIFO pipe pair
52 #define SYS_CLOSE 68 // Close a file
53 #define SYS_COPYFD 69 // Create a copy of a file handle
54 #define SYS_FDCTL 70 // Modify flags of a file descriptor
55 #define SYS_READ 71 // Read from an open file
56 #define SYS_WRITE 72 // Write to an open file
57 #define SYS_IOCTL 73 // Perform an IOCtl Call
58 #define SYS_SEEK 74 // Seek to a new position in the file
59 #define SYS_READDIR 75 // Read from an open directory
60 #define SYS_GETACL 76 // Get an ACL Value
61 #define SYS_SETACL 77 // Set an ACL Value
62 #define SYS_FINFO 78 // Get file information
63 #define SYS_MKDIR 79 // Create a new directory
64 #define SYS_LINK 80 // Create a new link to a file
65 #define SYS_SYMLINK 81 // Create a symbolic link
66 #define SYS_UNLINK 82 // Delete a file
67 #define SYS_TELL 83 // Return the current file position
68 #define SYS_CHDIR 84 // Change current directory
69 #define SYS_GETCWD 85 // Get current directory
70 #define SYS_MOUNT 86 // Mount a filesystem
71 #define SYS_SELECT 87 // Wait for file handles
73 #define NUM_SYSCALLS 88
74 #define SYS_DEBUG 0x100
76 #if !defined(__ASSEMBLER__) && !defined(NO_SYSCALL_STRS)
77 static const char *cSYSCALL_NAMES[] = {
81 "SYS_SETFAULTHANDLER",
87 "SYS_SETSIGNALHANDLER",