sgifford, that is perfect! This code works regardless of the input to the first app (which resisted killing when it was reading from a net stream). Ignoring $SIG{CHLD} took care of zombies. (strangely, the auto-reap code from perlipc would kill my server process as well)
This goes in the tool box, for sure. Thanks very much!