Process handlers, and zombies, or preap(1)
Ben Morrow
ben at morrow.me.uk
Mon Mar 31 21:11:59 UTC 2014
Quoth "Chris H" <bsd-lists at bsdforge.com>:
> I'm evaluating/experimenting on releng_9. The install, and now
> custom kernel have noting exotic, or anything out of the ordinary.
> top(1), and ps(1) indicate a (1) zombie, or <defunct> process. On
> my releng_8 systems, when I occasionally encounter one of these,
> they soon disappear (are reaped) from the process table. While I
> have not investigated this far enough on both versions to determine
> whether the parent process reaped the child on the releng_8 systems,
> and the parent on releng_9 is simply an irresponsible parent, eg;
> a different parent.
What is the parent?
> Before I do, I was wondering if there was any
> specific difference between the 2 versions that might cause better
> handling of such situations. While I recognize that resource
> starvation is HIGHLY unlikely, except by perhaps a rouge parent
A rouge parent? :)
> spawning multitudes of zombies. I thought it might be useful for
> "housekeeping" to 1) provide a process table housekeeper (zombie
> reaper),
That's called init(8). When the parent exits, init will wait for the
zombie.
> or 2) create a system utility/command like SunOS/OpenSolaris
> has; preap(1).
That seems like a bad idea, to me. Generally speaking I would expect it
to be safer to kill and restart the parent, allowing init to do its job.
Ben
More information about the freebsd-stable
mailing list