處理程序

實際在電腦上執行的程式或指令,稱為處理程序

處理程序存在於親子階層中。 由程式或指令所啟動的處理程序稱為上代程序子處理程序是上代程序的產品。一個上代程序可以有數個子處理程序,但一個子處理程序只能有一個上代程序。

系統會於每一個處理程序啟動時,指派一個處理程序 ID(PID 號碼)。如果您啟動相同的程式數次,則該程式每一次都具有不同的 PID 號碼。

當系統上啟動一個處理程序時,該程序會使用部分可用的系統資源。執行一個以上的處理程序時,會在作業系統中建立一個排程程式,以基於已建立的優先順序來提供電腦的時間配額給每一個程序。可以使用 nicerenice 指令來改變這些優先順序。

註: 若要將處理程序的優先順序變高,您必須具有 root 使用者權限。所有的使用者都可以使用 nice 指令,降低所要啟動之處理程序的優先順序,或是使用 renice 指令,降低已啟動之處理程序的優先順序。

下列清單說明處理程序的類型:

前端與背景處理程序

需要使用者來啟動或與其互動的處理程序,就叫做前景處理程序。不需使用者介入執行的處理程序則稱為背景處理程序。依預設值而言,程式和指令是以前景處理程序的形式來執行。如果要在後端中執行處理程序,請在您用來啟動處理程序的指令名稱尾端加上一個 &。

常駐程式處理程序

常駐程式是無人式執行的處理程序。它持續存在後端中,並且隨時可用。常駐程式通常會在系統啟動時開始執行,並於系統停止時結束。一般來說,常駐程式處理程序執行系統服務,並且隨時可供一個以上的工作或使用者來使用。常駐程式處理程序是由 root 使用者或 root shell來啟動,並且只能由 root 使用者來停止。例如,qdaemon 處理程序提供對系統資源(例如印表機)的存取權限。另一個常見的常駐程式是 sendmail 常駐程式。

休眠程序

休眠程序是不再執行的停用處理程序,但仍在處理程序表格中仍可辨識(換句話說,其有 PID 號碼)。沒有任何系統空間配置給它。休眠程序已被刪除或已結束,並且繼續存在於處理程序表格中,直到上代程序消失或系統關機並重新啟動為止。使用 ps 指令列出時,修眠程序會顯示成 <defunct>