previous | start | next

Receiving Signals

For each process, the kernel keeps two int values with a bit for each signal:

When one process sends a signal, the other process is not running (one processor), so the kernel sets the corresponding bit in the reciever's pending signal value.

When the receiver finally is about to run, the kernel arranges for the receiver to execute code to handle the event for the signal.

The the kernel also sets the bit for the signal to be blocked and clears the same bit in the pending signal value.



previous | start | next