Answer on sockets; Question on screen under SunOS 4.[01]

Dan Bernstein brnstnd at kramden.acf.nyu.edu
Tue Nov 20 09:27:53 AEST 1990


In article <2539 at root44.co.uk> gwc at root.co.uk (Geoff Clare) writes:
> brnstnd at kramden.acf.nyu.edu (Dan Bernstein) writes:
> > You know how orphaned processes are
> >killed when they're stopped? Well, POSIX requires that this also happen
> >to processes in an orphaned process group, even if the parent is around.
> >This requirement is unreasonable, useless, and unnecessarily hurts lots
> >of existing programs, but it's what the standard says.
  [ correction ]

Yes. I should have said the following:

  You know how job control doesn't work on orphaned processes? Well,
  POSIX requires that this also happen to processes in an orphaned
  process group, even if the parent is around. This requirement is
  unreasonable, useless, and unnecessarily hurts lots of existing
  programs, but it's what the standard says. 

> In other words, POSIX has fixed the revolting BSD behaviour Dan describes.

No, it has not. Any process with a parent should be allowed to stop.
BSD does that correctly. POSIX doesn't. Give me one good reason that
screen should fail under POSIX.

In the exceptional case when a process doesn't have a parent, there are
arguments for (BSD) killing the process, for stopping the process, and
for (POSIX) ignoring the signal. I favor the POSIX behavior over the BSD
behavior, though I think ignoring orphan status is the best solution. In
any case, this is a minor issue compared to the problem of what POSIX
does to processes that *do* have parents.

---Dan



More information about the Comp.unix.questions mailing list