-
孤兒進程
鎖定
在操作系統領域中,孤兒進程指的是在其父進程執行完成或被終止後仍繼續運行的一類進程。這些孤兒進程將被init進程(進程號為1)所收養,並由init進程對它們完成狀態收集工作。
- 中文名
- 孤兒進程
- 分 類
- 計算機/操作系統
孤兒進程簡介
在類UNIX操作系統中,子進程是通過父進程創建的,子進程再創建新的進程。子進程的結束和父進程的運行是一個異步過程,即父進程永遠無法預測子進程 到底什麼時候結束。當一個父進程由於正常完成工作而退出或由於其他情況被終止,它的一個或多個子進程卻還在運行,那麼那些子進程將成為孤兒進程。為避免孤兒進程退出時無法釋放所佔用的資源而僵死,進程號為1的init進程將會接受這些孤兒進程,這一過程也被稱為“收養”(英語:re-parenting)
[1]
。
孤兒進程孤兒進程與殭屍進程
殭屍進程:一個子進程在其父進程還沒有調用wait()或waitpid()的情況下退出。這個子進程就是殭屍進程。任何一個子進程(init除外)在exit()之後,並非馬上就消失掉,而是留下一個稱為殭屍進程(Zombie)的數據結構,等待父進程處理。這是每個 子進程在結束時都要經過的階段。如果子進程在exit()之後,父進程沒有來得及處理,那麼保留的那段信息就不會釋放,其進程號就會一直被佔用,但是系統所能使用的進程號是有限的,如果大量的產生僵死進程,將因為沒有可用的進程號而導致系統不能產生新的進程. 此即為殭屍進程的危害,應當避免。
- 詞條統計
-
- 瀏覽次數:次
- 編輯次數:2次歷史版本
- 最近更新: 玥玥896