Wydanie Earlyoom 1.3, procesu wczesnej reakcji na brak pamięci

Po siedmiu miesiącach rozwoju opublikowany zwolnienie procesu w tle wczesna pora 1.3, który okresowo sprawdza ilość dostępnej pamięci (MemAvailable, SwapFree) i stara się reagować na wczesnym etapie w przypadku wystąpienia braków pamięci.

Jeśli ilość dostępnej pamięci jest mniejsza niż określona wartość, to Earlyoom wymusi (wysyłając SIGTERM lub SIGKILL) zakończenie procesu najbardziej aktywnie zużywającego pamięć (posiadającego najwyższą wartość /proc/*/oom_score), bez przywracania stanu systemu do czyszczenia buforów systemowych i ingerowania w zamianę pracy (funkcja obsługi OOM (Out Of Memory) w jądrze jest uruchamiana, gdy stan out-of-memory osiągnął już wartości krytyczne i zwykle do tego momentu system już nie odpowiada do działań użytkownika).

Earlyoom obsługuje wysyłanie powiadomień o wymuszonym zakończeniu procesów na pulpit (za pomocą notify-send), a także zapewnia możliwość definiowania reguł, w których za pomocą wyrażeń regularnych można określić nazwy procesów, które preferowane są do zakończenia (opcja „- -prefer”) lub zatrzymane należy unikać (opcja „--avoid”).

Główne zmiany w nowej wersji:

  • Zaimplementowano oczekiwanie na zakończenie procesu po wysłaniu do niego sygnału. Eliminuje to problem polegający na tym, że Earlyoom czasami zabija więcej niż jeden proces, jeśli wystarczy jeden;
  • Dodano pomocniczy skrypt (notify_all_users.py) powiadamiający wszystkich zalogowanych użytkowników o zakończeniu procesów poprzez notify-send;
  • Naprawiono nieprawidłowe wyświetlanie niektórych nazw procesów zawierających znaki UTF-8;
  • Kodeks postępowania Porozumienia Współtwórców został przyjęty.

Źródło: opennet.ru

Dodaj komentarz