Penangan sing ora duwe memori ngeculake earlyoom 1.4

Sawise wolung sasi pembangunan diterbitake release saka proses latar mburi kamar awal 1.4, sing periodik mriksa jumlah memori kasedhiya (MemAvailable, SwapFree) lan nyoba kanggo nanggapi awal kanggo kedadeyan memori kurang. Kode project ditulis ing C lan disebarake dening ing lisensi MIT.

Yen jumlah memori sing kasedhiya kurang saka nilai sing ditemtokake, mula earlyoom bakal meksa (kanthi ngirim SIGTERM utawa SIGKILL) mungkasi proses sing nggunakake memori paling aktif (duwe nilai / proc / * / oom_score paling dhuwur), tanpa nggawa negara sistem. kanggo ngresiki buffer sistem lan ngganggu kerja swapping (OOM (Out Of Memory) handler ing kernel dipicu nalika negara metu saka memori wis tekan nilai kritis lan biasane ing wektu iki sistem ora nanggapi maneh kanggo tumindak pangguna).

Earlyoom ndhukung ngirim kabar babagan proses sing diakhiri kanthi paksa menyang desktop (nggunakake notify-send), lan uga menehi kemampuan kanggo nemtokake aturan sing, kanthi nggunakake ekspresi reguler, sampeyan bisa nemtokake jeneng proses sing luwih disenengi kanggo mungkasi (opsi "- -prefer") utawa mandheg kudu nyingkiri (pilihan "-avoid").

Utama ganti ing release anyar:

  • ing beyo kesed loading atribut proses, logika kanggo milih proses kanggo ngrampungake wis digawe cepet dening 50%;
  • Mesthekake yen UID saka proses sing diakhiri katon ing log, saliyane PID lan jeneng proses;
  • Nambahake sorotan log debug kanthi werna abu-abu;
  • Kode iki di resiki;
  • Yen bisa, variabel blok-lokal diumumake;
  • Nambahake setelan PATH_LEN kanggo ngganti nilai ukuran buffer sing dibangun ing kode;
  • Mesthekake yen cppcheck diwiwiti nalika kasedhiya;
  • Ditambahake tes kinerja "nggawe bangku";
  • Set tes wis ditambahi (gawe test);
  • Dilaksanakake reset hak istimewa root ing file unit systemd earlyoom.service. Iki owah-owahan ngaso kamungkinan saka kabar GUI. Kanggo ngaktifake kabar GUI, disaranake bali hak ROOT dening uncommenting "DynamicUser = bener". Mateni root uga ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ kanggo ora bisa entuk informasi babagan konsumsi memori nalika dipasang / proc ing mode hidepid=1 utawa hidepid=2.

Source: opennet.ru

Add a comment