OSDN Git Service

Retire LDP man-pages repository
[linuxjm/LDP_man-pages.git] / original / man3 / exit.3
diff --git a/original/man3/exit.3 b/original/man3/exit.3
deleted file mode 100644 (file)
index e8dfff8..0000000
+++ /dev/null
@@ -1,198 +0,0 @@
-.\" Copyright (C) 2001 Andries Brouwer <aeb@cwi.nl>.
-.\"
-.\" %%%LICENSE_START(VERBATIM)
-.\" Permission is granted to make and distribute verbatim copies of this
-.\" manual provided the copyright notice and this permission notice are
-.\" preserved on all copies.
-.\"
-.\" Permission is granted to copy and distribute modified versions of this
-.\" manual under the conditions for verbatim copying, provided that the
-.\" entire resulting derived work is distributed under the terms of a
-.\" permission notice identical to this one.
-.\"
-.\" Since the Linux kernel and libraries are constantly changing, this
-.\" manual page may be incorrect or out-of-date.  The author(s) assume no
-.\" responsibility for errors or omissions, or for damages resulting from
-.\" the use of the information contained herein.  The author(s) may not
-.\" have taken the same level of care in the production of this manual,
-.\" which is licensed free of charge, as they might when working
-.\" professionally.
-.\"
-.\" Formatted or processed versions of this manual, if unaccompanied by
-.\" the source, must acknowledge the copyright and authors of this work.
-.\" %%%LICENSE_END
-.\"
-.\" FIXME . There are a lot of other process termination actions that
-.\" could be listed on this page. See, for example, the list in the
-.\" POSIX exit(3p) page.
-.\"
-.TH EXIT 3  2014-03-25 "Linux" "Linux Programmer's Manual"
-.SH NAME
-exit \- cause normal process termination
-.SH SYNOPSIS
-.nf
-.B #include <stdlib.h>
-.sp
-.BI "void exit(int " status );
-.fi
-.SH DESCRIPTION
-The
-.BR exit ()
-function causes normal process termination and the
-value of \fIstatus & 0377\fP is returned to the parent
-(see
-.BR wait (2)).
-.LP
-All functions registered with
-.BR atexit (3)
-and
-.BR on_exit (3)
-are called, in the reverse order of their registration.
-(It is possible for one of these functions to use
-.BR atexit (3)
-or
-.BR on_exit (3)
-to register an additional
-function to be executed during exit processing;
-the new registration is added to the front of the list of functions
-that remain to be called.)
-If one of these functions does not return
-(e.g., it calls
-.BR _exit (2),
-or kills itself with a signal),
-then none of the remaining functions is called,
-and further exit processing (in particular, flushing of
-.BR stdio (3)
-streams) is abandoned.
-If a function has been registered multiple times using
-.BR atexit (3)
-or
-.BR on_exit (3),
-then it is called as many times as it was registered.
-.LP
-All open
-.BR stdio (3)
-streams are flushed and closed.
-Files created by
-.BR tmpfile (3)
-are removed.
-.LP
-The C standard specifies two constants,
-\fBEXIT_SUCCESS\fP and \fBEXIT_FAILURE\fP,
-that may be passed to
-.BR exit ()
-to indicate successful or unsuccessful
-termination, respectively.
-.SH RETURN VALUE
-The
-.BR exit ()
-function does not return.
-.SH ATTRIBUTES
-.SS Multithreading (see pthreads(7))
-The
-.BR exit ()
-function uses a global variable that is not protected,
-so it is not thread-safe.
-.SH CONFORMING TO
-SVr4, 4.3BSD, POSIX.1-2001, C89, C99.
-.SH NOTES
-.LP
-It is undefined what happens if one of the
-functions registered using
-.BR atexit (3)
-and
-.BR on_exit (3)
-calls either
-.BR exit ()
-or
-.BR longjmp (3).
-Note that a call to
-.BR execve (2)
-removes registrations created using
-.BR atexit (3)
-and
-.BR on_exit (3).
-.LP
-The use of
-.B EXIT_SUCCESS
-and
-.B EXIT_FAILURE
-is slightly more portable
-(to non-UNIX environments) than the use of 0 and some nonzero value
-like 1 or \-1.
-In particular, VMS uses a different convention.
-.LP
-BSD has attempted to standardize exit codes; see the file
-.IR <sysexits.h> .
-.LP
-After
-.BR exit (),
-the exit status must be transmitted to the
-parent process.
-There are three cases.
-If the parent has set
-.BR SA_NOCLDWAIT ,
-or has set the
-.B SIGCHLD
-handler to
-.BR SIG_IGN ,
-the status is discarded.
-If the parent was waiting on the child,
-it is notified of the exit status.
-In both cases the exiting
-process dies immediately.
-If the parent has not indicated that
-it is not interested in the exit status, but is not waiting,
-the exiting process turns into a "zombie" process
-(which is nothing but a container for the single byte representing
-the exit status) so that the parent can learn the exit status when
-it later calls one of the
-.BR wait (2)
-functions.
-.LP
-If the implementation supports the
-.B SIGCHLD
-signal, this signal
-is sent to the parent.
-If the parent has set
-.BR SA_NOCLDWAIT ,
-it is undefined whether a
-.B SIGCHLD
-signal is sent.
-.LP
-If the process is a session leader and its controlling terminal
-is the controlling terminal of the session, then each process in
-the foreground process group of this controlling terminal
-is sent a
-.B SIGHUP
-signal, and the terminal is disassociated
-from this session, allowing it to be acquired by a new controlling
-process.
-.LP
-If the exit of the process causes a process group to become orphaned,
-and if any member of the newly orphaned process group is stopped,
-then a
-.B SIGHUP
-signal followed by a
-.B SIGCONT
-signal will be
-sent to each process in this process group.
-See
-.BR setpgid (2)
-for an explanation of orphaned process groups.
-.SH SEE ALSO
-.BR _exit (2),
-.BR setpgid (2),
-.BR wait (2),
-.BR atexit (3),
-.BR on_exit (3),
-.BR tmpfile (3)
-.SH COLOPHON
-This page is part of release 3.79 of the Linux
-.I man-pages
-project.
-A description of the project,
-information about reporting bugs,
-and the latest version of this page,
-can be found at
-\%http://www.kernel.org/doc/man\-pages/.