Skip to main content

Solaris Zombie processes

In Solaris (and UNIX), a process is a zombie, as shown by the message defunct in the ps report. A zombie process is one that has had all its resources freed, but has not received an acknowledgement from a parent process, receipt of which would ordinarily remove its entry from the process table.

The next time a system is booted, zombie processes are cleared. Zombies should not affect system performance, and you should not need to remove them. Only if you start getting a large number, may zombies affect performance as they hold memory resources.

You cannot kill zombies, as they are already dead 🙂 however from Solaris 9 onwards, there is a tool, preap that may successfully remove zombie processes. Otherwise the only way to kick them off is reboot.