From: John Hodge Date: Tue, 30 Jul 2013 02:44:24 +0000 (+0800) Subject: Kernel/Syscalls - Added syscall IDs for POSIX signal handling X-Git-Tag: rel0.15~307 X-Git-Url: https://git.ucc.asn.au/?a=commitdiff_plain;h=8fddd5ab384b2cc18bb454168e78b782dc086287;p=tpg%2Facess2.git Kernel/Syscalls - Added syscall IDs for POSIX signal handling --- diff --git a/KernelLand/Kernel/include/syscalls.h b/KernelLand/Kernel/include/syscalls.h index a8c3b347..9916458f 100644 --- a/KernelLand/Kernel/include/syscalls.h +++ b/KernelLand/Kernel/include/syscalls.h @@ -19,19 +19,21 @@ #define SYS_TIMEDSLEEP 6 // Sleep until a specified time has elapsed #define SYS_WAITEVENT 7 // Wait for an event #define SYS_WAITTID 8 // Wait for a thread to do something -#define SYS_SETNAME 9 // Sets the name of the current thread -#define SYS_GETNAME 10 // Gets the name of a thread -#define SYS_GETTID 11 // Get current thread ID -#define SYS_GETPID 12 // Get current thread group ID -#define SYS_SETPRI 13 // Set process priority -#define SYS_SENDMSG 14 // Send an IPC message -#define SYS_GETMSG 15 // Recieve an IPC message -#define SYS_GETTIME 16 // Get the current timestamp -#define SYS_SPAWN 17 // Spawn a new process -#define SYS_EXECVE 18 // Replace the current process -#define SYS_LOADBIN 19 // Load a binary into the current address space -#define SYS_UNLOADBIN 20 // Unload a loaded binary -#define SYS_LOADMOD 21 // Load a module into the kernel +#define SYS_SETSIGNALHANDLER 9 // Set the POSIX signal handler +#define SYS_SETSIGNALMASK 10 // Sets the mask of disabled POSIX signals +#define SYS_SETNAME 11 // Sets the name of the current thread +#define SYS_GETNAME 12 // Gets the name of a thread +#define SYS_GETTID 13 // Get current thread ID +#define SYS_GETPID 14 // Get current thread group ID +#define SYS_SETPRI 15 // Set process priority +#define SYS_SENDMSG 16 // Send an IPC message +#define SYS_GETMSG 17 // Recieve an IPC message +#define SYS_GETTIME 18 // Get the current timestamp +#define SYS_SPAWN 19 // Spawn a new process +#define SYS_EXECVE 20 // Replace the current process +#define SYS_LOADBIN 21 // Load a binary into the current address space +#define SYS_UNLOADBIN 22 // Unload a loaded binary +#define SYS_LOADMOD 23 // 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 @@ -82,6 +84,8 @@ static const char *cSYSCALL_NAMES[] = { "SYS_TIMEDSLEEP", "SYS_WAITEVENT", "SYS_WAITTID", + "SYS_SETSIGNALHANDLER", + "SYS_SETSIGNALMASK", "SYS_SETNAME", "SYS_GETNAME", "SYS_GETTID", @@ -103,8 +107,6 @@ static const char *cSYSCALL_NAMES[] = { "", "", "", - "", - "", "SYS_GETPHYS", "SYS_MAP", "SYS_ALLOCATE", diff --git a/KernelLand/Kernel/include/syscalls.inc.asm b/KernelLand/Kernel/include/syscalls.inc.asm index 8b54a18f..ee3c8870 100644 --- a/KernelLand/Kernel/include/syscalls.inc.asm +++ b/KernelLand/Kernel/include/syscalls.inc.asm @@ -11,19 +11,21 @@ %define SYS_TIMEDSLEEP 6 ;Sleep until a specified time has elapsed %define SYS_WAITEVENT 7 ;Wait for an event %define SYS_WAITTID 8 ;Wait for a thread to do something -%define SYS_SETNAME 9 ;Sets the name of the current thread -%define SYS_GETNAME 10 ;Gets the name of a thread -%define SYS_GETTID 11 ;Get current thread ID -%define SYS_GETPID 12 ;Get current thread group ID -%define SYS_SETPRI 13 ;Set process priority -%define SYS_SENDMSG 14 ;Send an IPC message -%define SYS_GETMSG 15 ;Recieve an IPC message -%define SYS_GETTIME 16 ;Get the current timestamp -%define SYS_SPAWN 17 ;Spawn a new process -%define SYS_EXECVE 18 ;Replace the current process -%define SYS_LOADBIN 19 ;Load a binary into the current address space -%define SYS_UNLOADBIN 20 ;Unload a loaded binary -%define SYS_LOADMOD 21 ;Load a module into the kernel +%define SYS_SETSIGNALHANDLER 9 ;Set the POSIX signal handler +%define SYS_SETSIGNALMASK 10 ;Sets the mask of disabled POSIX signals +%define SYS_SETNAME 11 ;Sets the name of the current thread +%define SYS_GETNAME 12 ;Gets the name of a thread +%define SYS_GETTID 13 ;Get current thread ID +%define SYS_GETPID 14 ;Get current thread group ID +%define SYS_SETPRI 15 ;Set process priority +%define SYS_SENDMSG 16 ;Send an IPC message +%define SYS_GETMSG 17 ;Recieve an IPC message +%define SYS_GETTIME 18 ;Get the current timestamp +%define SYS_SPAWN 19 ;Spawn a new process +%define SYS_EXECVE 20 ;Replace the current process +%define SYS_LOADBIN 21 ;Load a binary into the current address space +%define SYS_UNLOADBIN 22 ;Unload a loaded binary +%define SYS_LOADMOD 23 ;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 diff --git a/KernelLand/Kernel/syscalls.lst b/KernelLand/Kernel/syscalls.lst index 2c026d61..42ae03c3 100644 --- a/KernelLand/Kernel/syscalls.lst +++ b/KernelLand/Kernel/syscalls.lst @@ -10,6 +10,9 @@ SYS_TIMEDSLEEP Sleep until a specified time has elapsed SYS_WAITEVENT Wait for an event SYS_WAITTID Wait for a thread to do something +SYS_SETSIGNALHANDLER Set the POSIX signal handler +SYS_SETSIGNALMASK Sets the mask of disabled POSIX signals + SYS_SETNAME Sets the name of the current thread SYS_GETNAME Gets the name of a thread SYS_GETTID Get current thread ID