http://qs1969.pair.com?node_id=378468


in reply to Using 'kill' to see if a process is stil alive

If a process exits (or dies in any way), it becomes a zombie. When this happens, the parent gets a SIGCHLD. The parent process of the zombie can harvest the child with waitpid(2) or wait(2) or wait4(2).

You have to use the builtin function waitpid to see if the child process is still living.

For an example about this, see perldoc perlipc.

Edit: clarified first para, as Zaxo notes in his reply. Original text was:

If a process exits (or dies in any way), it becomes a zombie. The parent process of the zombie can harvest it with waitpid(2) or wait(2) or wait4(2). When this happens, the parent gets a SIGCHLD.