操作系統學習(五)

  處理機調度與死鎖

1:調度:一種資源的分配,處理機調度對資源進行分配,作業從提交到獲得處理機執行。

2 調度層級

(1)   高級調度(作業調度)-》作業 根據調度算法從外存的後備隊列調入就緒隊列——》內存,然後創建進程,分配資源,放入就緒隊列。

(2)   低級調度(進程調度)。

(3)   中級調度(內存調度)——》提高內存的利用率,將暫時不能運行的進程

調入外存等待。

3 調度算法的目標:(1)資源利用率 (2)公平性(不會發生進程飢餓現象)

(4)   平衡性(系統資源使用的平衡性)(4)策略強制執行

4:批處理系統目標

(1)   平均週轉時間最短(週轉時間=在外存的等待時間+進程就緒隊列的等待時間+cpu的執行時間,I/O操作完成的時間)。

平均週轉時間=週轉時間/完成時間

 

 

(2)系統吞吐量:單位時間內完成作業的數量。

(3)處理機利用率高。

5:分時系統:響應時間快,均衡性。

6:實時系統的目標:截止時間的保證,可預測性。

 

 

調度算法

1:先來先服務(frist-come-frist-served FCFS)調度算法

按照作業到達的順序來調度(優先考慮作業在系統中等待的時間)。

2:短作業優先(short job frist SJB)的調度算法

按照作業執行的時間作爲優先級。

3:優先級調度算法(PSA)

高響應比調度算法:

Rp=(當前時間-等待時間)/運行時間+1;

 

4:進程調度任務:(1)保存處理機的現場信息  (2)按照某種算法選取進程

(2)   把處理機分配給進程。

:5:進程調度機制:(1)排隊器:將系統中所有就緒進程根據算法排成一隊

(3)   分派器(3)上下文切換器

 

6:進程調度方式

(1)   非搶佔式;一旦處理機分配給某個進程,就讓他一直運行(不會因爲時鐘中斷,任何其他原因去搶佔當前運行進程的處理機)

(2)   搶佔式:允許調度程序根據某種算法(優先級),去暫停某個正在執行的進程,重新分配給另一個進程。

7:RR輪轉調度算法:就是三個進程輪流佔用一個時間片。

基本原理:首先根據FCFS策略排成一個就緒隊列,設置每間隔一定時間產生一次中斷,完成一次調度,然後激活系統中的進程調度,把CPU分配給隊首。

 

時間片爲 1 :q=1  表示每次只給這個進程佔用1秒的時間,然後在根據隊列選擇進程。

0秒的時候A到達,A進入隊首,先運行一秒,A運行1個時間片後,B到達,B插入隊列,由於此時A沒有運行完,則插入隊列。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章