Lançamento do processador de falta de memória earlyoom 1.4

Após oito meses de desenvolvimento foi publicado lançamento do processo em segundo plano earlyoom 1.4, que verifica periodicamente a quantidade de memória disponível (MemAvailable, SwapFree) e tenta reagir nas fases iniciais à falta de memória. O código do projeto foi escrito na linguagem C e é distribuído está sob a licença MIT.

Se a quantidade de memória disponível for menor do que o valor definido, o earlyoom encerrará forçadamente (enviando SIGTERM ou SIGKILL) o processo que consome mais memória (com o maior valor em /proc/*/oom_score), sem deixar o sistema em estado de limpeza de buffers e atrapalhando o funcionamento da troca (o manipulador OOM (Out Of Memory) no núcleo é acionado quando a situação de falta de memória atinge valores críticos e, geralmente, nesse ponto o sistema já não responde às ações do usuário).

Earlyoom suporta o envio de notificações sobre processos encerrados forçadamente para a área de trabalho (por meio de notify-send), e também fornece a possibilidade de definir regras, nas quais, utilizando expressões regulares, podem ser especificados nomes de processos cujo encerramento é preferível (opção "—prefer") ou dos quais deve-se evitar a interrupção (opção "—avoid").

Principais mudanças na nova versão:

  • Devido a carregamento sob demanda a lógica de seleção de processos para terminar foi acelerada em 50%;
  • O UID do processo finalizado é registrado no log, além do PID e do nome do processo;
  • Acrescentada a coloração do log de depuração em cinza claro;
  • Limpeza de código realizada;
  • Sempre que possível, foi usado a declaração de variáveis locais para os blocos;
  • Acrescentada a configuração PATH_LEN para substituir o valor do tamanho do buffer embutido no código;
  • Garantido a execução do cppcheck quando disponível;
  • Adicionado teste de desempenho 'make bench';
  • Conjunto de testes expandido (make test);
  • Foi implementado o reset de privilégios root no arquivo unit do systemd earlyoom.service. Esta mudança quebra possibilita notificações GUI. Para habilitar as notificações GUI, sugere-se restaurar os direitos de root descomentando 'DynamicUser=true'. A desativação do root também resulta impede a obtenção de informações sobre o consumo de memória ao montar /proc no modo hidepid=1 ou hidepid=2.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster