Pas pas tetë muajsh zhvillimi publikimi i procesit në sfond , i cili kontrollon periodikisht volumet e memories së disponueshme (MemAvailable, SwapFree) dhe përpiqet të reagojë në një stad të hershëm ndaj mungesës së memories. Kodi i projektit është shkruar në gjuhën C dhe nën licencën MIT.
Nëse volumi i memories së disponibile është më i vogël se një vlerë e caktuar, earlyoom detyron (përmes dërgimit të SIGTERM ose SIGKILL) të ndalojë procesin që konsumon më shumë memory (që ka vlerën më të madhe /proc/*/oom_score), pa e lejuar gjendjen e sistemit të arrijë në pastrimin e bufereve sistemike dhe duke penguar funksionimin e swap-it (përpunuesi OOM (Mungesë Memorie) në kernel aktivizohet kur gjendja e mungesës së memories ka arritur nivele kritike dhe zakonisht në këtë pikë sistemi nuk reagon më ndaj veprimeve të përdoruesit).
Earlyoom mbĂ«shtet dĂ«rgimin e njoftimeve pĂ«r proceset e ndaluara fuqishĂ«m nĂ« desktop (nĂ«pĂ«rmjet notify-send), dhe gjithashtu ofron mundĂ«sinĂ« e pĂ«rcaktimit tĂ« rregullave, ku pĂ«rmes shprehjeve tĂ« rregullta mund tĂ« pĂ«rcaktohen emrat e proceseve, ndalimi i tĂ« cilave Ă«shtĂ« i preferueshĂ«m (opsioni «âprefer») ose ndalimi i tĂ« cilave duhet tĂ« shmanget (opsioni «âavoid»).
Ndryshimet kryesore në lëshimin e ri:
- Përmes attributet e proceseve janë përshpejtuar logjikën e seçitjes së proceseve për t'u mbyllur me 50%;
- Sigurohet reflektimi në log të UID të procesit në mbyllje, përveç PID dhe emrit të procesit;
- Shtuar ndriçimi i logjeve të debug me ngjyrë gri të ndritshme;
- është bërë pastrimi i kodit;
- Shtuar përdorimi i shpalljeve lokale për blloqet e variablave;
- Shtuar konfigurimin PATH_LEN për të zëvendësuar vlerën e koduar të madhësisë së tamponit;
- Siguruar nisjen e cppcheck nëse është i pranishëm;
- Shtuar testin e performancës "make bench";
- Zgjeruar setin e testeve (make test);
- Realizuar rivendosja e privilegjeve root nĂ« skedarin e njĂ«sisĂ« systemd earlyoom.service. Ky ndryshim mundĂ«son notifikimet GUI. PĂ«r tĂ« aktivizuar notifikimet GUI, sugjerohet tĂ« rikthehen tĂ« drejtat e root, duke hequr komentin "DynamicUser=true". Ăaktivizimi i root gjithashtu çon nĂ« pamundĂ«sinĂ« e marrjes sĂ« informacionit mbi konsumimin e memories kur /proc Ă«shtĂ« montuar nĂ« modin hidepid=1 ose hidepid=2.
Burimi: opennet.ru
