This document describes the four common UNIX signalling environments, including their interfaces, and contrasts each. There are four common signal-handling environments today. This section discusses each and common variations where appropriate.
System calls interrupt when a signal is delivered.
In many cases the default action is to ignore the signal, causing the signal to be lost. In the worst case the default action is to terminate the process. Additionally any signal can interrupt a system call. Few applications attempt to restart system calls that have been interrupted by a signal. This results in even more unreliability.