]> git.ipfire.org Git - thirdparty/man-pages.git/blobdiff - man2/_exit.2
proc.5: tfix
[thirdparty/man-pages.git] / man2 / _exit.2
index 7518650edb8a44bdf8c1c0f3c5a15a068ab32d58..c55d2a612c1ec73f498eefb4236d4f6f83df5b54 100644 (file)
@@ -1,5 +1,5 @@
 .\" This manpage is Copyright (C) 1992 Drew Eckhardt;
-.\"                               1993 Michael Haardt, Ian Jackson.
+.\"             and Copyright (C) 1993 Michael Haardt, Ian Jackson.
 .\"
 .\" %%%LICENSE_START(VERBATIM)
 .\" Permission is granted to make and distribute verbatim copies of this
 .\" Modified Wed Jul 21 23:02:38 1993 by Rik Faith <faith@cs.unc.edu>
 .\" Modified 2001-11-17, aeb
 .\"
-.TH _EXIT 2 2010-09-20 "Linux" "Linux Programmer's Manual"
+.TH _EXIT 2 2017-05-03 "Linux" "Linux Programmer's Manual"
 .SH NAME
 _exit, _Exit \- terminate the calling process
 .SH SYNOPSIS
 .B #include <unistd.h>
-.sp
+.PP
 .BI "void _exit(int " status );
-.sp
+
 .B #include <stdlib.h>
-.sp
+.PP
 .BI "void _Exit(int " status );
-.sp
+.PP
 .in -4n
 Feature Test Macro Requirements for glibc (see
 .BR feature_test_macros (7)):
 .in
-.sp
+.PP
 .ad l
 .BR _Exit ():
 .RS 4
-_XOPEN_SOURCE\ >=\ 600 || _ISOC99_SOURCE ||
-_POSIX_C_SOURCE\ >=\ 200112L;
-.br
-or
-.I cc\ -std=c99
+_ISOC99_SOURCE || _POSIX_C_SOURCE\ >=\ 200112L
 .RE
 .ad
 .SH DESCRIPTION
 The function
 .BR _exit ()
 terminates the calling process "immediately".
-Any open file descriptors
-belonging to the process are closed; any children of the process are
-inherited by process 1,
-.IR init ,
-and the process's parent is sent a
+Any open file descriptors belonging to the process are closed.
+Any children of the process are inherited by
+.BR init (1)
+(or by the nearest "subreaper" process as defined through the use of the
+.BR prctl (2)
+.B PR_SET_CHILD_SUBREAPER
+operation).
+The process's parent is sent a
 .B SIGCHLD
 signal.
-.LP
+.PP
 The value
-.I status
+.I "status & 0377"
 is returned to the parent process as the process's exit status, and
 can be collected using one of the
 .BR wait (2)
 family of calls.
-.LP
+.PP
 The function
 .BR _Exit ()
 is equivalent to
@@ -79,7 +78,7 @@ is equivalent to
 .SH RETURN VALUE
 These functions do not return.
 .SH CONFORMING TO
-SVr4, POSIX.1-2001, 4.3BSD.
+POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD.
 The function
 .BR _Exit ()
 was introduced by C99.
@@ -87,7 +86,7 @@ was introduced by C99.
 For a discussion on the effects of an exit, the transmission of
 exit status, zombie processes, signals sent, and so on, see
 .BR exit (3).
-.LP
+.PP
 The function
 .BR _exit ()
 is like
@@ -97,10 +96,9 @@ functions registered with
 .BR atexit (3)
 or
 .BR on_exit (3).
-Whether it flushes
-standard I/O buffers and removes temporary files created with
-.BR tmpfile (3)
-is implementation-dependent.
+Open
+.BR stdio (3)
+streams are not flushed.
 On the other hand,
 .BR _exit ()
 does close open file descriptors, and this may cause an unknown delay,
@@ -114,7 +112,7 @@ Whether any pending I/O is canceled, and which pending I/O may be
 canceled upon
 .BR _exit (),
 is implementation-dependent.
-
+.SS C library/kernel differences
 In glibc up to version 2.3, the
 .BR _exit ()
 wrapper function invoked the kernel system call of the same name.