Почему существуют зомби-процессы?

Википедия говорит "Дочерний процесс, который завершается, но его родитель никогда не ожидает, становится процессом зомби ». Я запускаю эту программу:

#include 
#include 
#include 
int main()
{
    pid_t pid, ppid;
    printf("Hello World1\n");
    pid=fork();
    if(pid==0)
    {
        exit(0);    
    }
    else
    {
        while(1)
        {
        printf("I am the parent\n");
        printf("The PID of parent is %d\n",getpid());
        printf("The PID of parent of parent is %d\n",getppid());        
        sleep(2);
        }
    }
}

Это создает процесс зомби, но я могуне понимаю, почему зомби-процесс создается здесь?

Выход программы

Hello World1
I am the parent
The PID of parent is 3267
The PID of parent of parent is 2456
I am the parent
The PID of parent is 3267
The PID of parent of parent is 2456
I am the parent
....
.....

Но почему "дочерний процесс завершается, но его родитель не ожидает в этом случае?

Ответы на вопрос(1)

Ваш ответ на вопрос