Você pode remover um processo lendo todas as suas páginas de memória.
Normalmente, seria um pouco trabalhoso (ler /proc/…/maps
para saber onde estão as páginas alocadas e, em seguida, ler essas páginas em /proc/…/mem
—browse man proc
para obter mais detalhes), mas felizmente há um programa que já faz isso: gcore
. Seu objetivo é despejar arquivos principais, e no processo gcore
precisa ler toda essa memória. Como não estamos realmente interessados no arquivo principal, podemos apenas pedir para armazená-lo em /dev/null
(os arquivos principais podem ser grandes, portanto, gravá-los em disco seria muito mais lento). Exemplo:
gcore 22382 -o /dev/null