Hmmm...bisher dachte ich immer, dass der Code eines Zombies bereits komplett abgearbeitet wurde und der Prozess zwar noch in der Prozesstabelle hängt, keine Systemrecourcen in diesem Sinne verbraucht werden und Zombie Prozesse somit dem System auch nicht Schaden. Und halt nur noch darauf gewartet wird, dass der Parent den ExitStatus des Childs abfrägt...(er es aber nicht tut, weil es sich bereits beendet hat)
da sind wir uns einig (Obwohl böse Zungen - eine Kollegin - behaupten, sie hätten schon mal Zombies unter Solaris mit kill -9 <pid> erfolgreich gekillt)
das habe ich auch nicht behauptet bzw. wollte ich das damit nicht aussagen, sorry wenn ich mich da undeutlich ausgedrückt habe.
Genau so habe ich das auch verstanden.
Von selbst, wie das, einfach nur so?
Ich dachte immer, dass sich der Init drum kümmert, dass die Zombie-Prozesse dem Init (PID 1) übergeben werden bzw. er deren Papa wird und wenn das nicht hilft, dann einfach die Kiste durchbooten (wie du ja schon sagtest).
Die wirklich wichtige Frage, die ich mir bisher noch nicht beantworten habe können:
Was ist denn zu tun, wenn man ein System hat, dass lauter Zombie Prozesse aufweißt?
Entweder man fängt an selbst herumzuprogrammieren (was ich ja nicht gerade empfehle -> sehr oft erlebt 'cron defunct'-Prozesse) oder aber man nimmt eine komplett neue Maschine (bisher wusste ich mir da nicht anders zu helfen)
Vielleicht hat der ein oder andere noch einen Tipp, weil ich das Thema an sich schon sehr interessant finde. Denn wenn man googelt, dann findet man zwar Bestätigungen, aber leider keine Lösungen für Probleme mit den Zombies