Signals

From OSDev.wiki
Revision as of 22:53, 10 July 2007 by osdev>Alboin (Formatted and Moved from PFR into Stubs.)
Jump to navigation Jump to search
This page is a stub.
You can help the wiki by accurately adding more contents to it.

Signals are a Unix invention for asynchronous signaling, and were integrated into the C standard (<signal.h>). When a process receives a signal (send by hardware, or another process using raise()), a signal handler is called. A signal handler is a C function that handles the signal; which function to call on which signal is defined by passing its function pointer to the signal() function. (If no signal handler is defined for a given signal, a raise() of that signal aborts the program.)

Handling

Signal handling is tricky, since it breaks the single-control-flow structure of a C program. Make sure you read the manuals.

See Also