Rhyddhau triniwr y tu allan i'r cof earlyoom 1.4

Ar Γ΄l wyth mis o ddatblygiad cyhoeddi rhyddhau proses cefndir bore bore 1.4, sy'n gwirio o bryd i'w gilydd faint o gof sydd ar gael (MemAvailable, SwapFree) ac yn ceisio ymateb yn gynnar i achosion o gof isel. Mae cod y prosiect wedi'i ysgrifennu yn iaith C a dosbarthu gan dan drwyddedau MIT.

Os yw maint y cof sydd ar gael yn llai na'r gwerth penodedig, yna bydd earlyoom yn rymus (trwy anfon SITERM neu SIGKILL) yn terfynu'r broses sy'n defnyddio cof yn fwyaf gweithredol (cael y gwerth /proc/*/oom_score uchaf), heb ddod Γ’ chyflwr y system i glirio byfferau system ac ymyrryd Γ’ chyfnewid gwaith (mae'r triniwr OOM (Out Of Memory) yn y cnewyllyn yn cael ei sbarduno pan fydd y cyflwr y tu allan i'r cof eisoes wedi cyrraedd gwerthoedd critigol ​ ac fel arfer erbyn hyn nid yw'r system yn ymateb mwyach i gamau gweithredu defnyddwyr).

Mae Earlyoom yn cefnogi anfon hysbysiadau o brosesau sydd wedi'u terfynu'n orfodol i'r bwrdd gwaith (gan ddefnyddio hysbysu-anfon), ac mae hefyd yn darparu'r gallu i ddiffinio rheolau lle gallwch chi, gan ddefnyddio ymadroddion rheolaidd, nodi enwau'r prosesau y mae'n well eu terfynu (opsiwn "- -prefer") neu dylid ei stopio (opsiwn "--avoid").

Y prif newidiadau yn y datganiad newydd:

  • ar y draul llwytho diog priodoleddau proses 50% yn gyflymach rhesymeg dewis proses ar gyfer cwblhau;
  • Sicrhau bod UID y broses sy'n cael ei therfynu yn cael ei gofnodi, yn ogystal Γ’'r PID ac enw'r broses;
  • Ychwanegwyd amlygiad o'r log dadfygio mewn llwyd golau;
  • Glanhau'r cod;
  • Lle bo'n bosibl, defnyddiwyd y datganiad o newidynnau sy'n lleol i flociau;
  • Ychwanegwyd gosodiad PATH_LEN i ddisodli gwerth maint y byffer a wniwyd i'r cod;
  • Sicrhau bod cppcheck yn cael ei lansio os yw ar gael;
  • Ychwanegwyd prawf perfformiad "gwneud mainc";
  • Set estynedig o brofion (gwneud prawf);
  • Wedi gweithredu ailosod breintiau gwraidd yn y ffeil uned systemd earlyoom.service. Y newid hwn seibiannau posibilrwydd o hysbysiadau GUI. Er mwyn galluogi hysbysiadau GUI, cynigir dychwelyd hawliau gwraidd trwy ddadwneud "DynamicUser=true". Analluogi gwraidd hefyd ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ i'r anallu i gael gwybodaeth am ddefnydd cof wrth osod /proc yn y modd hidepid=1 neu hidepid=2.

Ffynhonnell: opennet.ru

Ychwanegu sylw