Вы не можете убить его, потому что он уже мертв. Вот почему это называется зомби. («несуществующий» гораздо менее описательный)
Уильям Перселл
Ответы:
3
Этот процесс называется процессом зомби . Команда Kill не влияет на процессы зомби. Технически они мертвы, и вы видите их только потому, что у них все еще есть запись в таблице процессов.
Чтобы удалить зомби из системы, SIGCHLDсигнал можно отправить родителю вручную, используя команду kill. Если родительский процесс по-прежнему отказывается пожинать зомби, следующим шагом будет удаление родительского процесса. Когда процесс теряет своего родителя, init становится его новым родителем. Init периодически выполняет системный вызов wait, чтобы пожинать зомби с init в качестве родителя.
Несуществующий означает, что это зомби-процесс - он на самом деле не работает, он просто ожидает вызова родительского процесса, waitчтобы получить возвращаемое значение.
wait Функция может быть использована для чтения номера сигнала, который убил процесс зомби, так что это на самом деле правильное поведение.
Чтобы избавиться от зомби, вы можете: - убить родительский процесс (возможно, консоль, где вы ввели свою команду) - вызвать waitродительский процесс - игнорировать SIGCHLD в родительском процессе, если вы никогда не вызываетеwait
Ответы:
Этот процесс называется процессом зомби . Команда Kill не влияет на процессы зомби. Технически они мертвы, и вы видите их только потому, что у них все еще есть запись в таблице процессов.
Чтобы удалить зомби из системы,
SIGCHLD
сигнал можно отправить родителю вручную, используя команду kill. Если родительский процесс по-прежнему отказывается пожинать зомби, следующим шагом будет удаление родительского процесса. Когда процесс теряет своего родителя, init становится его новым родителем. Init периодически выполняет системный вызов wait, чтобы пожинать зомби с init в качестве родителя.источник
Несуществующий означает, что это зомби-процесс - он на самом деле не работает, он просто ожидает вызова родительского процесса,
wait
чтобы получить возвращаемое значение.wait
Функция может быть использована для чтения номера сигнала, который убил процесс зомби, так что это на самом деле правильное поведение.Чтобы избавиться от зомби, вы можете: - убить родительский процесс (возможно, консоль, где вы ввели свою команду) - вызвать
wait
родительский процесс - игнорировать SIGCHLD в родительском процессе, если вы никогда не вызываетеwait
источник