linux中的進(jìn)程一般分為哪三類

linux中的進(jìn)程一般分為“交互進(jìn)程”、“批處理進(jìn)程”、“監(jiān)控進(jìn)程”三類。交互進(jìn)程是由一個(gè)Shell啟動(dòng)的進(jìn)程;交互進(jìn)程既可以在前臺(tái)運(yùn)行,也可以在后臺(tái)運(yùn)行。批處理進(jìn)程和終端沒有聯(lián)系,是一個(gè)進(jìn)程序列。監(jiān)控進(jìn)程也稱守護(hù)進(jìn)程,是一個(gè)在后臺(tái)運(yùn)行且不受任何終端控制的特殊進(jìn)程,用于執(zhí)行特定的系統(tǒng)任務(wù)。

linux中的進(jìn)程一般分為哪三類

本教程操作環(huán)境:linux7.3系統(tǒng)、Dell G3電腦。

什么是進(jìn)程

進(jìn)程是正在執(zhí)行的一個(gè)程序或命令,每個(gè)進(jìn)程都是一個(gè)運(yùn)行的實(shí)體,都有自己的地址空間,并占用一定的系統(tǒng)資源。程序一旦運(yùn)行就是進(jìn)程。

進(jìn)程可以看成程序執(zhí)行的一個(gè)實(shí)例。進(jìn)程是系統(tǒng)資源分配的獨(dú)立實(shí)體,每個(gè)進(jìn)程都擁有獨(dú)立的地址空間。一個(gè)進(jìn)程無(wú)法訪問(wèn)另一個(gè)進(jìn)程的變量和數(shù)據(jù)結(jié)構(gòu),如果想讓一個(gè)進(jìn)程訪問(wèn)另一個(gè)進(jìn)程的資源,需要使用進(jìn)程間通信,比如管道,文件,套接字等。

進(jìn)程分類

在Linux操作系統(tǒng)中,進(jìn)程大致可以分為3中不同的類型,每種進(jìn)程都有自己的特點(diǎn)和屬性。

  • 交互進(jìn)程:由一個(gè)Shell啟動(dòng)的進(jìn)程,交互進(jìn)程既可以在前臺(tái)運(yùn)行,也可以在后臺(tái)運(yùn)行。

  • 批處理進(jìn)程:這種進(jìn)程和終端沒有聯(lián)系,是一個(gè)進(jìn)程序列。

  • 監(jiān)控進(jìn)程:也稱守護(hù)進(jìn)程,是一個(gè)在后臺(tái)運(yùn)行且不受任何終端控制的特殊進(jìn)程,用于執(zhí)行特定的系統(tǒng)任務(wù)。

進(jìn)程的組成

一個(gè)進(jìn)程包含內(nèi)核中的一部分地址空間和一系列數(shù)據(jù)結(jié)構(gòu)。其中地址空間是內(nèi)核標(biāo)記的一部分內(nèi)存以供進(jìn)程使用,而數(shù)據(jù)結(jié)構(gòu)則用來(lái)紀(jì)錄每個(gè)進(jìn)程的具體信息。

最主要的進(jìn)程信息包括:

  • 進(jìn)程的地址空間圖

  • 進(jìn)程當(dāng)前的狀態(tài)( sleeping、stopped、runnable 等)

  • 進(jìn)程的執(zhí)行優(yōu)先級(jí)

  • 進(jìn)程調(diào)用的資源信息

  • 進(jìn)程打開的文件和網(wǎng)絡(luò)端口信息

  • 進(jìn)程的信號(hào)掩碼(指明哪種信號(hào)被屏蔽)

  • 進(jìn)程的屬主

進(jìn)程的狀態(tài)

  • 可運(yùn)行狀態(tài):此時(shí)進(jìn)程正在運(yùn)行或者正在運(yùn)行隊(duì)列中等待準(zhǔn)備運(yùn)行
  • 等待狀態(tài)(阻塞狀態(tài)):此時(shí)進(jìn)程在等待一個(gè)事件的發(fā)生或某種系統(tǒng)資源。在Linux系統(tǒng)中等待狀態(tài)又細(xì)分為兩種等待狀態(tài):可中斷的等待狀態(tài)和不可中斷的等待狀態(tài)
    • 可中斷的等待狀態(tài):處于可中斷的等待狀態(tài)的進(jìn)程可以被某一信號(hào)中斷
    • 不可中斷的等待狀態(tài):處于不可中斷的等待狀態(tài)的進(jìn)程不受信號(hào)的打擾,將一直等待事件的發(fā)生或等待某種系統(tǒng)資源
  • 暫停狀態(tài):處于暫停狀態(tài)的進(jìn)程被暫停運(yùn)行
  • 僵死狀態(tài):每個(gè)進(jìn)程在運(yùn)行結(jié)束后都會(huì)處于僵死狀態(tài),等待父進(jìn)程調(diào)用進(jìn)而釋放系統(tǒng)資源,處于該狀態(tài)的進(jìn)程已經(jīng)運(yùn)行結(jié)束,但是它的父進(jìn)程還沒有釋放其系統(tǒng)資源

相關(guān)推薦:《Linux視頻教程

以上就是

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊15 分享