Издание на earlyoom 1.3, процес за ранно реагиране при недостиг на памет

След седем месеца разработка беше публикуван издание на фоновия процес earlyoom 1.3, който периодично проверява обема на наличната памет (MemAvailable, SwapFree) и се опитва на ранен етап да реагира на възникваща липса на памет.

Ако обемът на наличната памет е по-малък от зададената стойност, earlyoom принудително (чрез изпращане на SIGTERM или SIGKILL) приключва процеса, който най-интензивно консумира памет (има най-висока стойност в /proc/*/oom_score), без да доведе системата до почистване на системните буфери и пречи на работата по свопинг (обработчикът OOM (Out Of Memory) в ядрото се активира, когато състоянието на недостиг на памет вече е достигнало критични стойности и обикновено в този момент системата вече не реагира на действията на потребителя).

Earlyoom поддържа изпращането на известия за принудително приключени процеси на работния плот (чрез notify-send), а също така предлага възможност за определяне на правила, при които с помощта на регулярни изрази могат да се зададат имена на процеси, чийто завършек е предпочитан (опция "—prefer") или чието спиране следва да се избягва (опция "—avoid").

Основни промени в новото издание:

  • Внедрено е изчакване за завършване на процеса след изпращането на сигнал. Това отстранява проблема, при който earlyoom понякога убива повече от един процес, когато един е достатъчен;
  • Добавен е помощен скрипт (notify_all_users.py) за уведомяване на всички влезли потребители за завършване на процеси чрез notify-send;
  • Коригирано е неправилното изобразяване на някои имена на процеси, съдържащи UTF-8 символи;
  • Приета е кодекс на поведение (Contributor Covenant Code of Conduct).

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster