三、 進程狀態(tài)( 領會 )
1、 進程的 三種基本狀態(tài) .通常,根據進程執(zhí)行過程中不同時刻的狀態(tài),可歸納為三種基本狀態(tài):
。 等待態(tài) :等待某個事件的完成;
。 就緒態(tài) :等待系統(tǒng)分配處理器以便運行;
。 運行態(tài) :占有處理器正在運行。
2、進程的狀態(tài)變化
進程在執(zhí)行中狀態(tài)會不斷地改變,每個進程在任何時刻總是處于上述三種基本狀態(tài)的某一種基本狀態(tài),進程狀態(tài)之間轉換關系如下圖所示:
運行態(tài)→等待態(tài) 往往是由于等待外設,等待主存等資源分配或等待人工干預而引起的。
等待態(tài)→就緒態(tài) 則是等待的條件已滿足,只需分配到處理器后就能運行。
運行態(tài)→就緒態(tài) 不是由于自身原因,而是由外界原因使運行狀態(tài)的進程讓出處理器,這時候就變成就緒態(tài)。例如時間片用完,或有更高優(yōu)先級的進程來搶占處理器等。
就緒態(tài)→運行態(tài) 系統(tǒng)按某種策略選中就緒隊列中的一個進程占用處理器,此時就變成了運行態(tài)。
進程 有 四個基本屬性 :
。多態(tài)性 從誕生、運行,直至消滅。
。多個不同的進程可以包括相同的程序
。三種基本狀態(tài) 它們之間可進行轉換
。并發(fā)性 并發(fā)執(zhí)行的進程輪流占用處理器
四、進程控制塊( 領會 )
1、 進程控制塊 的基本內容。 通常進程控制塊包含四類信息:
。標志信息 含唯一的進程名
。說明信息 有進程狀態(tài)、等待原因、進程程序存放位置和進程數據存放位置
,F場信息 包括通用、控制和程序狀態(tài)字寄存器的內容
。管理信息 存放程序優(yōu)先數和隊列指針
2、 進程控制塊 的作用
進程控制塊(Process Control Block,簡稱PCB),是操作系統(tǒng)為進程分配的用于標志進程,記錄各進程執(zhí)行情況的。進程控制塊是進程存在的標志,它記錄了進程從創(chuàng)建到消亡動態(tài)變化的狀況,進程隊列實際也是進程控制塊的鏈接。操作系統(tǒng)利用進程控制塊對進程進行控制和管理。
進程控制塊的作用有:
(1)記錄進程的有關信息,以便操作系統(tǒng)的進程調度程序對進程進行調度。這些信息包括標志信息、說明信息、現場信息和管理信息等;
(2)標志進程的存在,進程控制塊是進程存在的唯一標志
五、進程隊列( 領會 )
1、 進程隊列 的鏈接。
在多道程序設計的系統(tǒng)中往往會同時創(chuàng)建多個 進程 .在單處理器的情況下,每次只能讓一個進程運行,其他的進程處于就緒狀態(tài)或等待狀態(tài)。為了便于管理,經常把處于相同狀態(tài)的進程鏈接在一起,稱“進程隊列”,由于 進程控制塊 能標志進程的存在和動態(tài)刻畫進程的特性,因此, 進程隊列 可以用 進程控制塊 的連接來形成。鏈接的方式有兩種:單向鏈接和雙向鏈接。
2、 進程基本隊列
就緒隊列 :由若干就緒進程按一定次序鏈接起來的隊列。
等待隊列 :把等待資源或等待某些事件的進程排列的隊列
3、進程的入隊和出隊。
出隊和入隊 :當發(fā)生的某個事件使一個進程的狀態(tài)發(fā)生變化時,這個進程就要退出所在的某個隊列而排入到另一個隊列中去。
出隊 :一個進程從所在的隊列退出的操作稱為出隊
入隊 :一個進程排入到一個指定的隊列的操作稱為入隊。
系統(tǒng)中負責進程入隊和出隊的工作稱為隊列管理。
無論單向鏈接還是雙向鏈接,解決入,出隊問題,都是首先找到該隊列的隊首指針,沿鏈找出要入隊的進程以及它要插入的位置,或找出要出隊的進程,然后修改本進程指針(入隊情況)和相鄰進程的有關指針值即可。
相關推薦:2010年自考數據庫及其應用重點知識講解匯總