According to POSIX (3.3.1.3) it is unspecified what happens when
SIGCHLD is set to SIG_IGN. Here the BSD and SYSV behaviours differ,
causing BSD software that sets the action for SIGCHLD to SIG_IGN to
fail on Linux.
SIGCHLD
Whenever a process terminates or stops, the SIGCHLD signal is sent to the parent. By default, this signal is ignored, so the parent must catch this signal if it wants to be notified whenever a child's status changes. The normal action in the signal-catching function is to call one of the wait functions to fetch the child's process ID and termination status.
In UNIX System terminology, a process that has terminated, but whose parent has not yet waited for it, is called a zombie.
原帖由 converse 于 2007-12-28 12:53 发表
我在linux上同样看了man signal,上面是这么写的:
APUE2中是这么写的:
而关于僵尸进程APUE2是这么写的(section8.5):
欢迎光临 Chinaunix (http://bbs.chinaunix.net/) | Powered by Discuz! X3.2 |