X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Kernel%2Finclude%2Fsyscalls.h;h=98bb97965575077fbfd1b52bc0e0e0216ee5babf;hb=dd2491a82880ed9b01b5d66b1814d271921797a4;hp=b2c13cf7ad8c69a3c877319cc717fa6dc1f69eda;hpb=8bc40333b1401d7616b225945fee53d972c2f418;p=tpg%2Facess2.git diff --git a/Kernel/include/syscalls.h b/Kernel/include/syscalls.h index b2c13cf7..98bb9796 100644 --- a/Kernel/include/syscalls.h +++ b/Kernel/include/syscalls.h @@ -1,76 +1,160 @@ /* - * 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