exit(2) exit(2)
NAME
exit, _exit - terminate process
SYNOPSIS
void exit (status)
int status; void exit (status)
int status;
DESCRIPTION
exit terminates the calling process with the following
consequences: All of the file descriptors open in the
calling process are closed. If the parent process of the
calling process is executing a wait, it is notified of the
calling process's termination and the low order eight bits
(i.e., bits 0377) of status are made available to it; see
wait(2). If the parent process of the calling process is
not executing a wait, the calling process is transformed
into a zombie process. A ``zombie process'' is a process
that only occupies a slot in the process table. It has no
other space allocated either in user or kernel space. The
process table slot that it occupies is partially overlaid
with time accounting information (see <sys/proc.h>) to be
used by times. The parent process ID of all of the calling
process's existing child processes and zombie processes is
set to 1. This means the initialization process (see
intro(2)) inherits each of these processes. Each attached
shared memory segment is detached and the value of
shmnattach in the data structure associated with its shared
memory identifier is decremented by 1. For each semaphore
for which the calling process has set a semadj value (see
semop(2)), that semadj value is added to the semval of the
specified semaphore. If the process has a process, text, or
data lock, an unlock is performed (see plock(2)). An
accounting record is written on the accounting file if the
system's accounting routine is enabled; see acct(2). If the
process ID, tty group ID, and process group ID of the
calling process are equal, the SIGHUP signal is sent to each
process that has a process group ID equal to that of the
calling process.
The C function exit may cause cleanup actions before the
process exits. The function exit circumvents all cleanup.
SEE ALSO
acct(2), intro(2), plock(2), semop(2), signal(3), wait(2).
WARNING
See WARNING section in signal(3).
Page 1 (last mod. 1/14/87)