Menu

#89 Implement signal handling framework (part 1)

1.0
open
nobody
None
False
2018-04-28
2018-04-28
No

To handle signals, we need a method of sending them (the kill() system call) and a way of catching them. The latter needs to be done in two places:

  1. On return fom a system call
  2. During resume, if not in the kernel.

The latter ensures that a process which is busy in userland responds to a signal quickly.

The inital implementation deals with the necessary mechanics in the kernel syscall handler and the kill() system call, with initially only the SIGKILL signal doing anything (although due to the way sleep() is currently implemented, any signal will terminate the sleep).

A future change will implement the framework for setting up a signal handler from a userland process, and some form of signal masking.

Discussion


Log in to post a comment.

MongoDB Logo MongoDB