
Pokud jste uživatel Linuxu, možná jste viděli zombie procesy kolem svého seznamu procesů. Nemůžete zabít zombie proces, protože je již mrtvý - jako skutečný zombie.
Zombie jsou v podstatě zbývající kousky mrtvých procesů, které nebyly řádně vyčištěny. Program, který vytváří zombie procesy, není správně naprogramován - programy nemají nechat zombie procesy držet kolem.
Image Credit: Daniel Hollister na Flickr (Remixed)
Když proces umírá na Linuxu, není to vše z paměti okamžitě odstraněno - jeho proces deskriptor zůstává v paměti (deskriptor procesu přijímá pouze malé množství paměti). Stav procesu se stává EXIT_ZOMBIE a nadřazený proces je oznamován, že jeho podřízený proces zemřel pomocí signálu SIGCHLD. Rodičovský proces má potom provést systémový hovor wait (), aby si přečetl stav ukončení mrtvého procesu a další informace. To umožňuje rodičovskému procesu získat informace z mrtvého procesu. Po volání wait () se proces zombie úplně odstraní z paměti.
To se obvykle děje velmi rychle, takže v systému nebudete hromadit zombie procesy. Pokud však rodičovský proces není správně naprogramován a nikdy neumí čekat (), jeho zombie děti budou držet v paměti, dokud nebudou vyčištěny.
Utility jako GNOME System Monitor,
top příkazy a ps příkaz zobrazí zombie procesy. Nebezpečí zombie procesů

několik zombie procesů visí kolem není žádný problém - ačkoli oni ukazují chybu s jejich rodičovský proces ve vašem systému.
Zbavte se zombie procesů

Jednou cestou je zaslání signálu SIGCHLD do rodičovského procesu. Tento signál říká, že rodičovský proces provádí systémové volání wait () a vyčistí jeho děti zombie. Odeslání signálu příkazem
kill , který nahrazuje pid v příkazu PID rodičovského procesu: kill -s SIGCHLD pid
't správně naprogramované a ignoruje signály SIGCHLD, to nepomůže. Budete muset zabít nebo zavřít nadřazený proces zombie. Když proces, který vytvořil zombie, skončí, init zdědí zombie procesy a stane se jejich novým rodičem. (init je první proces, který byl spuštěn na Linuxu při spuštění a byl mu přidělen PID 1.) init periodicky provádí čekací () systémový hovor k vyčištění svých zombie dětí, takže init bude krátkou práci zombie. Rodičovský proces můžete restartovat po jeho zavření.
Pokud rodičovský proces nadále vytváří zombie, měl by být opraven tak, aby správně volal wait (), aby zúročil své zombie děti. Nahrajte zprávu o chybě, pokud program ve vašem systému stále vytváří zombie.
Jak nainstalovat balíčky .deb bez "Ubuntu Software" v Ubuntu 16.04
Ubuntu 16.04 je první verze, která obsahuje novou náhradní softwarovou aplikaci GNOME Software - zastavení chyby. V současné době v Ubuntu 16.04 není možné instalovat aplikace třetích stran pomocí softwarové aplikace. Tato chybová zpráva je pouze dočasná, neboť Canonical již pracuje na řešení problému.
Jak nastavit Apple TV tak, aby automaticky zapnul televizi nebo mediální centrum Zapnuto
Váš Apple TV může automaticky zapnout televizor, přepnout na správný vstup HDMI a dokonce ovládat hlasitost. Přečtěte si, jak vám ukážeme, jak naučit Apple TV ovládat svůj televizor. Proč to chci dělat? Před několika lety byl představen nový standard pro řízení HDMI, známý jako HDMI-CEC. CEC znamená Consumer Electronics Control a dovoluje zařízením kompatibilním se standardem HDMI-CEC používat jeden z vodičů v kabelu HDMI jako komunikační relé pro vydávání příkazů mezi zařízeními.