Threading Issues

Signal Handling

A signal is used in UNIX systems to notify a process that a particular event has occurred.

  1. A signal is generated by the occurrence of a particular event.
  2. The signal is delivered to a process.
  3. Once delivered, the signal must be handled.

Synchronous signals are delivered to the same process that performed the operation that caused the signal (that is the reason they are considered synchronous).

When a signal is generated by an event external to a running process, that process receives the signal asynchronously.

A signal may be handled by one of two possible handlers:

  1. A default signal handler
  2. A user-defined signal handler

Every signal has a default signal handler that the kernel runs when handling that signal. This default action can be overridden by a user-defined signal handler that is called to handle the signal.

results matching ""

    No results matching ""