1)父進程先於子進程終止: 函數
此種狀況就是咱們前面所用的孤兒進程。當父進程先退出時,系統會讓init進程接管子進程 。
2)子進程先於父進程終止,而父進程又沒有調用wait或waitpid函數 spa
此種狀況子進程進入僵死狀態,而且會一直保持下去直到系統重啓。子進程處於僵死狀態時,內核只保存進程的一些必要信息以備父進程所需。此時子進程始終佔有着資源,同時也減小了系統能夠建立的最大進程數。 進程
僵死狀態:一個已經終止、可是其父進程還沒有對其進行善後處理(獲取終止子進程的有關信息,釋放它仍佔有的資源)的進程被稱爲僵死進程(zombie)。ps命令將僵死進程的狀態打印爲Z 。
3)子進程先於父進程終止,而父進程調用了wait或waitpid函數
此時父進程會等待子進程結束。 資源