Orion
Barry Moving signal handlers into separate namespace 7ae31b0 (2 years, 4 months ago)diff --git a/task/task.h b/task/task.h index 228c3d8..4879c33 100644 --- a/task/task.h +++ b/task/task.h @@ -6,6 +6,7 @@ #include <sys/times.h> #include <time.h> #include <signal.h> +#include "signal.h" #include "../mem/paging.h" #include "../mem/vm.h" #include "../proc/proc.h" @@ -31,7 +32,7 @@ enum States { READY, TERMINATED, WAITING_FOR_CHILD, - WAITING_FOR_READ, + WAITING_FOR_IO, SLEEP, }; @@ -63,7 +64,6 @@ struct Task { TaskQueue waiting; sigset_t sigset; sigset_t blockedSignals; - void (*sig_handler[32])(int); /* Messages */ Message *msgQueue; @@ -72,8 +72,8 @@ struct Task { FileSystem *fs; Files *files; VirtualMemory *vm; + SigHandlers *signals; // Messages *ipc; -// Signals *signals; }; extern Task *currentTask[]; @@ -122,6 +122,7 @@ int setegid(gid_t egid); int isatty(int fd); int execve(const char *file, char *argv[], char *envp[]); +void send_sig(Task *target, int sig); int tgkill(pid_t tgid, pid_t tid, int sig); int kill(pid_t pid, int sig);