Sobes.tech
Middle

Qual é a diferença entre um processo órfão e um processo zumbi?

sobes.tech IA

Resposta da IA

Processo órfão (Orphan Process) — é um processo cujo processo pai terminou antes que o processo filho concluísse a sua execução. O processo de inicialização (init, PID 1) adota automaticamente o órfão e torna-se seu novo pai para posterior libertação de recursos.

Processo zumbi (Zombie Process) — é um processo que terminou a sua execução, mas a sua entrada na tabela de processos do núcleo (PCB) ainda não foi removida, pois o processo pai não chamou a chamada do sistema wait() ou waitpid() para recolher o estado de finalização do processo filho. Tal processo não consome recursos de CPU, mas ocupa espaço na tabela de processos.

Comparação:

Característica Processo órfão Processo zumbi
Estado Em execução (ou aguardando execução) Finalizado
Pai O pai original terminou, o novo pai é init (PID 1). O pai existe, mas não chamou wait().
Recursos CPU Consome recursos de CPU para realizar a sua tarefa. Não consome recursos de CPU.
Lugar na tabela Ocupa espaço na tabela de processos como um processo em execução normal. Ocupa espaço na tabela de processos até que o seu estado seja lido pelo pai.
Remoção Será finalizado e limpo pelo sistema operativo após terminar. Permanece na tabela de processos até que o pai chame wait() ou até que o pai termine (neste caso, torna-se órfão init e será limpo).