Você pode proibir a troca em seu aplicativo chamando mlockall(MCL_CURRENT|MCL_FUTURE)
, consulte a página do manual.
Você pode desativar a supercomprometimento:
$ sysctl vm.overcommit_memory=2 # policy number 2
$ sysctl vm.overcommit_ratio=0 # ratio = 0%
Correr sem swap é geralmente uma idéia terrível. Agora todos os mmaps anônimos serão forçados a serem suportados pela RAM, mesmo que não sejam usados. O Unix precisa de swap, mesmo que nada seja realmente trocado.