|
|
1.1 ! root 1: .TH EXIT 2 ! 2: .SH NAME ! 3: exit, _exit \- terminate process ! 4: .SH SYNOPSIS ! 5: .B void exit (status) ! 6: .br ! 7: .B int status; ! 8: .br ! 9: .B void _exit (status) ! 10: .br ! 11: .B int status; ! 12: .SH DESCRIPTION ! 13: .I Exit\^ ! 14: terminates the calling process with the following consequences: ! 15: .IP ! 16: All of the file descriptors open in the calling process are closed. ! 17: .IP ! 18: If the parent process of the calling process is executing a ! 19: .IR wait , ! 20: it is notified of the calling process's ! 21: termination and the low order eight bits (i.e., bits 0377) of ! 22: .I status\^ ! 23: are made available to it; see ! 24: .IR wait (2). ! 25: .IP ! 26: If the parent process of the calling process is not executing a ! 27: .IR wait , ! 28: the calling process is transformed into a zombie process. ! 29: A ! 30: .I "zombie process\^" ! 31: is a process that only occupies a slot in the process table. ! 32: It has no other space allocated either in user or kernel space. ! 33: The process table slot that it occupies is partially overlaid with ! 34: time accounting information ! 35: (see ! 36: .BR <sys/proc.h> ) ! 37: to be used by ! 38: .IR times. ! 39: .IP ! 40: The parent process ! 41: .SM ID ! 42: of all of the calling process's existing ! 43: child processes and zombie processes is set to 1. ! 44: This means the initialization process (see ! 45: .IR intro (2)) ! 46: inherits each of these processes. ! 47: .IP ! 48: Each attached shared memory segment is detached and the value of ! 49: .B shm_nattach ! 50: in the data structure associated with its shared memory identifier ! 51: is decremented by 1. ! 52: .IP ! 53: For each semaphore for which the calling process has set a semadj value (see ! 54: .IR semop (2)), ! 55: that semadj value is added to the semval of the specified semaphore. ! 56: .IP ! 57: If the process has a process, text, or data lock, an ! 58: .I unlock\^ ! 59: is performed (see ! 60: .IR plock (2)). ! 61: .IP ! 62: An accounting record is written on the accounting file if the system's ! 63: accounting routine is enabled; see ! 64: .IR acct\^ (2). ! 65: .PP ! 66: The C function ! 67: .I exit\^ ! 68: may cause cleanup actions before the process exits. ! 69: The function ! 70: .I _exit\^ ! 71: circumvents all cleanup. ! 72: .SH NOTES ! 73: This manual page replaces the 4.2BSD manual page. ! 74: .SH "SEE ALSO" ! 75: acct(2), intro(2), plock(2), semop(2), signal(2), wait(2). ! 76: .\" @(#)exit.2 6.2 of 9/6/83
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.