FCFS,SSTF,SCAN,FIFO,LRO考點題解


 


四、應用題 ( 本大題共5 小題,50 分 )

1. 假設某系統中有五個進程,每個進程的執行時間(單位:ms)和優先數如下表所示(優先數越小,其優先級越高)。

進程

執行時間

優先數

   P1

   P2

   P3

   P4

   P5

10

1

2

1

5

   3

   1

   5

   4

   2

 

 

 

 

 

 

 

如果在0時刻,各進程按P1、P2、P3、P4、P5的順序同時到達,請回答以下問題:(12分)

(1)當系統采用先來先服務調度算法時:

進程執行順序是      p1 p2 p3 p4 p5      平均周轉時間是  13.4ms    


 

 


(2)當系統采用高優先級優先調度算法時:

進程執行順序是     p2 p5 p1 p4 p3    平均周轉時間是        11.8ms       

 


 


 

 (3)當系統采用時間片輪轉法時

進程執行順序是   p1、p2、p3、p4、p5、p1、p3、p5、p1、p5、p1、p5、p1、p5、 p1  平均周轉時間是      9.2ms  

 


 


2.在一個段式存儲管理系統中,其段表如下表所示:

段號

內存起始地址

段長

 0

 1

 2

 3

 4

   210

   2350

   100

   1350

1938

 500

 20

90

590

95

請將下列邏輯地址所對應的物理地址填入下表中(10分):

段號

段內位移

物理地址

  0

  430

 640

  1

  10

 2360

  2

  500

 段長越界

  3

  400

 1750

  5

  32

 段號越界

 

 


解析:

0段號內存起始地址為210,段內位移430<段長500,說明段長沒有越界,所以物理地址為210+430=640

1段號內存起始地址為2350,段內位移10<段長20,說明段長沒有越界,所以物理地址為2350+10=2360

2段號內存起始地址為100,段內位移500>段長90,說明段長越界。

3段號內存起始地址為1350,段內位移400<段長590,說明段長沒有越界,所以物理地址為1350+400=1750

由於段表中沒有5段號,所以段號5段號越界。

 

 


 3.設某移動頭磁盤有200道,編號為0~199,磁頭剛從143道完成了讀寫,且正向磁道號增加方向移動,對於如下訪盤請求序列(磁道號):

       86,147,91,177,94,150,102,175,130

請回答以下問題:(12分)

(1)在FCFS調度算法下的磁頭移動順序為 143,86,147,91,177,94,150,102,175,130   ;磁頭移動的總距離為565

 


解析:

百度百科

FCFS(First Come First Served )先來先服務,英語諺語。在計算機領域中,有時被用以描述數據結構中的隊列性質,類似於FIFO(先進先出)。

任務

在計算機並行任務處理中,被視為最簡單的任務排序策略,即是無論任務大小和所需完成時間,對先到的任務先處理,后到的任務后處理。它是一種非搶占式策略。

FCFS:先來先服務調度算法。

磁頭剛從143道完成了讀寫,如下訪盤請求序列(磁道號):

 

       86,147,91,177,94,150,102,175,130

那么按照FSFS算法讀取順序為:

 

      143, 86,147,91,177,94,150,102,175,130

 那么 讀取86時磁頭移動距離為:  143-86=57

           讀取147時磁頭移動距離為:147-86=61

           讀取91時磁頭移動距離為:  147-91=56

           讀取177時磁頭移動距離為:177-91=86

           讀取94時磁頭移動距離為:   177-94=83

           讀取150時磁頭移動距離為: 150-94=56

           讀取102時磁頭移動距離為: 150-102=48

          讀取175時磁頭移動距離為:  175-102=73

          讀取130時磁頭移動距離為:  175-130=45

因此,磁頭移動的總距離為57+61+56+86+83+56+48+73+45=565

 


(2)在SSTF調度算法下的磁頭移動順序為  143,147,150,130,102,94,91,86,175,177                                ;磁頭移動的總距離為     162     

*******************************************************

解析:

百度百科

SSTF

最短尋道時間優先(ShortestSeekTimeFirst,SSTF)
 
該算法選擇這樣的進程,其要求訪問的磁道與當前磁頭所在的磁道距離最近,以使每次的尋道時間最短,但這種調度算法卻不能保證平均尋道時間最短。SSTF算法的平均每次磁頭移動距離,明顯低於FCFS的距離。SSTF較之FCFS有更好的尋道性能,故過去一度被廣泛采用過。
 

SSTF:最短尋道時間優先調度算法。

0  86  91  94  102  130  143  147  150  175  177


 磁頭剛從143道完成了讀寫,如下訪盤請求序列(磁道號):

       86,147,91,177,94,150,102,175,130

那么按照當處於143道時,查找最短尋道時間。

143-130=13>4=147-143

所以下一個最短尋道時間訪問的應該是147。

這時訪問磁道順序為143,147

同理,147-130=17>3=150-147

 這時訪問磁道順序為143,147,150

175-150=25>20=150-130

這時訪問磁道順序為143,147,150,130

130-102=28<45=175-130

這時訪問磁道順序為143,147,150,130,102

依次類推,最后訪問磁道順序為:

143,147,150,130,102,94,91,86,175,177

訪問147磁道距離:147-143=4

訪問150磁道距離:150-147=3

訪問130磁道距離:150-130=20

訪問102磁道距離:130-102=28

訪問94磁道距離:102-94=8

訪問91磁道距離:94-91=3

訪問86磁道距離:91-86=5

訪問175磁道距離:175-86=89

訪問177磁道距離:177-175=2

因此,磁頭移動總距離為:4+3+20+28+8+3+5+89+2=162


 

(3)在SCAN調度算法下的磁頭移動順序為   143,147,150,175,177,130,102,94,91,86  ;磁頭移動的總距離為  125         

 


 解析:

百度百科

SCAN:掃描調度算法(又稱電梯調度算法)是計算機磁盤驅動調度的一種方法。

實現方法:

                    掃描算法(SCAN)不僅考慮到欲訪問的磁道與當前磁道的距離,更優先考慮的是磁頭的當前移動方向。當磁頭正在由里向外移動時,SCAN算法所選擇的下一 個訪問對象應是其欲訪問的磁道,既在當前磁道之外,又是距離最近的。這樣由里向外地訪問,直至再無更外的磁道需要訪問時,才將磁臂換向,由外向里移動。這 時,同樣也是每次選擇在當前磁道之內,且距離最近的進程來調度。

SCAN:掃描算法(SCAN)不僅考慮到欲訪問的磁道與當前磁道的距離,更優先考慮的是磁頭的當前移動方向。

0  86  91  94  102  130  143——> 147  150  175  177

 


 當處於143道時,優先考慮的是磁頭的當前移動方向

所以訪問時磁頭當前移動的方向優先,即

143——>147——>150——>175——>177

當磁頭訪問到177時,已經沒有了更外的磁道需要訪問,這時磁臂換向,然后由外向里移動。


因此,采用SCAN調度算法磁頭移動順序為:

143——>147——>150——>175——>177——>130——>102——>94——>91——>86

訪問147磁道距離:147-143=4

訪問150磁道距離:150-147=3

訪問175磁道距離:175-150=25

訪問177磁道距離:177-175=2

訪問130磁道距離:177-130=47

訪問102磁道距離:130-102=28

訪問94磁道距離:  102-94=8

訪問91磁道距離:94-91=3

訪問86磁道距離:91-86=5

因此,磁頭移動總距離:4+3+25+2+47+28+8+3+5=125

 

 


 

4.設系統分配給某作業4個頁幀使用,執行時的頁面走向為:

                     1,2,3,6,4,7,3,2,1,4,7,5,6,5,2,1

請回答以下問題:(10分)

(1)采用FIFO頁面置換算法時:

淘汰頁面的順序為      1,2,3,6,4,7     

缺頁中斷次數為      10    

 


 

解析:

FIFO:先進先出頁面置換算法。

算法實現:總是淘汰最先進入內存的頁面,即選擇在內存中駐留時間最久的頁面進行淘汰。

由上圖可知,淘汰順序為:1,2,3,6,4,7

缺頁次數為:10次。

 

 


 

(2)采用LRU頁面置換算法時:

淘汰頁面的順序為  1,2,6,4,7,3,2,1,4, 7                                      

缺頁中斷次數為     14     

 


 

 解析:

LRU頁面置換算法:最近最久未使用LRU頁面置換算法,是根據頁面調入內存后的使用情況進行決策的。

算法的實現:選擇最近最久未使用的頁面予以淘汰。

由於LRU算法淘汰的是上次使用距離t時刻最遠的頁,故需記錄這個距離。


 

5.一系統具有150個存儲單元,在T0時刻系統按下表所示分配給3個進程。

    進程

最大需求

已分配

  P1

  P2

  P3

70

60

60

25

40

45

對下列請求應用銀行家算法分別分析判定是否安全?(6分)

(1)第4個進程P4到達,最大需求60個存儲單元,當前請求分配25個單元。試問,若系統接受該請求,處於安全狀態嗎?

 答:一系統具有150個存儲單元,在T0時刻系統按下表所示分配給3個進程,分配第四個進程25個單元。

那么四個進程分配完畢后,剩下可分配存儲單元數為:150-25-40-45-25=15個存儲單元。

p1還需要分配存儲單元數目:70-25=45

p2還需要分配存儲單元數目:60-40=20

p3還需要分配存儲單元數目:60-45=15

p4還需要分配存儲單元數目:60-25=35

此時,系統只剩下存儲單元15個,能滿足的只有進程p3。

所以系統將剩下全部15個存儲單元分配給進程p3,進程p3完成后可以回收45個存儲單元。

此時系統剩余可分配存儲單元為60個,可以滿足進程p1,p2,p4任意一個。(所以結果不唯一)

假設我們選擇進程p2,那么分配給進程p2存儲單元20個,進程p2執行完成,回收存儲單元40。

此時系統剩余可分配存儲單元60+40=100個,進程p1和進程p4都可以滿足。

假設我們選擇進程p1,那么分配給進程p1存儲單元45個,進程p2執行完成,回收存儲單元25。

此時系統剩余可分配存儲單元100+25=125

最后選擇進程p4,分配給進程p4存儲單元35個,回收存儲單元25.

由上可知,當執行順序為p3——>p2——>p1——>p4時,可以滿足所有進程。

所以是安全狀態。

(2)第4個進程P4到達,最大需求50個存儲單元,當前請求分配35個單元。試問,若系統接受該請求,處於安全狀態嗎?

 答:一系統具有150個存儲單元,在T0時刻系統按下表所示分配給3個進程,再分配第四個進程35個單元。

那么四個進程分配完畢后,剩下可分配存儲單元數為:150-25-40-45-35=5個存儲單元。

 

p1還需要分配存儲單元數目:70-25=45

 

p2還需要分配存儲單元數目:60-40=20

 

p3還需要分配存儲單元數目:60-45=15

 

p4還需要分配存儲單元數目:50-35=15

所剩下的存儲單元5個不足以滿足任何一個進程,因此找不到一個安全序列,所以為不安全狀態。

 


卷B

二、填空題

4.假設某程序的頁面訪問序列為1、2、3、4、5、2、3、1、2、3、4、5、1、2、3、4且開始執行時主存中沒有硬骨頭同,則在分配給該程序的物理塊數是3且采用FIFO方式時缺頁次數是__13   ___;在分配給程序的物理塊數是4且采用FIFO方式時,缺頁次數是___ 14 ___.在分配給該程序的熱處理塊數是3且用LRU方式時,缺頁次數是_  _14___.在分配給該程序的物理塊數為4且采用LRU方式是,缺頁次數是___12_  ___.

 

 


 

 

 


 

最近復習操作系統准備期末,找的經典題目,自己寫的題解。

文中有些內容為了保留原來整齊排版格式,使用了圖片截圖。

交流即分享,分享才能進步!

不足之處,還請各位前輩多多指教。

 


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com