Signal entry/exit works (crude)

This commit is contained in:
Mark
2020-01-31 16:34:17 +02:00
parent a5ce69c077
commit cb24171e79
6 changed files with 104 additions and 0 deletions
+7
View File
@@ -3,6 +3,13 @@
#define SYSCALL_NR_READ 0
#define SYSCALL_NR_WRITE 1
#define SYSCALL_NRX_SIGENTRY 13
void sys_sigentry(uintptr_t entry);
#define SYSCALL_NR_SIGRETURN 15
void sys_sigreturn(void);
#define SYSCALL_NRX_SUICIDE 253
void sys_suicide(void);
#define SYSCALL_NR_FORK 57
int sys_fork(void *ctx);
#define SYSCALL_NR_EXIT 60
+3
View File
@@ -28,6 +28,9 @@ struct thread {
uint64_t sleep_deadline;
struct thread *wait_prev, *wait_next;
// Signal
uintptr_t signal_entry;
// State
pid_t pid;
enum thread_state state;