Se ha lanzado el gestor de escasez de memoria earlyoom 1.4

Después de ocho meses de desarrollo publicado se lanza el proceso en segundo plano earlyoom 1.4, que verifica periódicamente la cantidad de memoria disponible (MemAvailable, SwapFree) y trata de reaccionar anticipadamente ante la falta de memoria. El código del proyecto está escrito en C y se distribuye está bajo la licencia MIT.

Si la cantidad de memoria disponible es menor que un valor establecido, earlyoom finalizará forzosamente (mediante el envío de SIGTERM o SIGKILL) el proceso que más memoria consume (que tenga el mayor valor en /proc/*/oom_score), sin dejar que el estado del sistema alcance la limpieza de los buffers y que interfiera con el funcionamiento del intercambio (el manejador OOM (Out Of Memory) en el núcleo se activa cuando el estado de falta de memoria ya ha alcanzado niveles críticos y, por lo general, en ese momento el sistema ya no responde a las acciones del usuario).

Earlyoom admite el envío de notificaciones sobre procesos finalizados forzosamente en el escritorio (mediante notify-send), y también brinda la posibilidad de definir reglas en las que, mediante expresiones regulares, se pueden especificar nombres de procesos cuyo finalización es preferible (opción “—prefer”) o cuyas detenciones se deben evitar (opción “—avoid”).

Principales cambios en este nuevo lanzamiento:

  • Gracias a carga diferida los atributos de los procesos, la lógica de selección de procesos para terminar se ha acelerado en un 50%;
  • Se garantiza que se registre en el log el UID del proceso terminado, además del PID y el nombre del proceso;
  • Se ha añadido un resaltado del log de depuración en color gris claro;
  • Se ha realizado una limpieza del código;
  • Se ha utilizado la declaración de variables locales en bloques siempre que ha sido posible;
  • Se ha añadido una configuración PATH_LEN para reemplazar el valor de tamaño del búfer incrustado en el código;
  • Se garantiza la ejecución de cppcheck si está disponible;
  • Se ha añadido una prueba de rendimiento 'make bench';
  • Ampliado el conjunto de pruebas (make test);
  • Se ha implementado el restablecimiento de privilegios de root en el archivo de unidad systemd earlyoom.service. Este cambio rompe posibilita notificaciones GUI. Para habilitar las notificaciones GUI, se sugiere restaurar los derechos de root descomentando 'DynamicUser=true'. La desactivación de root también presenta lleva a la imposibilidad de obtener información sobre el consumo de memoria al montar /proc en modo hidepid=1 o hidepid=2.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster