Previous: Aborting a Program, Up: Program Termination
The _exit
function is the primitive used for process termination
by exit
. It is declared in the header file unistd.h.
The
_exit
function is the primitive for causing a process to terminate with status status. Calling this function does not execute cleanup functions registered withatexit
oron_exit
.
The
_Exit
function is the ISO C equivalent to_exit
. The ISO C committee members were not sure whether the definitions of_exit
and_Exit
were compatible so they have not used the POSIX name.This function was introduced in ISO C99 and is declared in stdlib.h.
When a process terminates for any reason—either because the program terminates, or as a result of a signal—the following things happen:
wait
or waitpid
; see Process Completion. If the
program exited, this status includes as its low-order 8 bits the program
exit status.
init
process, with process ID 1.)
SIGCHLD
signal is sent to the parent process.
SIGHUP
signal is sent to each process in the foreground job,
and the controlling terminal is disassociated from that session.
See Job Control.
SIGHUP
signal and a SIGCONT
signal are sent to each process in the
group. See Job Control.