Vydání zpracovatele nedostatku paměti earlyoom 1.4

Po osmi měsících vývoje byla vydána vydání background procesu earlyoom 1.4, který pravidelně kontroluje objem dostupné paměti (MemAvailable, SwapFree) a snaží se včas reagovat na vznikající nedostatek paměti. Kód projektu je napsán v jazyce C a distribuováno pod licenci MIT.

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í:

  • Díky odloženého načítání atributům procesů je logika výběru procesů pro ukončení zrychlena o 50%;
  • Zajištěno je zaznamenání UID ukončovaného procesu kromě PID a jména procesu;
  • Přidáno zvýraznění ladicího logu světle šedou barvou;
  • Bylo provedeno čištění kódu;
  • Pokud to bylo možné, použito je deklarace lokálních proměnných pro bloky;
  • Přidána možnost nastavit PATH_LEN pro náhradu pevně zadané hodnoty velikosti buffera;
  • Zajištěno spuštění cppcheck, pokud je k dispozici;
  • Přidán výkonový test „make bench“;
  • Rozšířen soubor testů (make test);
  • Realizováno je snížení privilegii root v unit souboru systemd earlyoom.service. Tato změna ruší možnost GUI oznámení. Pro zapnutí GUI oznámení se doporučuje vrátit práva root tím, že se odkomentuje „DynamicUser=true“. Odebrání root také uvádí znemožňuje získání informací o spotřebě paměti při připojení /proc v režimu hidepid=1 nebo hidepid=2.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster