[mdk-re] kill zmobie process
Igor Fadin
=?iso-8859-1?q?fid_=CE=C1_darim=2Eru?=
Пт Авг 10 11:03:02 MSD 2001
On 08-Aug-2001 Sergey Bolshakov wrote:
>>>>>> "alting" == alting writes:
>
> alting> Здравствуйте! Извините, за дурацкий вопрос: как вычислить и убить
> alting> зомби процесс? А то top говорит, что у меня 1 zombie, а вот как его
> alting> прибить-то?
> Уже прибит. Процесса нет на самом деле, остались лишь воспоминания,
> которые были бы полезны родителю этого процесса, если б оный родитель
> не умер, не дождавшись. То бишь, прибить - никак и незачем.
>
> --
> Трули ерз, Сергей.
К сожалению, не совсем так, Сергей. Зомби не деспетчеризуются, но
ресурсы занимают (как минимум - 12к памяти + pid, но что самое неприятное -
могут не детачнуть расшареную память, а это могут быть мегабайты; очереди,
семафоры, а это может вести к потенциальному бардаку), поэтому "есть на самом
деле". И в общем случае вредны. Прибивать надо. Особенно если нет родителя
который за них отвечает (т.е. - он раньше окочурился), или родитель "глупый",
т.е. написан так, что ему наплевать на зомбиков.
На уровне написания программ убиваются - wait или waitpid (c
cоответствующими правами). В bash тоже есть соответствующая команда (правда по
отношению к зомби от нее мало проку). Ну и kill -9.
Вычищать из-под зомбей шареные сегменты, очереди, семафоры - ipcs,
ipcrm (конечно права на это надо иметь, ну знать что уничтожать и зачем :) ).
ipcs и ipcrm сисадмину могут пригодиться для анализа ситуации если в системе
идут какие-то непонятные утечки памяти. В некоторых случаях природой подобных
утечек может быть наследсво от зомбиков.
Как вычислить ? Не знаю. Ведь зомбики могут быть санкционированными,
т.е. стоит зомбик и мирно ждет когда родитель о нем почешется, а родитель
просто временно занят. Тогда вообще ничего не надо делать.
Игорь
----------------------------------
E-Mail: Igor Fadin <fid на darim.ru>
Date: 10-Aug-2001
Time: 14:07:27
This message was sent by XFMail
----------------------------------
Подробная информация о списке рассылки community