1. 程式人生 > >作業系統 第三章 1 排程

作業系統 第三章 1 排程

1、處理機排程

多道程式環境下,動態的把處理機分配就緒佇列中的一個程序使之執行。

2、高階排程(外存進記憶體)

又稱作業排程或長程排程、接納排程 

  • 決定外存後備佇列中的哪些作業調入記憶體;
  • 為它們建立程序、分配必要的資源;
  • 將新建立的程序排在就緒佇列上,準備執行。

系統執行並不一定存在高階排程

批處理系統:作業進入系統後先駐留外存,故需要有作業排程。

分時系統:為及時響應,作業由終端直接送入記憶體,故不需作業排程。

實時系統中,通常也不需作業排程。

3、低階排程   (執行頻率最高!)

也稱為程序排程、微觀排程、短程排程

 

     程序排程方式比較:

程序排程方式

排程的時機

特點

非搶佔方式

程式完成;

發生某事件阻塞;

    實現簡單、系統開銷小; 功能也簡單,適用於大多數批處理OS,但在要求較嚴格的實時系統,不宜採用該方式

搶佔方式

程式完成;

發生某事件阻塞;

新程序就緒;

    搶佔的原則有很多種:優先權高的可以搶佔優先順序低的程序的處理機。短作業(程序)可以搶佔長作業(程序)的處理機。各程序按時間片執行,一個時間片用完時重新進行排程。

4、中級排程   (轉成掛起狀態 / 轉外存)

  又稱交換排程、中程排程

5、三級排程比較

排程型別

執行頻率

執行時間

演算法複雜性

程序排程

中程排程

中等

較短

中等

作業排程

6、從這三種方式中體驗排程的過程:

 僅有程序排程的排程佇列模型:

  • 完成工作,釋放處理機進入完成狀態
  • 未完成,將該任務再放入就緒佇列末尾
  • 因某事件而被阻塞,被OS放入阻塞佇列

7、 選擇排程方式和排程演算法的若干準則

*  面向使用者的準則 :

1)週轉時間短:

    週轉時間   T=Ts+Tw

(總的等待時間Tw = 在後備佇列中等待 + 就緒佇列上等待 + 阻塞佇列中等待(等待I/O操作用時)   

  CPU執行用時Ts)

   帶權週轉時間   W= T/Ts

2)響應時間快

3)均衡性

4)截止時間的保證

5)優先權準則

*  面向系統的準則:

1)系統吞吐量高

2)處理機利用率好(主要針對大中型主機)

3)各類資源的平衡利用(主要針對大中型主機)