孤兒程序:父程序先於子程序結束,則子程序成為孤兒程序,子程序的父程序成為init程序,成為init程序領養孤兒程序。
1. 測試**:
#include #include #include int main(void)
else if(pid > 0)
else if(pid == 0)
return 0;
}
輸出結果:
殭屍程序:程序終止,父程序尚未**,子程序殘留資源(pcb)存放於核心中,變成殭屍程序。ps(1)命令將殭屍程序的狀態列印為z.
**殭屍程序的方法:殺死它的父程序。
特別注意,殭屍程序是不能使用kill命令清楚的,因為kill命令只是用來終止程序的,而殭屍程序已經終止。
1. 測試**:
#include #include #include #include int main(void)
else if(pid > 0)
} else
return 0;
}
輸出結果:
孤兒程序 殭屍程序
殭屍程序和孤兒程序 殭屍程序 殭屍程序是乙個比較特殊的狀態,當程序退出並且父程序沒有讀取到子程序的退出碼,就會產生殭屍程序,殭屍程序會一直儲存在程序表中,並且一直等待父程序讀取退出狀態碼。所以,只要子程序退出,父程序還在執行,但是父程序沒有讀取到子程序的狀態,子程序就會進入殭屍狀態。建立乙個殭屍程序...
殭屍程序, 孤兒程序
一,定義 當程序退出並且父程序 使用wait 系統呼叫 沒有讀取到子程序退出的返回 時就會產生殭屍程序。殭屍程序會以終止狀態保持在程序表中,並且會一直在等待父程序讀取退出狀態 簡單來說就是,在父程序中有乙個子程序,該子程序完成父程序交給的任務,子程序完成後會給父程序乙個任務結果返回,但父程序一直沒有...
殭屍程序 孤兒程序
程序在之前分為3個狀態 1.執行狀態 running 正在cpu中執行的程序。2.就緒狀態 ready 已獲得除了處理器外的所需資源,隨時準備著執行的程序。3.阻塞狀態 blocked 因為缺少除了cpu外的其他資源,無法滿足執行條件的程序。殭屍程序 乙個程序使用fork建立子程序,如果子程序退出,...