Signal handling
A signal is used in UNIX systems to inform a process that a particular event has occurred.
1. A signal is produced by the occurrence of a particular event.
2. A generated signal is delivered to a process.
3. Once delivered, the signal must be handled.
Each signal may be handled by one of two possible handlers
1. A default signal handler.
2. A user-defined signal handler.
Each signal has a default signal handler that is run by the kernel when handling the signal. This default action might be overridden by user-defined signal handler function.