? Um processo zumbi é um processo de computador em um sistema operacional baseado em Unix, que terminou a execução, mas ainda tem um número de identificação do processo esquerda na tabela processo do sistema operacional . São os restos de um processo maior ou programa que não conseguiu coletar e executar todos os comandos de saída para quando o processo termina . Esses processos não ocupam nenhum ciclos de CPU ou espaço de memória embora. Porque
código do programa com defeito , muitas vezes leva a processos não terminar corretamente, resultando em processos de zumbis que surgem na execução de programas. O programador não tiver programado um processo pai para usar a chamada de sistema " espera " para permitir que um processo filho para executar de forma independente , enquanto o pai está suspenso. Isto significa que o processo filho não retorna uma mensagem de status de saída para o pai quando ele termina , assim que o pai nunca recebe notificação sobre a rescisão, eo processo de criança torna-se um processo zumbi.
Considerações
não se apresse para encerrar processos zumbis , logo que você encontrá-los. Às vezes, processos pai deixar processos zumbis de propósito para que o número de identificação mesmo processo não é dado a dois processos separados durante a vida útil do programa. Se você ver apenas alguns processos de zumbis em um momento que não são persistentes , os processos pai pode eventualmente finalizá-las . No entanto, se o seu sistema começa a desacelerar com uma grande quantidade de processos em execução , terminando algum processo zumbi pode melhorar o desempenho.
Localizando Zombies
Usando um ferramenta de comando Unix executar o comando "ps" - abreviação de status do processo - lista todos os processos em execução em um sistema. Qualquer processo listado como " z" na coluna Dados é um processo zumbi. Qualquer um desses processos que existem enquanto o processo pai ou programa ainda está em execução é um indicativo de código falho, enquanto os processos de zumbis correndo sem um programa pai geralmente representam um bug no próprio sistema operacional.
Matar Zombies
processos Zombie reter números de ID de processo na tabela de entrada do processo, para ter muitos deles fazem com que seu sistema fique sem esses números. No entanto, você pode forçar a encerrar processos zumbis para liberar seus valores processo de identificação na tabela. Finaliza -los usando o comando "kill- s SIGCHLD ", onde " ppid " representa o pai zumbi processo de identificação. Alternativamente, você pode forçar a matar processos pai para terminar todas as crianças e os processos de zumbis que criaram também.