Sobes.tech
Middle

Jaký je rozdíl mezi sirotím procesem a zombie procesem?

sobes.tech AI

Odpověď od AI

Sirotčí proces (Orphan Process) — je proces, jehož rodičovský proces skončil dříve, než dítě dokončilo svou činnost. Inicializační proces (init, PID 1) automaticky přijímá sirotka a stává se jeho novým rodičem pro následné uvolnění zdrojů.

Zombi proces (Zombie Process) — je proces, který dokončil svou činnost, ale jeho záznam v tabulce procesů jádra (PCB) ještě nebyl odstraněn, protože rodičovský proces nevolal systémové volání wait() nebo waitpid(), aby shromáždil stav ukončení dítěte. Takový proces nevyužívá CPU zdroje, ale zabírá místo v tabulce procesů.

Porovnání:

Vlastnost Sirotčí proces Zombi proces
Stav Probíhá (nebo čeká na provedení) Ukončený
Rodič Původní rodič skončil, nový rodič je init (PID 1). Rodič existuje, ale nevolal wait().
CPU zdroje Spotřebovává CPU zdroje pro vykonání svého úkolu. Ne spotřebovává CPU zdroje.
Místo v tabulce Zabírá místo v tabulce procesů jako běžící proces. Zabírá místo v tabulce procesů, dokud jeho stav není přečten rodičem.
Odstranění Bude ukončen a vyčištěn operačním systémem po ukončení. Zůstává v tabulce procesů, dokud rodič nevolá wait() nebo dokud rodič nezkončí.