From owner-freebsd-hackers Tue Dec 9 16:54:27 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id QAA24744 for hackers-outgoing; Tue, 9 Dec 1997 16:54:27 -0800 (PST) (envelope-from owner-freebsd-hackers) Received: from sax.sax.de (sax.sax.de [193.175.26.33]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id QAA24725 for ; Tue, 9 Dec 1997 16:54:19 -0800 (PST) (envelope-from j@uriah.heep.sax.de) Received: (from uucp@localhost) by sax.sax.de (8.8.8/8.8.8) with UUCP id BAA02391 for freebsd-hackers@freebsd.org; Wed, 10 Dec 1997 01:54:16 +0100 (CET) (envelope-from j@uriah.heep.sax.de) Received: (from j@localhost) by uriah.heep.sax.de (8.8.8/8.8.5) id BAA05177; Wed, 10 Dec 1997 01:49:03 +0100 (MET) Date: Wed, 10 Dec 1997 01:49:03 +0100 (MET) Message-Id: <199712100049.BAA05177@uriah.heep.sax.de> Mime-Version: 1.0 X-Newsreader: knews 0.9.8 Reply-To: joerg_wunsch@uriah.heep.sax.de (Joerg Wunsch) Organization: Private BSD site, Dresden X-Phone: +49-351-2012 669 X-PGP-Fingerprint: DC 47 E6 E4 FF A6 E9 8F 93 21 E0 7D F9 12 D6 4E References: From: j@uriah.heep.sax.de (J Wunsch) Subject: Re: dealing with zombies X-Original-Newsgroups: local.freebsd.hackers To: freebsd-hackers@freebsd.org Content-Type: text/plain; charset=us-ascii Sender: owner-freebsd-hackers@freebsd.org X-Loop: FreeBSD.org Precedence: bulk "David E. Cross" wrote: >> As I recall under linux setting up a signal handler that excutes waitpid() >> is not necessary if you are set (by default) to ignore SIGCHLD. > I believe that is true under POSIX. Posix would never be that specific about a religious detail. ;-) Posix IMHO allows for this option, but it's of course not mandatory to be the default. If i'm not very mistaken, Linux is the only system where the default is to ignore dead children (and that's supposedly still Posix-compliant). SysV defaults to not ignore them, but can be turned to ignore them using Posix-style sigaction() with SA_NOCLDWAIT, or by using legacy signal() with SIG_IGN. FreeBSD (-current) can be turned to ignore them using Posix-style sigaction() with SA_NOCLDWAIT. Truely compliant software always needs to install a handler for SIGCHLD, unless it finds the definition of SA_NOCLDWAIT so it could set this. Everything else is `implementation-defined'. Of course, since the Linuxulator aims to emulate Linux behaviour, it would do best by changing its default signal behaviour. -- cheers, J"org joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-)