It is easy to track down the reason for the defunct process IF you use the -l option to ps. "ps -el" will include the parent process of the zombies. It is that parent process which is the cause - it did not "wait()" for a spawned child process. Mike