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

2021-09-22 19:35:29 字數 551 閱讀 3133

1.孤兒程序

如果父程序先退出,子程序還沒退出,那麼子程序將被託孤給init程序(1號程序),這時子程序的父程序就是init程序(1號程序).其實還是很好理解的.

2.殭屍程序

如果我們了解過linux程序狀態及轉換關係,我們應該知道程序這麼多狀態中有一種狀態是僵死狀態,就是程序終止後進入僵死狀態(zombie),等待告知父程序自己終止後才能完全消失.但是如果乙個程序已經終止了,但是其父程序還沒有獲取其狀態,那麼這個程序就稱之為殭屍程序.殭屍程序還會消耗一定的系統資源,並且還保留一些概要資訊供父程序查詢子程序的狀態,可以提供父程序想要的資訊.一旦父程序得到想要的資訊,殭屍程序就會結束.

3.守護程序

同樣我們需要了解一下什麼是守護程序,守護程序就是在後台執行,不與任何終端關聯的程序,通常情況下守護程序在系統啟動時就在執行,它們以root使用者或者其他特殊使用者(apache和postfix)執行,並能處理一些系統級的任務.習慣上守護程序的名字通常以d結尾(sshd),但這些不是必須的.

參考:

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

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

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

殭屍程序是 乙個程序使用fork建立子程序,如果子程序退出,而父程序並沒有呼叫wait或waitpid獲取子程序的狀態資訊,那麼子程序的程序描述符仍然儲存在系統中。這種程序稱之為僵死程序。孤兒程序是因為父程序異常結束了,然後被1號程序init收養。守護程序是建立守護程序時有意把父程序結束,然後被1號...

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

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