Sobes.tech
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.