Junior — Middle
Come eliminare un processo zombie bloccato nel sistema operativo Linux?
sobes.tech AI
Risposta dell'AI
Un processo zombie in Linux è un processo che è terminato, ma il suo processo genitore non ha ancora chiamato wait() o una funzione simile per ottenere lo stato di terminazione. Per eliminare gli zombie:
- Assicurarsi che il processo genitore gestisca correttamente i segnali di terminazione dei processi figli (ad esempio, il segnale SIGCHLD) e chiami
wait()owaitpid(). - Se il processo genitore non risponde, puoi terminarlo, e i processi zombie saranno ereditati dal processo
init(PID 1), che li pulirà correttamente.
Esempio di comando per cercare zombie:
ps aux | grep Z
Poi puoi trovare il genitore e riavviarlo o terminarlo. Idealmente, correggi il codice del processo genitore affinché gestisca correttamente i processi figli.