sexta-feira, 8 de maio de 2009

Processos Zombies

Um processo zombie é aquele processo filho que morreu sem o pai saber. Foi utilizado o seguinte código para gerar vários processos zombie:

#include <stdio.h>

int
main(){

char
msg[100];
int
id=1;
int
count=0;

while
(id && count<10){
id=fork();
count++;
}


if
(!id){
sprintf(msg,"kill %i",getpid());
system(msg);
}
else{

while
(1){
sleep(1);
system("ps -es");
}
}


return
0;
}


O que acontece no código?

Primeiramente são criados diversos processos filhos. Em seguida eles se suicidam com a chamada de kill para o próprio process id. Abaixo está a saída do programa:

Nenhum comentário:

Postar um comentário

Seguidores