日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

计算机操作系统——作业调度算法

發布時間:2024/4/17 windows 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 计算机操作系统——作业调度算法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 一、作業的基本知識
    • 1.作業和作業步
    • 2.作業運行的三個階段
  • 二、先來先服務(FCFS)調度算法
    • 1.算法思想
    • 2.算法評價
  • 三、短作業優先(SJF)調度算法
    • 1.算法思想
    • 2.算法評價
  • 四、優先級調度算法(PSA)
    • 1.算法思想
    • 2.算法評價
  • 五、高響應比優先調度算法(HRRN)


一、作業的基本知識

1.作業和作業步

(1)作業:作業是一個比程序更為廣泛的概念,包含通常的程序和數據,還有一份作業說明書。系統根據該說明書來對程序的運行進行控制。
(2)作業步:在作業運行期間,每個作業都必須經過若干個相對獨立,又相互關聯的順序加工步驟才得到結果,其中的每一個加工步驟稱為一個作業步。

2.作業運行的三個階段

(1)收容階段。操作員把用戶提交的作業通過某種輸入方式輸入到硬盤上,再為改作業建立JCB(作業控制塊),并把作業放到后備隊列中。此時作業的狀態稱為后備狀態
(2)運行階段。當作業被作業調度選中后,便為它分配必要的資源和建立進程,并將它放入就緒隊列。一個作業從第一次進入就緒隊列開始,直到它運行結束前,在此期間都處于運行狀態
(3)完成階段。當作業運行完成,或發生異常情況而提前結束時,作業便進入完成階段,相應的作業狀態為“完成狀態”。

二、先來先服務(FCFS)調度算法

1.算法思想

顧名思義,系統按照作業的先后到達順序來進行調度。即優先考慮在系統中等待時間最長的作業,而不考慮該作業所需要執行的時間。

2.算法評價

可以明顯感覺到缺點,就是如果有一個非常短的作業,如果這個短作業之前如果有一個非常長的作業的話,那么這個短作業不得不要等很長的時間。
在該算法上可以進行和其他算法進行結合,比如優先級,可以設置好幾個隊列,每個隊列之間的優先級不同,按照優先級選擇隊列,每個隊列里的作業按照先來先服務的調度算法選擇作業。

三、短作業優先(SJF)調度算法

1.算法思想

在先來先服務的調度算法中,我們提到,一個短作業為了等待前面的長作業完成,不得不要等待很長的時間,對于短作業來說,肯定顯得不太公平。
短作業優先調度算法,顧名思義,以作業的長短來當作一個作業的優先級,作業越短(作業的長短是以作業所要求的運行時間來衡量的),優先級越高,就盡量要被越早的執行完成。

2.算法評價

短作業算法彌補了先來先服務算法的缺點——短作業等待時間可能過長。但是,仍有明顯的缺點:
(1)必須預知作業大概的運行時間。一般都要預估偏長,因為如果預估運行時間短的話,可能作業還沒有執行完就被終止了。
(2)對長作業來說,可能會產生饑餓現象。
(3)采用SJF調度算法時,無法實現人機交互。
(4)該調度算法沒有考慮作業的緊迫度,所以緊急作業可能得不到及時處理。

四、優先級調度算法(PSA)

對于先來先服務算法,作業的等待時間就是這個作業的優先級,等待時間越長,優先級越高。對于短作業優先調度算法來說,作業的長短就是作業的優先級,作業越短,優先級越高。

1.算法思想

由外部賦予作業優先級,至于根據什么來判斷一個作業的優先級的高低,看情況了,比如,如果想要在短作業優先調度算法的基礎上保證緊迫作業能夠被優先完成的話,那么可以在作業長短的基礎上再加上緊迫這一個優先級,可以將緊迫作業的優先級設置為最高優先級,那么緊迫作業就會被優先運行。
優先級調度算法是一個比較籠統的概念,至于根據什么判斷作業的優先級,可以看情況。比如接下來討論的高響應比就屬于優先級調度算法,而高響應比優先調度算法中是同時根據作業的等待時間和作業的運行時間來判定一個作業的優先級的。

2.算法評價

該調度算法比較常見,而且比較靈活,可以選擇多個因素來作為優先級的評判標準,可以有多個優先級,各個優先級之間又有高低之分,比如上面的假設中,作業的長短和作業的緊迫程度都可以是作業的優先級影響因素,而緊迫作業的優先級要比短作業的優先級高。

五、高響應比優先調度算法(HRRN)

在前面說的算法中,先來先服務調度算法僅僅以作業的等待時間作為優先級因素,而忽視了作業的運行時間。短作業優先算法僅僅以作業的運行時間作為優先級因素,而忽視了作業的等待時間。高響應比優先調度算法則是既考慮了作業的等待時間,又考慮了作業的運行時間。因此即照顧了短作業,而又不會造成長作業的饑餓現象。
在這里有一個動態優先級的概念,即優先級是會動態變化的。由于高響應比優先調度算法的優先級是根據作業的長短和作業的等待時間來斷定的,所以一個作業的優先級肯定會根據時間而變換。該優先級的變化規律為:
優先權 = (等待時間+要求服務時間)/ 要求服務時間
由于等待時間與要求服務時間的和是系統對該作業的響應時間,所以:
優先權 = 響應時間 / 要求服務時間
由上式可以看出:
(1)如果作業的等待時間相同,那么作業要求服務時間越短,那么該作業的優先級就越高,類似于短作業優先調度算法,有利于短作業。
(2)當要求的服務時間相同時,作業的等待時間越長,那么作業的優先級越高,此時類似于先來先服務調度算法。
(3)對于長作業來說,隨著時間的增長,長作業的優先級會變高,當等待時間足夠長時,也會獲得處理及,因此避免了短作業優先調度算法的長作業可能出現饑餓現象的缺點。

總結

以上是生活随笔為你收集整理的计算机操作系统——作业调度算法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。