Po sedmi měsících vývoje vydání background procesu , který pravidelně kontroluje množství dostupné paměti (MemAvailable, SwapFree) a snaží se včas reagovat na vznikající nedostatek paměti.
Pokud objem dostupné paměti klesne pod stanovenou hodnotu, earlyoom násilně (odesláním SIGTERM nebo SIGKILL) ukončí proces, který má nejvyšší spotřebu paměti (má nejvyšší hodnotu /proc/*/oom_score), aniž by stav systému dospěl do bodu vymazání systémových bufferů a překážel swapování (handler OOM (Out Of Memory) v jádře se aktivuje, když stav nedostatku paměti již dosáhl kritických hodnot a obvykle v tuto chvíli systém již nereaguje na akce uživatele).
Earlyoom podporuje odesílání oznámení o násilně ukončených procesech na pracovní plochu (pomocí notify-send), a také poskytuje možnost definování pravidel, ve kterých lze pomocí regulárních výrazů určit názvy procesů, jejichž ukončení je preferováno (možnost „—prefer“) nebo jejichž zastavení by se mělo vyhnout (možnost „—avoid“).
Hlavní změny v novém vydání:
- Bylo implementováno čekání na dokončení procesu po odeslání signálu. To řeší problém, že earlyoom někdy zabíjí více než jeden proces, když stačí jeden;
- Byl přidán pomocný skript (notify_all_users.py) pro upozornění všech přihlášených uživatelů na ukončení procesů prostřednictvím notify-send;
- Opraveno nesprávné zobrazení některých názvů procesů obsahujících znaky UTF-8;
- Byl přijat kodex chování (Contributor Covenant Code of Conduct).
Zdroj: opennet.ru
