The UNIX signalling mechanism is implemented for the GNU Hurd
by means of a separate signal thread that is part of every user-space
process. This makes handling of signals a separate thread of control.
GNU Mach itself has no idea what a signal is and
kill is not a system call (as it typically is in a UNIX system): it's
implemented in glibc.
<youpi> kill send the signal to the process <youpi> if the process is hung, killing waits <youpi> signals should be just asynchronous, but apparently for some reason Roland & co wanted some synchronization