processo defunto - é sempre um processo filho?

0

ler sobre o que é um processo extinto diz que é um processo filho que, quando termina / termina, não é apropriadamente manipulado / morto por seu pai.

mas visualizando a saída abaixo

servera> ps -ef | grep defun
cyberark  4036     1   0        - ?           0:00 <defunct>
 oracle  4562  4539   0 09:29:17 pts/3       0:00 grep defun
servera> ptree 4036
4036  <defunct>
  4043  -sh
    4051  passwd root

parece que o processo extinto 4036 é o processo pai na ptree?

    
por Noob 14.08.2015 / 13:06

2 respostas

3

Um processo extinto (zumbi) é um processo que terminou, mas seu processo pai ainda não fez uma espera * () nele. Se o processo pai for finalizado antes do processo filho, o processo filho é re-criado para o init (pid 1), e o init executa o wait * () quando ele morrer. Portanto, todo processo defunto é muito filho de algum processo não-init.

    
por 14.08.2015 / 16:25
2

O PID 4036 não é a raiz da árvore de processos; PID 1. Você pediu a subtree com 4036 na raiz, então é claro que você não vê seu pai. Mas tem um. Todo processo tem um pai, exceto PID 1.

    
por 14.08.2015 / 14:48

Tags