defunct
0.改定履歴
- 1998.11.30 初版
1.はじめに
このドキュメントは,defunctプロセス,いわゆるゾンビについての話をまとめた物である.
2.でふぁんくとプロセス
psコマンドでプロセスの状態を参照したら<defunct>状態のプロセスがたくさん残って居る場合が有る.
root 17681 1 0 9月 22 ? 0:01 /NETMRDS/COM/rdscltsvc root 19076 19075 0 9月 22 ? 1:04 /bin/sh /NETMRDS/COM/rdssnda root 3795 3776 0 00:22:20 pts/0 0:00 csh daemon 3720 10487 0 0:00 <defunct> daemon 13211 10498 0 0:00 <defunct> |
ps で見たときにゾンビ(defunct)プロセスが存在するのは,親プロセスが wait()せずに子プロセスが開放されずにいるためである.
ゾンビプロセスは子プロセスが exit した時点で親プロセスに子プロセス終了のシグナルを送ってから親プロセスの wait() によって開放されるまでの状態をさしている.
ゾンビプロセスはkill では削除出来ないので親プロセスを終了させるしかない.
即時に削除したいのであれば、reboot をすれば可能である.