Rilascio di earlyoom 1.3, un processo per la risposta anticipata alla memoria insufficiente

Dopo sette mesi di sviluppo pubblicato rilascio del processo in background inizio camera 1.3, che controlla periodicamente la quantità di memoria disponibile (MemAvailable, SwapFree) e cerca di reagire tempestivamente al verificarsi di carenze di memoria.

Se la quantità di memoria disponibile è inferiore al valore specificato, earlyoom terminerà forzatamente (tramite l'invio di SIGTERM o SIGKILL) il processo che consuma memoria più attivamente (con il valore /proc/*/oom_score più alto), senza riportare lo stato del sistema a svuotare i buffer di sistema e interferire con lo scambio di lavoro (il gestore OOM (Out Of Memory) nel kernel viene attivato quando lo stato di memoria esaurita ha già raggiunto valori critici​​e solitamente a questo punto il sistema non risponde più alle azioni dell'utente).

Earlyoom supporta l'invio di notifiche al desktop di processi terminati forzatamente (utilizzando notify-send) e offre anche la possibilità di definire regole in cui, utilizzando espressioni regolari, è possibile specificare i nomi dei processi che si preferisce terminare (opzione "- -prefer") o fermati dovrebbero essere evitati (opzione "--avoid").

Principali modifiche nella nuova versione:

  • Implementata l'attesa del completamento di un processo dopo avergli inviato un segnale. Ciò elimina il problema che earlyoom a volte uccide più di un processo quando uno sarebbe sufficiente;
  • Aggiunto uno script ausiliario (notify_all_users.py) per avvisare tutti gli utenti registrati del completamento dei processi tramite notify-send;
  • Risolta la visualizzazione errata di alcuni nomi di processi contenenti caratteri UTF-8;
  • È stato adottato il Codice di condotta del Contributor Covenant.

Fonte: opennet.ru

Aggiungi un commento