Middle
Aký je rozdiel medzi procesom sirotou a zombi procesom?
sobes.tech AI
Odpoveď od AI
Sirotý proces (Orphan Process) — je proces, ktorého rodičovský proces skončil skôr, ako dieťa proces dokončil svoju činnosť. Inicializačný proces (init, PID 1) automaticky prijíma sirotu a stáva sa jeho novým rodičom pre neskoršie uvoľnenie zdrojov.
Zombi proces (Zombie Process) — je proces, ktorý ukončil svoju činnosť, ale jeho záznam v tabuľke procesov jadra (PCB) ešte nebol odstránený, pretože rodičovský proces nevolal systémový volanie wait() alebo waitpid(), aby zhromaždil stav ukončenia dieťaťa. Takýto proces nevyužíva CPU zdroje, ale zaberá miesto v tabuľke procesov.
Porovnanie:
| Vlastnosť | Sirotý proces | Zombi proces |
|---|---|---|
| Stav | Beží (alebo čaká na vykonanie) | Ukončený |
| Rodič | Pôvodný rodič skončil, nový rodič je init (PID 1). |
Rodič existuje, ale nevolal wait(). |
| CPU zdroje | Spotrebováva CPU zdroje na vykonanie úlohy. | Nespotrebováva CPU zdroje. |
| Miesto v tabuľke | Zaberá miesto v tabuľke procesov ako bežný bežiaci proces. | Zaberá miesto v tabuľke procesov, kým jeho stav nebude prečítaný rodičom. |
| Odstránenie | Bude ukončený a vyčistený operačným systémom po ukončení. | Zostáva v tabuľke procesov, kým rodič nevolá wait() alebo kým rodič nezomrie. |