Ambos Zombie
y defunct
son idénticos. ZOMBIE
es el de los state of the process
mientras no haya defunct
estado, puede verlo desde el código fuente de su kernel.
enum proc_state {
UNUSED, /*** processes in initial state **/
EMBRYO,
SLEEPING,
RUNNABLE,
RUNNING,
ZOMBIE /** processes in final state **/
};
Estado zombi significa donde ha salido pero aún no se ha limpiado .
puede abrir la página man de proc(1)
y ver este /proc/[pid]/stat
Información de estado sobre el proceso. Esto es utilizado por ps(1)
.
Para Linux, los procesos "desaparecidos" y "zombies" son los mismos.
Desde man ps
:
Procesos marcados <defunct>
son procesos muertos (los llamados "zombis") que permanecen porque su padre no los ha destruido adecuadamente. Estos procesos serán destruidos por init(8) si el proceso padre sale.
PROCESS STATE CODES
Here are the different values that the s, stat and state output specifiers (header "STAT" or "S") will display to describe the state of a process:
D uninterruptible sleep (usually IO)
R running or runnable (on run queue)
S interruptible sleep (waiting for an event to complete)
T stopped by job control signal
t stopped by debugger during the tracing
W paging (not valid since the 2.6.xx kernel)
X dead (should never be seen)
Z defunct ("zombie") process, terminated but not reaped by its parent
Como dijo Achal difunto fue añadido por ps. Estrictamente hablando, no son lo mismo.
Por ejemplo, solo tid 10941 era un zombi en la siguiente tabla. Los otros subprocesos estaban en D en lugar de Z.
$ grep prometheus foo/bar/sos_commands/process/ps_-elfL
4 Z root 10941 10920 10941 0 6 80 0 - 0 exit Mar14 ? 00:11:41 [prometheus] <defunct>
1 D root 10941 10920 11010 0 6 80 0 - 621811 wait_o Mar14 ? 00:11:08 [prometheus] <defunct>
1 D root 10941 10920 11025 0 6 80 0 - 621811 wait_o Mar14 ? 00:08:13 [prometheus] <defunct>
1 D root 10941 10920 11057 0 6 80 0 - 621811 wait_o Mar14 ? 00:11:12 [prometheus] <defunct>
1 D root 10941 10920 11060 0 6 80 0 - 621811 wait_o Mar14 ? 00:11:42 [prometheus] <defunct>
1 D root 10941 10920 11298 0 6 80 0 - 621811 wait_o Mar14 ? 00:11:05 [prometheus] <defunct>