Kończenie procesu zombie w środowiskach Linux

Resumen: Co to jest proces zombie, jak go znaleźć i jak go zabić lub zakończyć.

Este artículo se aplica a Este artículo no se aplica a Este artículo no está vinculado a ningún producto específico. No se identifican todas las versiones del producto en este artículo.

Instrucciones

Co to jest proces Zombie:
Jest to proces, który się zakończył, ale nie jest natychmiast usuwany z pamięci, ponieważ jego deskryptor procesu pozostaje w pamięci.

Jakie powinno być normalne zachowanie procesu:
Po zakończeniu procesu jego stan staje się EXIT_ZOMBIE a element nadrzędny procesu jest powiadamiany, że jego proces podrzędny umarł z SIGCHLD sygnał.

Proces nadrzędny powinien następnie uruchomić wait() dla wywołania systemowego, aby odczytać kod zakończenia martwego procesu i inne informacje. Po wait() proces zombie jest usuwany z pamięci. Dzieje się to szybko, więc nie widzisz procesów zombie gromadzących się w twoim systemie. Ale w przypadkach, gdy widzimy nagromadzenie kilku procesów zombie, jest to sytuacja, w której kod programu nie jest wydajny.

Jak znaleźć procesy zombie:
Uruchamianie polecenia top
wyniki z polecenia Top

Uruchamianie polecenia ps -ef | grep defunct
Wynik nieczynnego polecenia

Jak zakończyć gromadzące się procesy zombie:
W większości przypadków procesy zombie mają ten sam identyfikator procesu nadrzędnego.

Istnieją dwie metody usunięcia procesu:
  • Wyślij SIGCHLD sygnał do procesu nadrzędnego.
Ten sygnał mówi procesowi nadrzędnemu, aby uruchomił wait() System wzywa i sprząta swoje dzieci zombie:
kill -s SIGCHLD <PPID>
Przykład:
kill -s SIGCHLD 2201
  • Zabij proces nadrzędny zombie
kill -9 <PPID>
Przykład:
kill -9 2201

Productos afectados

Dell OpenManage Enterprise, NetWorker Series
Propiedades del artículo
Número del artículo: 000019108
Tipo de artículo: How To
Última modificación: 12 abr 2025
Versión:  4
Encuentre respuestas a sus preguntas de otros usuarios de Dell
Servicios de soporte
Compruebe si el dispositivo está cubierto por los servicios de soporte.