У меня проблема с процессом зомби, и я впервые встретился с ним. Поэтому я не знаю, как решить эту проблему и концепцию. Я прочитал статью, опубликованную 1 год назад ( ссылка ), и в ней говорится, как показано ниже:
Нет ничего страшного в том, чтобы такие процессы происходили, если их не много. Зомби в конце концов пожинается его родителем (вызывая wait (2)). Если исходный родитель не получил его до своего выхода, процесс init (pid == 1) сделает это позже.
Но при этом я не понимаю и у меня есть 2 вопроса. Пожалуйста, помогите, кто бы это ни знал.
Pid = 1
) ?? Прав ли я ??
Процессы-зомби don’t израсходовали любые системные ресурсы. (На самом деле каждый использует очень крошечную сумму системной памяти для хранения ее дескриптора процесса.) Однако каждый процесс-зомби сохраняет свой идентификатор процесса (PID)
, системы Linux имеют конечное число идентификаторов процесса †“32767 по умолчанию в 32-разрядных системах. Если зомби накопятся на очень быстром уровне †“, например, если неправильно запрограммированное программное обеспечение сервера создаст процессы-зомби при загрузке — весь пул доступного PIDs, то в конечном счете станет присвоенным процессам-зомби, препятствуя тому, чтобы другие процессы запустились.
Избавление от Процессов-зомби
kill -s SIGCHLD pid
Кредит переходит в: HTG
Нет, На самом деле процесс-зомби
В Системной терминологии UNIX, процесс, который завершился, но чей родитель еще не ожидал его, называют зомби. PS (1) команда печатает состояние процесса-зомби как Z. Если мы пишем продолжительную программу, что ветвления много дочерних процессов, они становятся зомби, если мы не ожидаем их и выбираем их состояние завершения.
заключительное условие рассмотреть является этим: Что происходит, когда процесс, который был наследован init, завершается? Это становится зомби? Ответ является вЂвЂno, ’’, потому что init записан так, чтобы каждый раз, когда один из его детей завершает, init вызвал одну из функций ожидания для выборки состояния завершения. Путем выполнения этого init препятствует тому, чтобы система была забита зомби. Когда мы говорим, что вЂвЂone init’s детей, ’’, мы имеем в виду любого процесс, который init генерирует непосредственно (такие как getty, который мы описываем в Разделе 9.2) или процесс, родитель которого завершился и был впоследствии наследован init. от Программирования Unix Усовершенствования stevence rechard