Linux 父子进程终止的先后顺序不同产生不同的后果

1)父进程先于子进程终止:

此种情况就是我们前面所用的孤儿进程。当父进程先退出时,系统会让init进程接管子进程 。
2)子进程先于父进程终止,而父进程又没有调用wait或waitpid函数

此种情况子进程进入僵死状态,并且会一直保持下去直到系统重启。子进程处于僵死状态时,内核只保存进程的一些必要信息以备父进程所需。此时子进程始终占有着资源,同时也减少了系统可以创建的最大进程数。

僵死状态:一个已经终止、但是其父进程尚未对其进行善后处理(获取终止子进程的有关信息,释放它仍占有的资源)的进程被称为僵死进程(zombie)。ps命令将僵死进程的状态打印为Z 。
3)子进程先于父进程终止,而父进程调用了wait或waitpid函数
此时父进程会等待子进程结束。

你可能感兴趣的:(Linux 父子进程终止的先后顺序不同产生不同的后果)