BBS水木清华站∶精华区

发信人: jl.bbs@bbs.ee.ntu.edu.tw (卖女孩的小火柴), 看板: Linux 
标  题: Re: <zombie> 的 process 
发信站: 台大电机 Maxwell 站 (Sat Sep 21 20:57:04 1996) 
转信站: JoeLu!netnews.ntu!Maxwell 
 
==> 在 thhsieh.bbs@bbs.phys.ntu (居士) 的文章中提到: 
 请问各位: 
     有时候 ps 时,会见到有些 process 後头出现一个 
     <zombie> 的记号,请问那意味著什麽? 每次那记号 
     一出现,我就会心惊胆跳,因为用 kill -9 也杀不 
     掉那 process ,而且不知怎地,这种 process 会 
     越来越多,要 logout 吗? 不行, logout 执行到 
     一半那个 console 就当掉了,要 shutdown 吗? 也 
     不行,执行了 shutdown -r now 过了半天也不见动 
     静,只会出现 
     The system is going done now ...... 
     Sending terminating signal to all process ..... 
     ( 我记不太清楚原文,但大至如上,就是每次大家 
       要 shutdown 时见到的 message 啦! ) 
     我猜是不是因为 kill -9 对那些奇怪的 process 无 
     效,因而导至系统无法 shutdown ? 结果闹到後来, 
     我只好按下 reset 键重开电脑。 
     有谁知道那是怎麽回事吗? 
    如果有一个等待永远不会发生的事件的process,这个process就会一直等待下去 
,我们称这种process为zombie。造成zombie最常见的原因是process想要结束,但它 
活著的父process并没有发出wait系统呼叫来接手回去。 
 
    如果你的系统正常(我不晓得什麽样才叫正常....:p),那麽zombie过不久会被其 
父process收拾掉。但是如果不正常,则zombie会一直留待在系统中,会在process 
table中占据一个位子。而系统的process table的位子是有限的,如果zombie一直累 
积,则会逐渐占满process table,这时便无可避免的会影响电脑的正常操作。 
 

BBS水木清华站∶精华区