Lëshimi i mbajtësit pa memorie të hershme 1.4

Pas tetë muajsh zhvillimi botuar lirimi i procesit të sfondit dhoma e hershme 1.4, i cili kontrollon periodikisht sasinë e memories së disponueshme (MemAvailable, SwapFree) dhe përpiqet t'i përgjigjet në një fazë të hershme shfaqjes së mungesës së memories. Kodi i projektit është i shkruar në C dhe shperndare nga sipas licencave të MIT.

Nëse sasia e memories në dispozicion është më e vogël se vlera e specifikuar, atëherë earlyoom do të detyrojë (duke dërguar SIGTERM ose SIGKILL) të përfundojë procesin që konsumon më shumë memorie (duke pasur /proc/*/oom_score më të lartë), pa shkaktuar sistemin gjendje për të pastruar buferët e sistemit dhe për të ndërhyrë në ndërrimin e funksionimit (trajtimi OOM (Out Of Memory) në kernel aktivizohet kur gjendja e ulët e memories ka arritur tashmë vlerat kritike dhe zakonisht deri në këtë pikë sistemi nuk i përgjigjet më veprimeve të përdoruesit) .

Earlyoom mbështet dërgimin e njoftimeve për proceset e ndërprera me forcë në desktop (duke përdorur notify-send), dhe gjithashtu ofron mundësinë për të përcaktuar rregulla në të cilat, duke përdorur shprehje të rregullta, mund të specifikoni emrat e proceseve që preferohen të ndërpriten ("- -preferoj” opsion) ose duhet të shmanget (opsioni “—shmang”).

Kryesore Ndryshimet në publikimin e ri:

  • Për shkak të ngarkim dembel atributet e procesit, logjika për zgjedhjen e proceseve për të përfunduar është përshpejtuar me 50%;
  • UID-i i procesit që përfundon pasqyrohet në regjistër, përveç PID-së dhe emrit të procesit;
  • U shtua theksimi i regjistrit të korrigjimit në gri të hapur;
  • Kodi u pastrua;
  • Kur ishte e mundur, u deklaruan variablat bllok-lokalë;
  • U shtua cilësimi PATH_LEN për të zëvendësuar vlerën e madhësisë së tamponit të qepur në kod;
  • Siguruar që cppcheck është nisur nëse është i disponueshëm;
  • U shtua testi i performancës "make bench";
  • Është zgjeruar grupi i testeve (make test);
  • Rivendosja e zbatuar e privilegjeve të rrënjës në skedarin e njësisë systemd earlyoom.service. Ky është një ndryshim prishet mundësia e njoftimeve GUI. Për të aktivizuar njoftimet GUI, sugjerohet që të kthehen të drejtat rrënjësore duke mos komentuar "DynamicUser=true". Çaktivizimi i rrënjës gjithashtu приводит tek pamundësia për të marrë informacion rreth konsumit të memories kur montoni /proc në modalitetin hidepid=1 ose hidepid=2.

Burimi: opennet.ru

Shto një koment