É possível que o sistema troque preventivamente páginas inativas ( vm.swappiness
), mas invoque o oom-killer quando o sistema ficar sem memória RAM (em vez de ficar sem memória) e forçado a trocar?
O objetivo final é impedir que o sistema seja interrompido quando ele começar a danificar o disco devido a falhas importantes nas páginas, mas ainda assim permitir que as páginas inativas sejam trocadas.
Outro desejo seria configurar quanta memória de troca o sistema é forçado a usar antes que o oom-killer seja acionado. Dessa forma, o sistema pode entrar em swap um pouco, desde que não vá muito longe. Ou eu poderia definir esse limite para acionar oom-killer antes de usar toda a RAM, para que sempre haja espaço para o cache do sistema de arquivos (e, assim, evite mais trocas de disco).
Não parece que isso seria difícil de fazer. Parece que você poderia simplesmente dizer ao oom-killer para disparar quando o sistema tiver o X ram usado / livre. Mas é por isso que estou perguntando; Eu não sei.
Para esclarecimento, não pretendo desativar a troca ou ajustar o vm.swappiness
parâmetro