Earlyoom 1.3:n julkaisu, prosessi, jolla varhainen reagointi on vähäistä muistia

Seitsemän kuukauden kehitystyön jälkeen on julkaistu earlyoom 1.3 -taustaprosessin julkaisu, joka tarkistaa määräajoin käytettävissä olevan muistin määrän (MemAvailable, SwapFree) ja yrittää reagoida varhain muistin puutteiden esiintymiseen.

Jos käytettävissä olevan muistin määrä on pienempi kuin määritetty arvo, earlyoom pakottaa (lähettämällä SIGTERM tai SIGKILL) prosessin, joka kuluttaa muistia aktiivisimmin (jolla on korkein /proc/*/oom_score-arvo), tuomatta järjestelmän tilaa. järjestelmän puskureiden tyhjentämiseen ja työn vaihtoon häiritsemiseen (ytimen OOM (Out Of Memory) -käsittelijä laukeaa, kun muistin loppuminen on jo saavuttanut kriittiset arvot ja yleensä tähän hetkeen järjestelmä ei enää reagoi käyttäjän toimiin).

Earlyoom tukee ilmoitusten lähettämistä väkisin lopetetuista prosesseista työpöydälle (käyttäen notify-send) ja tarjoaa myös mahdollisuuden määritellä sääntöjä, joissa säännöllisten lausekkeiden avulla voit määrittää prosessien nimet, jotka halutaan lopettaa ("-- mieluummin" -vaihtoehto) tai lopettaa tulisi välttää (vaihtoehto "--avoid").

Tärkeimmät muutokset uudessa julkaisussa:

  • Toteutettu odottaa prosessin lopettamista signaalin lähettämisen jälkeen. Tämä korjaa ongelman, että earlyoom joskus tappaa useamman kuin yhden prosessin, kun yksi riittää;
  • Lisätty apuohjelma (notify_all_users.py), joka ilmoittaa kaikille kirjautuneille käyttäjille prosessin lopettamisesta ilmoitus-lähetä-ilmoituksilla.
  • Korjattu joidenkin UTF-8-merkkejä sisältävien prosessinimien virheellinen näyttö;
  • Contributor Covenantin käytännesäännöt hyväksytty.

Lähde: linux.org.ru

Lisää kommentti