Terminazione di un processo zombie negli ambienti Linux

Resumen: Che cos'è un processo zombie, come trovarlo e come ucciderlo o terminarlo.

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

Che cos'è un processo zombie:
È un processo che si è concluso, ma non tutto viene immediatamente rimosso dalla memoria poiché il suo descrittore di processo rimane in memoria.

Quale dovrebbe essere il normale comportamento di un processo:
Al termine di un processo, lo stato del processo diventa EXIT_ZOMBIE e il padre del processo viene informato che il suo processo figlio è morto con il SIGCHLD segnale.

Si suppone quindi che il processo padre esegua il wait() per consentire alla chiamata di sistema di leggere lo stato di uscita del processo non attivo e altre informazioni. Dopo wait() viene chiamato, il processo zombie viene rimosso dalla memoria. Ciò avviene rapidamente, in modo da evitare l'accumulo di processi zombie sul sistema. Ma nei casi in cui vediamo l'accumulo di diversi processi zombie, questa è una situazione in cui il codice del programma non è efficiente.

Come trovare un processo
zombie:Esecuzione del comando top
risultati del comando Top

Esecuzione del comando ps -ef | grep defunct
Risultato di un comando defunto

Come terminare l'accumulo di processi zombie:
Nella maggior parte dei casi, i processi zombie hanno lo stesso ID processo padre.

Esistono due metodi per rimuovere il processo:
  • Invia il SIGCHLD segnale al processo padre.
Questo segnale indica al processo padre di eseguire wait() Chiama il sistema e ripulisci i suoi figli zombie:
kill -s SIGCHLD <PPID>
Esempio:
kill -s SIGCHLD 2201
  • Termina il processo padre zombie
kill -9 <PPID>
Esempio:
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.