Middle
Mi a különbség az árvaprocess és a zombi folyamat között?
sobes.tech MI
Válasz az MI-től
Árván folyamat (Orphan Process) — ez egy olyan folyamat, amelynek szülőfolyamata a gyermekfolyamat végrehajtásának befejezése előtt befejeződik. A inicializáló folyamat (init, PID 1) automatikusan elfogadja az árva folyamatot, és új szülőként lesz az, a későbbi erőforrásfelszabadítás érdekében.
Zombi folyamat (Zombie Process) — ez egy olyan folyamat, amely befejezte végrehajtását, de a kernel folyamat táblájában (PCB) még nem lett törölve, mert a szülőfolyamat nem hívta meg a wait() vagy waitpid() rendszerhívást, hogy összegyűjtse a gyermekfolyamat befejezési státuszát. Ilyen folyamat nem fogyaszt CPU erőforrást, de helyet foglal a folyamat táblában.
Összehasonlítás:
| Jellemző | Árva folyamat | Zombi folyamat |
|---|---|---|
| Állapot | Folyamatban van (vagy várakozik a végrehajtásra) | Befejeződött |
| Szülő | Az eredeti szülő befejeződött, az új szülő az init (PID 1). |
A szülő létezik, de nem hívta meg a wait()-et. |
| CPU erőforrások | CPU erőforrásokat használ a feladat végrehajtásához. | Nem használ CPU erőforrásokat. |
| Hely a táblában | Helyet foglal a folyamatok táblájában, mint egy normál futó folyamat. | Helyet foglal a folyamatok táblájában, amíg a státusza nem kerül olvasásra a szülőtől. |
| Törlés | A rendszer a befejezés után véglegesen befejezi és megtisztítja. | A szülő wait()-et hívásáig vagy a szülő befejezéséig marad a folyamatok táblájában. |