Middle
Wat is het verschil tussen een weesproces en een zombieproces?
sobes.tech AI
Antwoord van AI
Weesproces (Orphan Process) — is een proces waarvan het ouderproces is geëindigd voordat het kindproces zijn uitvoering heeft voltooid. Het init-proces (PID 1) adopteert automatisch de wees en wordt zijn nieuwe ouder voor latere resourcevrijgave.
Zombie-proces (Zombie Process) — is een proces dat zijn uitvoering heeft voltooid, maar zijn invoer in de proceslijst van de kernel (PCB) nog niet is verwijderd, omdat het ouderproces de systeemaanroep wait() of waitpid() niet heeft aangeroepen om de beëindigingsstatus van het kindproces te verzamelen. Zo'n proces verbruikt geen CPU-bronnen, maar neemt wel ruimte in in de proceslijst.
Vergelijking:
| Kenmerk | Weesproces | Zombie-proces |
|---|---|---|
| Status | Voert uit (of wacht op uitvoering) | Is voltooid |
| Ouder | De oorspronkelijke ouder is geëindigd, de nieuwe ouder is init (PID 1). |
Bestaat, maar heeft wait() niet aangeroepen. |
| CPU-bronnen | Verbruikt CPU-bronnen voor zijn taak. | Verbruikt geen CPU-bronnen. |
| Plaats in lijst | Bezet ruimte in de proceslijst als een normaal lopend proces. | Bezet ruimte in de proceslijst totdat de status door de ouder is gelezen. |
| Verwijdering | Wordt door het besturingssysteem beëindigd en opgeschoond na afloop. | Blijft in de proceslijst totdat de ouder wait() aanroept of de ouder eindigt. |