/*
- * AcessOS Microkernel Version
+ * Acess2
* syscalls.h
+ * - System Call List
+ *
+ * NOTE: Generated from Kernel/syscalls.lst
*/
#ifndef _SYSCALLS_H
#define _SYSCALLS_H
-enum eSyscalls {
- SYS_EXIT, // 0 - Kill this thread
- SYS_CLONE, // 1 - Create a new thread
- SYS_KILL, // 2 - Send a signal
- SYS_SIGNAL, // 3 - Set signal Handler
- SYS_YIELD, // 4 - Yield remainder of timestamp
- SYS_SLEEP, // 5 - Sleep until messaged or signaled
- SYS_WAIT, // 6 - Wait for a time or a message
- SYS_WAITTID, // 7 - Wait for a thread to do something
- SYS_SETNAME, // 8 - Set's the name of the current thread
- SYS_GETNAME, // 9 - Get's the name of a thread
- SYS_GETTID, // 10 - Get current thread ID
- SYS_GETPID, // 11 - Get current thread group ID
- SYS_SETPRI, // 12 - Set process priority
- SYS_SENDMSG, // 13 - Send an IPC message
- SYS_GETMSG, // 14 - Recieve an IPC message
- SYS_GETTIME, // 15 - Get the current timestamp
- SYS_SPAWN, // 16 - Spawn a new process
- SYS_EXECVE, // 17 - Replace the current process
- SYS_LOADBIN, // 18 - Load a binary into the current address space
- SYS_UNLOADBIN, // 19 - Unload a loaded binary
+#define SYS_EXIT 0 // Kill this thread
+#define SYS_CLONE 1 // Create a new thread
+#define SYS_KILL 2 // Send a signal
+#define SYS_SETFAULTHANDLER 3 // Set signal Handler
+#define SYS_YIELD 4 // Yield remainder of timestamp
+#define SYS_SLEEP 5 // Sleep until messaged or signaled
+#define SYS_WAIT 6 // Wait for a time or a message
+#define SYS_WAITTID 7 // Wait for a thread to do something
+#define SYS_SETNAME 8 // Set's the name of the current thread
+#define SYS_GETNAME 9 // Get's the name of a thread
+#define SYS_GETTID 10 // Get current thread ID
+#define SYS_GETPID 11 // Get current thread group ID
+#define SYS_SETPRI 12 // Set process priority
+#define SYS_SENDMSG 13 // Send an IPC message
+#define SYS_GETMSG 14 // Recieve an IPC message
+#define SYS_GETTIME 15 // Get the current timestamp
+#define SYS_SPAWN 16 // Spawn a new process
+#define SYS_EXECVE 17 // Replace the current process
+#define SYS_LOADBIN 18 // Load a binary into the current address space
+#define SYS_UNLOADBIN 19 // Unload a loaded binary
+#define SYS_LOADMOD 20 // Load a module into the kernel
+#define SYS_GETPHYS 32 // Get the physical address of a page
+#define SYS_MAP 33 // Map a physical address
+#define SYS_ALLOCATE 34 // Allocate a page
+#define SYS_UNMAP 35 // Unmap a page
+#define SYS_PREALLOC 36 // Preallocate a page
+#define SYS_SETFLAGS 37 // Set a page's flags
+#define SYS_SHAREWITH 38 // Share a page with another thread
+#define SYS_GETUID 39 // Get current User ID
+#define SYS_GETGID 40 // Get current Group ID
+#define SYS_SETUID 41 // Set current user ID
+#define SYS_SETGID 42 // Set current Group ID
+#define SYS_OPEN 64 // Open a file
+#define SYS_REOPEN 65 // Close a file and reuse its handle
+#define SYS_CLOSE 66 // Close a file
+#define SYS_READ 67 // Read from an open file
+#define SYS_WRITE 68 // Write to an open file
+#define SYS_IOCTL 69 // Perform an IOCtl Call
+#define SYS_SEEK 70 // Seek to a new position in the file
+#define SYS_READDIR 71 // Read from an open directory
+#define SYS_OPENCHILD 72 // Open a child entry in a directory
+#define SYS_GETACL 73 // Get an ACL Value
+#define SYS_SETACL 74 // Set an ACL Value
+#define SYS_FINFO 75 // Get file information
+#define SYS_MKDIR 76 // Create a new directory
+#define SYS_LINK 77 // Create a new link to a file
+#define SYS_SYMLINK 78 // Create a symbolic link
+#define SYS_UNLINK 79 // Delete a file
+#define SYS_TELL 80 // Return the current file position
+#define SYS_CHDIR 81 // Change current directory
+#define SYS_GETCWD 82 // Get current directory
+#define SYS_MOUNT 83 // Mount a filesystem
+#define SYS_SELECT 84 // Wait for file handles
- SYS_GETPHYS = 32, // 32 - Get the physical address of a page
- SYS_MAP, // 33 - Map a physical address
- SYS_ALLOCATE, // 34 - Allocate a page
- SYS_UNMAP, // 35 - Unmap a page
- SYS_PREALLOC, // 36 - Preallocate a page
- SYS_SETFLAGS, // 37 - Set a page's flags
- SYS_SHAREWITH, // 38 - Share a page with another thread
- SYS_GETUID, // 39 - Get current User ID
- SYS_GETGID, // 40 - Get current Group ID
- SYS_SETUID, // 41 - Set current user ID
- SYS_SETGID, // 42 - Set current Group ID
-
- SYS_OPEN = 64, // 64 - Open a file
- SYS_REOPEN, // 65 - Close a file and reuse its handle
- SYS_CLOSE, // 66 - Close a file
- SYS_READ, // 67 - Read from an open file
- SYS_WRITE, // 68 - Write to an open file
- SYS_IOCTL, // 69 - Perform an IOCtl Call
- SYS_READDIR, // 70 - Read from an open directory
- SYS_MKDIR, // 71 - Create a new directory
- SYS_SYMLINK, // 72 - Create a symbolic link
- SYS_GETACL, // 73 - Get an ACL Value
- SYS_SETACL, // 74 - Set an ACL Value
- SYS_FINFO, // 75 - Get file information
- SYS_SEEK, // 76 - Seek to a new position in the file
- SYS_TELL, // 77 - Return the current file position
- NUM_SYSCALLS,
- SYS_DEBUG = 0x100 // 0x100 - Print a debug string
-};
+#define NUM_SYSCALLS 85
+#define SYS_DEBUG 0x100
+#ifndef __ASSEMBLER__
static const char *cSYSCALL_NAMES[] = {
- "SYS_EXIT","SYS_CLONE","SYS_KILL","SYS_SIGNAL","SYS_YIELD","SYS_SLEEP",
- "SYS_WAIT","SYS_WAITTID","SYS_SETNAME","SYS_GETNAME","SYS_GETTID","SYS_GETPID",
- "SYS_SETPRI","SYS_SENDMSG","SYS_GETMSG","SYS_GETTIME","SYS_SPAWN","SYS_EXECVE",
- "SYS_LOADBIN","SYS_UNLOADBIN","","","","",
- "","","","","","",
- "","","SYS_GETPHYS","SYS_MAP","SYS_ALLOCATE","SYS_UNMAP",
- "SYS_PREALLOC","SYS_SETFLAGS","SYS_SHAREWITH","SYS_GETUID","SYS_GETGID","SYS_SETUID",
- "SYS_SETGID","","","","","",
- "","","","","","",
- "","","","","","",
- "","","","","SYS_OPEN","SYS_REOPEN",
- "SYS_CLOSE","SYS_READ","SYS_WRITE","SYS_IOCTL","SYS_READDIR","SYS_MKDIR",
- "SYS_SYMLINK","SYS_GETACL","SYS_SETACL","SYS_FINFO","SYS_SEEK","SYS_TELL",
+ "SYS_EXIT",
+ "SYS_CLONE",
+ "SYS_KILL",
+ "SYS_SETFAULTHANDLER",
+ "SYS_YIELD",
+ "SYS_SLEEP",
+ "SYS_WAIT",
+ "SYS_WAITTID",
+ "SYS_SETNAME",
+ "SYS_GETNAME",
+ "SYS_GETTID",
+ "SYS_GETPID",
+ "SYS_SETPRI",
+ "SYS_SENDMSG",
+ "SYS_GETMSG",
+ "SYS_GETTIME",
+ "SYS_SPAWN",
+ "SYS_EXECVE",
+ "SYS_LOADBIN",
+ "SYS_UNLOADBIN",
+ "SYS_LOADMOD",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "SYS_GETPHYS",
+ "SYS_MAP",
+ "SYS_ALLOCATE",
+ "SYS_UNMAP",
+ "SYS_PREALLOC",
+ "SYS_SETFLAGS",
+ "SYS_SHAREWITH",
+ "SYS_GETUID",
+ "SYS_GETGID",
+ "SYS_SETUID",
+ "SYS_SETGID",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "SYS_OPEN",
+ "SYS_REOPEN",
+ "SYS_CLOSE",
+ "SYS_READ",
+ "SYS_WRITE",
+ "SYS_IOCTL",
+ "SYS_SEEK",
+ "SYS_READDIR",
+ "SYS_OPENCHILD",
+ "SYS_GETACL",
+ "SYS_SETACL",
+ "SYS_FINFO",
+ "SYS_MKDIR",
+ "SYS_LINK",
+ "SYS_SYMLINK",
+ "SYS_UNLINK",
+ "SYS_TELL",
+ "SYS_CHDIR",
+ "SYS_GETCWD",
+ "SYS_MOUNT",
+ "SYS_SELECT",
+
""
};
#endif
+
+#endif