區別之守護程序 孤兒程序 殭屍程序

2021-06-23 03:34:11 字數 411 閱讀 4167

殭屍程序是 乙個程序使用fork建立子程序,如果子程序退出,而父程序並沒有呼叫wait或waitpid獲取子程序的狀態資訊,那麼子程序的程序描述符仍然儲存在系統中。這種程序稱之為僵死程序。

孤兒程序是因為父程序異常結束了,然後被1號程序init收養。

守護程序是建立守護程序時有意把父程序結束,然後被1號程序init收養

區分:乙個正常執行的子程序,如果此刻子程序退出,父程序沒有及時呼叫wait或waitpid收回子程序的系統資源,該程序就是殭屍程序,如果系統收回了,就是正常退出,如果乙個正常執行的子程序,父程序退出了但是子程序還在,該程序此刻是孤兒程序,被init收養,如果父程序是故意被殺掉,子程序做相應處理後就是守護程序

孤兒程序 殭屍程序 守護程序

1.孤兒程序 如果父程序先退出,子程序還沒退出,那麼子程序將被託孤給init程序 1號程序 這時子程序的父程序就是init程序 1號程序 其實還是很好理解的.2.殭屍程序 如果我們了解過linux程序狀態及轉換關係,我們應該知道程序這麼多狀態中有一種狀態是僵死狀態,就是程序終止後進入僵死狀態 zom...

程序特例 殭屍程序 孤兒程序 守護程序

殭屍程序 子程序結束,父程序尚未呼叫wait 子程序資源,子程序的pcb還殘留在核心,造成資源的浪費 孤兒程序 父程序先於子程序結束,子程序成為孤兒程序,子程序修改pcb使其父程序為init程序,孤兒程序結束後,由init程序負責 其pcb資源 守護程序 daemon process 是linux中...

Linux 殭屍程序 孤兒程序 守護程序簡介

linux程序簡介 pid t fork void pid t 在linux中被定義為 int 示例 include include include intmain printf father process.d n i 兩次執行這條print,i值不同,因為已經有了不同的位址空間。return0 ...