System V and SIGCLD

Guy Harris guy at sun.uucp
Fri Sep 19 04:29:35 AEST 1986


> Can anyone explain AT&T's rationale in dropping SIGCLD? In my 5.2
> manual there is a warning "strongly" discouraging its use in
> new programs, and there is no mention of it anywhere in the System V
> Interface Definition (at least I couldn't find any).

Geez, youngsters these days have no sense of history; they probably think
"AT&T UNIX" started with System V.  Mutter, mutter.  :-)

The System III documentation has much the same warning; it came out in 1980,
so fi they haven't dropped it by now, I suspect they're not going to
(especially since things like "init" use it as well).

A little history here.  The notion that AT&T is one big happy family when it
comes to UNIX is mistaken; there are lots of groups developing applications
to run under UNIX, and, like any other bunch of UNIX programmers, they all
have their own ideas about what they need to have UNIX do - or, like any
other bunch of UNIX programmers, they all have their own ideas about what
they *think* they need to have UNIX do.

As such, there were at one point probably more variant versions of UNIX
inside the Bell System than outside.  S5 is the product of an attempt to
merge them all into one version.  S3 was one step along this path; it picked
up a number of features from other versions of UNIX inside Bell, and SIGCLD
was probably one of them.

The people maintaining S3 may have thought that you could do something
better than SIGCLD (the notion that ignoring SIGCLD has the side effect of
discarding existing zombies and preventing the creation of new ones is
certainly a hack), and wanted to warn that it was only in there for
compatibility with other versions of UNIX.  At the time, they probably
figured there was a good chance that they would get rid of it in favor of
something better.  Either they still thought so at the time they put out the
5.2 documentation, or nobody had ever bothered to change the documentation.

> The only other possibility I can think of is that 5.3 has some new
> and nifty feature that disallows the need for SIGCLD.

Either you mean "*eliminates* the need for SIGCLD", or "disallows the *use
of* SIGCLD."  Neither, as far as I know, is true; SIGCLD is still in 5.3.
-- 
	Guy Harris
	{ihnp4, decvax, seismo, decwrl, ...}!sun!guy
	guy at sun.com (or guy at sun.arpa)



More information about the Comp.unix.wizards mailing list