Saiba o que são processos zumbis e como encontrar e matá-los no Linux!

O que são processos zumbis, como encontrar e matá-los no Linux!

Se você é um usuário casual de Linux, você deve ter encontrado o termo ‘Processos Zumbis‘. Saiba que são esses processos zumbies, como eles são criados. E descubra o quanto eles são prejudiciais ao Linux! Além disso, saiba como matar processos estes processos com alguns comandos no Terminal Linux.

Gerenciamento de processos no Linux

Neste artigo você aprendeu um pouco mais sobre os processos no Linux. No entanto, nós temos alguns outros artigos que podem ser de seu interesse.

O que são processos Zumbis no Linux?

Então, todos sabemos como funcionam os processos. Nós abrimos um programa, iniciamos nossa tarefa e, uma vez que nossa tarefa acabou, terminamos esse processo. Uma vez que o processo terminou, ele deve ser removido da tabela de processos.

Mas, às vezes, alguns desses processos permanecem na tabela de processos mesmo após terem concluído a execução. Esses processos que completaram sua vida de execução, mas ainda existem na tabela de processos, são chamados de ‘Processos Zumbis’.

Como os processos Zumbis são criados

Sempre que executamos um programa, ele cria um processo pai e muitos processos filho. Todos esses processos filho usam recursos como memória e CPU atribuídos a eles pelo kernel.

Uma vez que esses processos filho tenham terminado de executar eles enviam uma chamada de saída e morrem. Esta chamada de saída deve ser lida pelo processo pai que mais tarde chama o comando wait para ler o exit_status do processo filho para que o mesmo possa ser removido da tabela de processos.

Se o pai lê a chamada de saída enviada corretamente pelo processo filho, o processo é removido da tabela de processos. Mas, se o pai não lê a chamada de saída do processo filho, o processo filho que já finalizou sua execução e agora está morto não será removido da tabela de processos.

Os processos Zumbis são prejudiciais ao Linux

Não. Uma vez que o processo zumbi não está fazendo nenhum trabalho, nem utilizando recursos ou afetando qualquer outro processo, não há danos em ter um processo zumbi. Mas uma vez que o exit_status e outras informações de processo da tabela de processos são armazenados na RAM, ter muitos processos zumbis às vezes pode ser um problema.

Como encontrar processos zumbis no Linux

Para encontrar processos zumbis na tabela de processos, você pode executar o comando abaixo no seu terminal:

Terminal
ps aux | grep Z

Agora você obterá detalhes de todos os processos zumbis na tabela de processos.

Como matar processo Zumbis no Linux

Normalmente, nós matamos processos com o comando SIGKILL, mas os processos zumbis já estão mortos. Você não pode matar algo que já está morto. Então, podemos usar o comando abaixo:

Terminal
kill -s SIGCHLD pid

Substitua o pid pelo id do processo pai, assim o processo pai removerá todos os processos filho que estão mortos e concluídos.

Muitos programas não estão programados o suficiente para remover esses processos filho, porque se eles estivessem, você não teria aqueles zumbis. Então, a única forma garantida para remover processos zumbis é matando o pai.