Usermode/Syscalls - Add WriteAt/ReadAt syscalls
[tpg/acess2.git] / KernelLand / Kernel / include / syscalls.h
1 /*
2  * Acess2 Kernel
3  * - By John Hodge (thePowersGang)
4  *
5  * syscalls.h
6  * - System Call List
7  *
8  * NOTE: Generated from Kernel/syscalls.lst
9  */
10 #ifndef _SYSCALLS_H
11 #define _SYSCALLS_H
12
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_READAT      72      // Read from an open file (with offset)
57 #define SYS_WRITE       73      // Write to an open file
58 #define SYS_WRITEAT     74      // Write to an open file (with offset)
59 #define SYS_IOCTL       75      // Perform an IOCtl Call
60 #define SYS_SEEK        76      // Seek to a new position in the file
61 #define SYS_READDIR     77      // Read from an open directory
62 #define SYS_GETACL      78      // Get an ACL Value
63 #define SYS_SETACL      79      // Set an ACL Value
64 #define SYS_FINFO       80      // Get file information
65 #define SYS_MKDIR       81      // Create a new directory
66 #define SYS_LINK        82      // Create a new link to a file
67 #define SYS_SYMLINK     83      // Create a symbolic link
68 #define SYS_UNLINK      84      // Delete a file
69 #define SYS_TELL        85      // Return the current file position
70 #define SYS_CHDIR       86      // Change current directory
71 #define SYS_GETCWD      87      // Get current directory
72 #define SYS_MOUNT       88      // Mount a filesystem
73 #define SYS_SELECT      89      // Wait for file handles
74
75 #define NUM_SYSCALLS    90
76 #define SYS_DEBUG       0x100
77 #define SYS_DEBUGHEX    0x101
78
79 #if !defined(__ASSEMBLER__) && !defined(NO_SYSCALL_STRS)
80 static const char *cSYSCALL_NAMES[] = {
81         "SYS_EXIT",
82         "SYS_CLONE",
83         "SYS_KILL",
84         "SYS_SETFAULTHANDLER",
85         "SYS_YIELD",
86         "SYS_SLEEP",
87         "SYS_TIMEDSLEEP",
88         "SYS_WAITEVENT",
89         "SYS_WAITTID",
90         "SYS_SETSIGNALHANDLER",
91         "SYS_SETSIGNALMASK",
92         "SYS_SETNAME",
93         "SYS_GETNAME",
94         "SYS_GETTID",
95         "SYS_GETPID",
96         "SYS_SETPRI",
97         "SYS_SENDMSG",
98         "SYS_GETMSG",
99         "SYS_GETTIME",
100         "SYS_SPAWN",
101         "SYS_EXECVE",
102         "SYS_LOADBIN",
103         "SYS_UNLOADBIN",
104         "SYS_LOADMOD",
105         "",
106         "",
107         "",
108         "",
109         "",
110         "",
111         "",
112         "",
113         "SYS_GETPHYS",
114         "SYS_MAP",
115         "SYS_ALLOCATE",
116         "SYS_UNMAP",
117         "SYS_PREALLOC",
118         "SYS_SETFLAGS",
119         "SYS_SHAREWITH",
120         "SYS_GETUID",
121         "SYS_GETGID",
122         "SYS_SETUID",
123         "SYS_SETGID",
124         "",
125         "",
126         "",
127         "",
128         "",
129         "",
130         "",
131         "",
132         "",
133         "",
134         "",
135         "",
136         "",
137         "",
138         "",
139         "",
140         "",
141         "",
142         "",
143         "",
144         "",
145         "SYS_OPEN",
146         "SYS_REOPEN",
147         "SYS_OPENCHILD",
148         "SYS_OPENPIPE",
149         "SYS_CLOSE",
150         "SYS_COPYFD",
151         "SYS_FDCTL",
152         "SYS_READ",
153         "SYS_READAT",
154         "SYS_WRITE",
155         "SYS_WRITEAT",
156         "SYS_IOCTL",
157         "SYS_SEEK",
158         "SYS_READDIR",
159         "SYS_GETACL",
160         "SYS_SETACL",
161         "SYS_FINFO",
162         "SYS_MKDIR",
163         "SYS_LINK",
164         "SYS_SYMLINK",
165         "SYS_UNLINK",
166         "SYS_TELL",
167         "SYS_CHDIR",
168         "SYS_GETCWD",
169         "SYS_MOUNT",
170         "SYS_SELECT",
171
172         ""
173 };
174 #endif
175
176 #endif

UCC git Repository :: git.ucc.asn.au