Sobes.tech
Junior — Middle

Vysvětlete, co jsou zombie procesy v operačním systému Linux a v čem spočívá jejich podstata.

sobes.tech AI

Odpověď od AI

Zombi procesy v Linuxu jsou procesy, které dokončily svou činnost, ale ještě nebyly úplně odstraněny z tabulky procesů operačního systému. Zůstávají ve stavu "zombie" (defunct), protože jejich rodičovský proces ještě nečetl stav ukončení pomocí systémového volání wait().

Podstata zombi procesu:

  • Proces skončil, uvolnil zdroje, ale jeho záznam v tabulce procesů zůstává.
  • To je nutné, aby rodičovský proces mohl získat návratový kód a další informace o ukončení.
  • Pokud rodičovský proces nevolá wait(), zombi zůstane viset a zabírá místo v tabulce procesů.

Pokud je takových procesů hodně, může to vést k vyčerpání systémových zdrojů.

Aby se zabránilo zombiím, musí rodičovský proces správně zacházet s ukončením dětských procesů voláním wait() nebo nastavením obsluhy signálu SIGCHLD.