Truly independent web browser
Go to file
Andreas Kling 03a8357e84 Implement sending signals to blocked-in-kernel processes.
This is dirty but pretty cool! If we have a pending, unmasked signal for
a process that's blocked inside the kernel, we set up alternate stacks
for that process and unblock it to execute the signal handler.

A slightly different return trampoline is used here: since we need to
get back into the kernel, a dedicated syscall is used (sys$sigreturn.)

This restores the TSS contents of the process to the state it was in
while we were originally blocking in the kernel.

NOTE: There's currently only one "kernel resume TSS" so signal nesting
definitely won't work.
2018-11-07 21:19:47 +01:00
AK Fix whiny build. 2018-11-07 16:38:45 +01:00
Base/etc Add getgrent() family of functions. 2018-11-06 22:27:51 +01:00
ELFLoader Tidy up ELFLoader. 2018-11-04 14:11:16 +01:00
Kernel Implement sending signals to blocked-in-kernel processes. 2018-11-07 21:19:47 +01:00
LibC Oops, waitpid() was not passing the options parameter to the kernel. 2018-11-07 10:46:48 +01:00
Userland Implement sending signals to blocked-in-kernel processes. 2018-11-07 21:19:47 +01:00
VirtualFileSystem Implement sending signals to blocked-in-kernel processes. 2018-11-07 21:19:47 +01:00
Widgets Better int hashing. This was going to bite me sooner or later. 2018-10-27 09:33:24 +02:00
.gitignore Add simplified mmap() and munmap() syscalls. 2018-10-24 09:48:41 +02:00
Banner.txt Add a cool banner. 2018-10-10 13:18:46 +02:00