Release of earlyoom 1.3, a process for early response to low memory

After seven months of development published background process release earlyroom 1.3, which periodically checks the amount of available memory (MemAvailable, SwapFree) and tries to respond early to the occurrence of low memory.

If the amount of available memory is less than the specified value, then earlyoom will forcibly (by sending SIGTERM or SIGKILL) terminate the process that consumes memory most actively (having the highest /proc/*/oom_score value), without bringing the system state to clearing system buffers and interfering with work swapping (the OOM (Out Of Memory) handler in the kernel is triggered when the out-of-memory state has already reached critical values ​​​​and usually by this moment the system no longer responds to user actions).

Earlyoom supports sending notifications of forcibly terminated processes to the desktop (using notify-send), and also provides the ability to define rules in which, using regular expressions, you can specify the names of processes that are preferred to be terminated (option "--prefer") or stopped should be avoided (option "-avoid").

Main changes in the new release:

  • Implemented waiting for process termination after sending it a signal. This fixes the problem that earlyoom sometimes kills more than one process when one is enough;
  • Added helper script (notify_all_users.py) to notify all logged in users about termination of processes via notify-send;
  • Fixed incorrect display of some process names containing UTF-8 characters;
  • Contributor Covenant Code of Conduct adopted.

Source: opennet.ru

Add a comment