10-21-2005
Quote:
Originally Posted by Perderabo
If process accounting or C2 security auditing is active this may involve writing records to disk files.
when
_exit system call is triggered none of the atexit used as a exit handler would be invoked and there would not be any flush from std/IO buffer to the kernel buffers as mentioned only file descriptors (if at all open would be closed). It is
_exit call which take the status directly to the kernel unlike
exit
Writing records to disk files did u mean it from user program's perspective or i misunderstood?
Please explain.
9 More Discussions You Might Find Interesting
1. Programming
Hello everybody, this is my first post on this forum. I have a program that has a child process that sleeps for 5 second and exit. I'm suppose to modify this program so that when the child exits, the parent reports the exit status of the child, so I also have to deal with SIGINT and SIGQUIT. Can... (1 Reply)
Discussion started by: Unlimited Sky
1 Replies
2. Programming
Hi,
I have an c++ application which uses the function fork and execvp().
The parent does not wait until the child ends. The parents just creates children and let them do their stuff.
You can see the parent program as a batch-manager.
I have added a SIGCHLD handler to the program:
void... (3 Replies)
Discussion started by: jens
3 Replies
3. UNIX for Dummies Questions & Answers
When the SIGCHLD is sent?
SIGCHLD is sent either a child exits spontaneously (e.g. exit(0)) or it is killed ?
thank you in advance (3 Replies)
Discussion started by: Puntino
3 Replies
4. Shell Programming and Scripting
i have installed vmware on a text base linux node
now i have to vmware-configure.pl to do the initial configuration
now 1st step it askes for agreeing for a " License Agreement"
for that i have to say "q" and "yes" to Accept it
i want to run a script with does these 3 steps... (6 Replies)
Discussion started by: pbsrinivas
6 Replies
5. UNIX for Dummies Questions & Answers
I want to know whicj process send the signal SIGCHLD to the parent's child.
Thank you in advance, (1 Reply)
Discussion started by: Puntino
1 Replies
6. Programming
Hello,
I'd like to know whether it is possible to let the parent know who kills its child process. The case is likely as below:
if there are four processes, we call them A, B, C and D. B is the child of A, and can be killed by both C and D. if B is killed, then A will receive SIGCHLD from B.... (7 Replies)
Discussion started by: aaronwong
7 Replies
7. Shell Programming and Scripting
Hi,
The following test case populate an array named: array3.
Since array1 and array2 are equal in length and values array3 will remain empty.
#!/usr/bin/ksh
test() {
set -A array1 "A"
set -A array2 "A"
NUM_1=`echo ${#array1}`
print "num elenemt in NUM_1 is ${NUM_1}"
i=1
for ELE2 in... (1 Reply)
Discussion started by: yoavbe
1 Replies
8. Programming
Hi. I have a program whose job it is to manage 15 child processes. Sometimes these children die (sometimes deliberately other times with a SEGV). This causes a SIGCHLD to be sent to my program which uses waitpid() in the signal handler to gather information and, in most cases, restart the child.... (3 Replies)
Discussion started by: jrichemont
3 Replies
9. UNIX for Dummies Questions & Answers
I'm testing out how to use SIGCHLD and I had a question about intercepting the signal and executing an action in the signal handler.
signal(SIGCHLD,countdown);
What I'm trying to achieve is be able to printf(Hello) every second that child is set to sleep.
I'm setting sleep = 3;
so... (1 Reply)
Discussion started by: l flipboi l
1 Replies
_EXIT(2) Linux Programmer's Manual _EXIT(2)
NAME
_exit, _Exit - terminate the calling process
SYNOPSIS
#include <unistd.h>
void _exit(int status);
#include <stdlib.h>
void _Exit(int status);
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
_Exit():
_XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L;
or cc -std=c99
DESCRIPTION
The function _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, init, and the process's parent is sent a SIGCHLD signal.
The value status is returned to the parent process as the process's exit status, and can be collected using one of the wait(2) family of
calls.
The function _Exit() is equivalent to _exit().
RETURN VALUE
These functions do not return.
CONFORMING TO
SVr4, POSIX.1-2001, 4.3BSD. The function _Exit() was introduced by C99.
NOTES
For a discussion on the effects of an exit, the transmission of exit status, zombie processes, signals sent, and so on, see exit(3).
The function _exit() is like exit(3), but does not call any functions registered with atexit(3) or on_exit(3). Whether it flushes standard
I/O buffers and removes temporary files created with tmpfile(3) is implementation-dependent. On the other hand, _exit() does close open
file descriptors, and this may cause an unknown delay, waiting for pending output to finish. If the delay is undesired, it may be useful
to call functions like tcflush(3) before calling _exit(). Whether any pending I/O is canceled, and which pending I/O may be canceled upon
_exit(), is implementation-dependent.
In glibc up to version 2.3, the _exit() wrapper function invoked the kernel system call of the same name. Since glibc 2.3, the wrapper
function invokes exit_group(2), in order to terminate all of the threads in a process.
SEE ALSO
execve(2), exit_group(2), fork(2), kill(2), wait(2), wait4(2), waitpid(2), atexit(3), exit(3), on_exit(3), termios(3)
COLOPHON
This page is part of release 3.53 of the Linux man-pages project. A description of the project, and information about reporting bugs, can
be found at http://www.kernel.org/doc/man-pages/.
Linux 2010-09-20 _EXIT(2)