Завершення зомбі-процесу в середовищах Linux
Summary: Що таке зомбі-процес, як його знайти, а також як його вбити або ліквідувати.
This article applies to
This article does not apply to
This article is not tied to any specific product.
Not all product versions are identified in this article.
Instructions
Що таке зомбі-процес:
Це процес, який закінчився, але не весь він негайно видаляється з пам'яті, оскільки його дескриптор процесу залишається в пам'яті.
Якою має бути нормальна поведінка процесу:
Коли процес завершується, статус процесу стає
Після цього передбачається, що батьківський процес запустить метод
Як знайти зомбі процеси:
Виконання команди
Виконання команди
Як припинити накопичувальні зомбі-процеси:
У більшості випадків зомбі-процеси мають однаковий ідентифікатор батьківського процесу.
Прибрати процес можна двома методами:
Це процес, який закінчився, але не весь він негайно видаляється з пам'яті, оскільки його дескриптор процесу залишається в пам'яті.
Якою має бути нормальна поведінка процесу:
Коли процес завершується, статус процесу стає
EXIT_ZOMBIE і батько процесу отримує сповіщення про те, що його дочірній процес помер разом із SIGCHLD знак.
Після цього передбачається, що батьківський процес запустить метод
wait() для системного виклику для зчитування стану виходу мертвого процесу та іншої інформації. Після wait() викликається, зомбі-процес видаляється з пам'яті. Це відбувається швидко, тому ви не бачите, як на вашій системі накопичуються зомбі-процеси. Але в тих випадках, коли ми бачимо, що накопичується кілька зомбі-процесів, це ситуація, коли програмний код не ефективний.
Як знайти зомбі процеси:
Виконання команди
top
Виконання команди
ps -ef | grep defunct
Як припинити накопичувальні зомбі-процеси:
У більшості випадків зомбі-процеси мають однаковий ідентифікатор батьківського процесу.
Прибрати процес можна двома методами:
- Надішліть файл
SIGCHLDсигнал батьківському процесу.
Цей сигнал повідомляє батьківському процесу запустити
wait() Система виклику і прибирання своїх зомбі-дітей:
kill -s SIGCHLD <PPID>
Приклад:
kill -s SIGCHLD 2201
- Вбити зомбі-батьківський процес
kill -9 <PPID>
Приклад:
kill -9 2201
Affected Products
Dell OpenManage Enterprise, NetWorker SeriesArticle Properties
Article Number: 000019108
Article Type: How To
Last Modified: 12 Apr 2025
Version: 4
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.