Signals: Fundamental Concepts 391
SIGCLD
This is a synonym for SIGCHLD.
SIGCONT
When sent to a stopped process, this signal causes the process to resume
(i.e., to be rescheduled to run at some later time). When received by a pro-
cess that is not currently stopped, this signal is ignored by default. A process
may catch this signal, so that it carries out some action when it resumes.
This signal is covered in more detail in Sections 22.2 and 34.7.
SIGEMT
In UNIX systems generally, this signal is used to indicate an implementation-
dependent hardware error. On Linux, this signal is used only in the Sun
SPARC implementation. The suffix EMT derives from emulator trap, an assem-
bler mnemonic on the Digital PDP-11.
SIGFPE
This signal is generated for certain types of arithmetic errors, such as
divide-by-zero. The suffix FPE is an abbreviation for floating-point exception,
although this signal can also be generated for integer arithmetic errors.
The precise details of when this signal is generated depend on the hard-
ware architecture and the settings of CPU control registers. For example,
on x86-32, integer divide-by-zero always yields a SIGFPE, but the handling of
floating-point divide-by-zero depends on whether the FE_DIVBYZERO excep-
tion has been enabled. If this exception is enabled (using feenableexcept()),
then a floating-point divide-by-zero generates SIGFPE; otherwise, it yields the
IEEE-standard result for the operands (a floating-point representation of
infinity). See the fenv(3) manual page and <fenv.h> for further information.
SIGHUP
When a terminal disconnect (hangup) occurs, this signal is sent to the con-
trolling process of the terminal. We describe the concept of a controlling
process and the various circumstances in which SIGHUP is sent in Section 34.6.
A second use of SIGHUP is with daemons (e.g., init, httpd, and inetd). Many
daemons are designed to respond to the receipt of SIGHUP by reinitializing
themselves and rereading their configuration files. The system administra-
tor triggers these actions by manually sending SIGHUP to the daemon,
either by using an explicit kill command or by executing a program or
script that does the same.
SIGILL
This signal is sent to a process if it tries to execute an illegal (i.e., incor-
rectly formed) machine-language instruction.
SIGINFO
On Linux, this signal name is a synonym for SIGPWR. On BSD systems, the
SIGINFO signal, generated by typing Control-T, is used to obtain status infor-
mation about the foreground process group.