第5章作業(yè)管理_第1頁
第5章作業(yè)管理_第2頁
第5章作業(yè)管理_第3頁
第5章作業(yè)管理_第4頁
第5章作業(yè)管理_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、 通過第二章的討論,我們知道,一個作業(yè)進入系統(tǒng),并為之建立相應(yīng)的一個或多個進程后,由進程調(diào)度來給予分配處理機,讓其在處理機上執(zhí)行,完成該作業(yè)的任務(wù),那么,一個用戶向系統(tǒng)注冊登記,提交作業(yè)后,什么時候得以真正進入系統(tǒng),由誰來為其創(chuàng)建進程呢?這是作業(yè)調(diào)度的任務(wù)。第五章 作業(yè)管理 根據(jù)計算機管理人員所制定的規(guī)則(如作業(yè)優(yōu)先數(shù)大小,要求資源的品種和數(shù)量、系統(tǒng)的均衡性等),從所有后備作業(yè)隊列上選擇一個或多個作業(yè)置于“運行”狀態(tài),并為它們分配必要的資源(如主存空間、外部設(shè)備等),建立相應(yīng)的用戶作業(yè)進程和為其服務(wù)的系統(tǒng)進程(如輸入、輸出進程),最后將它們的程序段調(diào)放主存以等待進程調(diào)度程序的調(diào)度。顯然,由作業(yè)

2、調(diào)度程序選擇到的作業(yè)才有資格獲得處理機,但不一定立刻就能占有它并在其上運行。 至于一個已被調(diào)度程序調(diào)度到的作業(yè),什么時候能真正在處理機上運行,則取決于“進程調(diào)度”所遵循的調(diào)度策略和作業(yè)性質(zhì)。進程調(diào)度又稱微觀調(diào)度或低級調(diào)度。作業(yè)調(diào)度與進程調(diào)度之間的關(guān)系,可打個比喻來說明,前者像競賽的“協(xié)調(diào)人”,它能確定參加比賽(競爭處理機)的全體“選手”,而后者像比賽場上的“裁判”,決定哪個“選手”將取得勝利(獲得物理處理機)。 作業(yè)管理的主要功能是對用戶作業(yè)進行合理調(diào)度,以提高系統(tǒng)的吞吐量或縮短作業(yè)的周轉(zhuǎn)時間,并提供用戶與操作系統(tǒng)的接口,以方便用戶對自己的作業(yè)在整個運行過程中進行控制。第五章 作業(yè)管理 5 作

3、業(yè)的基本概念 一、作業(yè)的定義 作業(yè):作業(yè)是由用戶提交給系統(tǒng)處理的一個基本任務(wù)(從用戶目光看),它是由用戶程序、數(shù)據(jù)以及對程序運行進行控制和處理的有關(guān)信息所組成(從系統(tǒng)角度看)。通常,一個作業(yè)又可分為若干個順序處理的作業(yè)步,例如,在對一個用某高級語言編制的源程序進行調(diào)試處理時,往往要經(jīng)過下述幾大步驟: 編輯這是調(diào)用編輯程序?qū)χ付ǖ脑闯绦蛭募M行輸入或修改; 編譯對編輯后所得的文件進行編譯、鏈接,以獲得可執(zhí)行的目標(biāo)代碼; 運行對編譯、鏈接后的程序進行運行,完成預(yù)期功能。 作業(yè)步:作業(yè)由不同的順序相連的作業(yè)步組成。作業(yè)步是在一個作業(yè)的處理過程中,計算機所做的相對獨立的工作。 第五章 作業(yè)管理二、作業(yè)

4、的類型 (根據(jù)調(diào)度和控制的需要,可對作業(yè)進行分類) 從調(diào)度的角度,可把作業(yè)分成: ()計算型作業(yè) 指任務(wù)中包含大量的計算,而其I/O較少的作業(yè),通常的科學(xué)計算便屬計算型作業(yè); ()I/O型作業(yè) 要求少量的計算而需大量I/O的作業(yè),如通常的事務(wù)處理便屬于I/O型作業(yè)。 為了提高系統(tǒng)的吞吐量,調(diào)度程序應(yīng)對這兩種作業(yè)進行合理地組織和調(diào)度。 從控制角度可把作業(yè)分成:()脫機作業(yè) 在整個作業(yè)的運行過程中,只需根據(jù)作業(yè)說明書中的說明對作業(yè)進行控制,脫機作業(yè)通常是在批處理操作環(huán)境下運行,故也稱為批量型作業(yè);()聯(lián)機作業(yè) 通常是用鍵盤命令直接控制作業(yè)的運行,聯(lián)機作業(yè)通常在分時操作環(huán)境下運行,故也稱為終端型作業(yè)

5、。第五章 作業(yè)管理三、三、 作業(yè)的狀態(tài)及其建立過程作業(yè)的狀態(tài)及其建立過程 1、作業(yè)的狀態(tài) 一個作業(yè)從進入系統(tǒng)到運行完成,一般要由系統(tǒng)經(jīng)過多級調(diào)度才能實現(xiàn),通常要經(jīng)歷“進入(提交)”、“收容(后備)”、“執(zhí)行”和“完成(終止)”四個階段,相應(yīng)地,作業(yè)就有四種狀態(tài): 1) 進入狀態(tài)(提交狀態(tài)):進入狀態(tài)(提交狀態(tài)): 當(dāng)操作員將用戶提交的作業(yè)通過某種輸入方式輸入到外存上時,稱此階段為作業(yè)處于進入狀態(tài)。第五章 作業(yè)管理2) 后備狀態(tài)(收容狀態(tài)):后備狀態(tài)(收容狀態(tài)): 當(dāng)作業(yè)所需全部信息已輸入到外存,由作業(yè)建立程序為之建立一個作業(yè)控制塊,并插入到后備作業(yè)隊列中等待作業(yè)調(diào)度運行為止。把作業(yè)在后備隊列上

6、等待調(diào)度的狀態(tài)稱為后備狀態(tài)。3)執(zhí)行狀態(tài):)執(zhí)行狀態(tài): 作業(yè)調(diào)度程序從處于后備狀態(tài)的作業(yè)隊列中選中一個作業(yè)調(diào)入內(nèi)存,并為這建立相應(yīng)的進程后,由于此時的作業(yè)已具有獨立運行的資格,如果處理機空閑,便可立即開始執(zhí)行,故稱此時的作業(yè)是進入了運行狀態(tài)。作業(yè)的運行狀態(tài)又可進一步分為“就緒”、“執(zhí)行”和“阻塞”三個基本狀態(tài)。 第五章 作業(yè)管理4) 終止?fàn)顟B(tài)(完成狀態(tài)):終止?fàn)顟B(tài)(完成狀態(tài)): 當(dāng)作業(yè)(進程)的運行正常完成或異常結(jié)束時,進程便自我終止,或被迫終止,此時作業(yè)便進入終止?fàn)顟B(tài)。處于終止?fàn)顟B(tài)的作業(yè)被作業(yè)終止程序回收其作業(yè)控制塊,回收已分配給它的所有資源,然后作業(yè)隨之消亡。 下圖示出了作業(yè)的狀態(tài)及其轉(zhuǎn)換

7、。作業(yè)由進入狀態(tài)到后備狀態(tài)的轉(zhuǎn)換,是由作業(yè)建立程序完成的;從后備狀態(tài)轉(zhuǎn)變?yōu)檫\行狀態(tài)是由調(diào)度程序所引起;而作業(yè)由運行狀態(tài)自愿或被迫地轉(zhuǎn)變?yōu)榻K止?fàn)顟B(tài),則是在有關(guān)作業(yè)終止的系統(tǒng)調(diào)用的作用下完成的。 第五章 作業(yè)管理第五章 作業(yè)管理進入狀態(tài)后備狀態(tài)運行狀態(tài)終止?fàn)顟B(tài)作業(yè)的狀態(tài)轉(zhuǎn)換作業(yè)建立作業(yè)調(diào)度作業(yè)調(diào)度(完成)SPOOLING輸入SPOOLING輸出輸入設(shè)備輔存輸入井內(nèi)存進程創(chuàng)建占用CPU運行輸出設(shè)備JOB調(diào)度與進程調(diào)度作業(yè)調(diào)度進程調(diào)度作業(yè)調(diào)度2、作業(yè)控制塊、作業(yè)控制塊JCB的建立的建立 在系統(tǒng)把作業(yè)信息輸入到外存輸入井之后,還要根據(jù)作業(yè)說明書內(nèi)容和有關(guān)作業(yè)信息在外存中的位置等建立作業(yè)控制表JCB,然后

8、插入作業(yè)后備隊列。JCB包含了系統(tǒng)對作業(yè)進行管理所必須的信息。它們通常包含: 作業(yè)名作業(yè)類型作業(yè)在外存的存儲地址作業(yè)的狀態(tài)作業(yè)優(yōu)先權(quán)(為進程調(diào)度算法提供參數(shù))資源要求指針第五章 作業(yè)管理3、作業(yè)和進程的關(guān)系、作業(yè)和進程的關(guān)系 作業(yè)可被看作是用戶向計算機提交任務(wù)的任務(wù)實體,例如一次計算、一個控制過程等。而進程則是計算機為了完成用戶所提交的任務(wù)實體而設(shè)置的執(zhí)行實體,是系統(tǒng)分配資源的基本單位。顯然,計算機要完成一個任務(wù)實體,必須要有一個以上的執(zhí)行實體。也就是說,一個作業(yè)總是由一個以上的多個進程組成的。那么作業(yè)是怎樣分解為進程的呢?首先,系統(tǒng)必須為一個作業(yè)創(chuàng)建一個根進程,然后,在執(zhí)行作業(yè)控制語句時,根

9、據(jù)任務(wù)要求,系統(tǒng)或根進程為其創(chuàng)建相應(yīng)的子進程,然后,為各子進程分配資源和調(diào)度各子進程執(zhí)行以完成作業(yè)要求的任務(wù)。作業(yè):任務(wù)實體;進程:執(zhí)行實體。第五章 作業(yè)管理 從用戶角度看,作業(yè)是向計算機系統(tǒng)提交的一個大任務(wù),該大任務(wù)可分成各個子任務(wù)子任務(wù)又可分成更小的任務(wù).每個子任務(wù)是用一條一條的指令或命令描述的,稱這種描述為子任務(wù)的正文段。所有子任務(wù)的正文段組成大任務(wù)的正文也就是通常所說的“作業(yè)的程序文本”。只有當(dāng)正文段被計算機執(zhí)行時才能體現(xiàn)出任務(wù)的功能。進程是正文段的執(zhí)行實例(instance),是申請資源的基本單位。換句話說作業(yè)(任務(wù))是由多個進程組成的,作業(yè)的資源需求量等于它的進程擁有的資源數(shù)量之和

10、。第五章 作業(yè)管理5.2 作業(yè)控制方式 這是用戶通過OS提供的“用戶與OS的接口”向系統(tǒng)發(fā)出各種命令,以管理自己的作業(yè)和控制作業(yè)的運行。根據(jù)作業(yè)性質(zhì)的不同,又可把作業(yè)控制方式分為: 批處理作業(yè)控制(脫機作業(yè)控制):這是OS利用作業(yè)說明書對用戶提交的批量型作業(yè)進行控制; 終端型作業(yè)控制(聯(lián)機作業(yè)控制):用戶利用OS提供的一組鍵盤命令對自己的作業(yè)進行控制。 第五章 作業(yè)管理作業(yè)的控制方式(細分):1、聯(lián)機輸入方式:外圍設(shè)備直接與主機相連,一臺主機可連接一臺或多臺外設(shè)。當(dāng)連接一臺外設(shè)時,可能會造成CPU的浪費。2、脫機I/O:在外圍機的控制下,實現(xiàn)程序和數(shù)據(jù)的輸入輸出。解決單臺設(shè)備聯(lián)機時的CPU浪費

11、問題而使用的一種輸入方式。缺點是需人工干預(yù),如移動存儲介質(zhì)和連接后援存儲器等。3、直接耦合方式:保留了脫機輸入方式的快速輸入的優(yōu)點,又沒有脫機輸入方式的人工干預(yù)的缺點和具有較強的靈活性的輸入方式。直接耦合方式把主機和外圍低檔機通過一個公用的大容量的外存直接耦合起來,從而省去了脫機輸入中那種依靠人工干預(yù)來傳遞后援存儲器的過程。第五章 作業(yè)管理4、SPOOLing方式外圍設(shè)備同時聯(lián)機操作:(在聯(lián)機輸入方式中,如果一臺主機聯(lián)接多臺外設(shè),就形成了SPLOOing方式)。為了克服脫機輸入/輸出工作方式的缺點,在通道技術(shù)及多道程序設(shè)計技術(shù)發(fā)展的基礎(chǔ)上,人們研制了一種稱為SPOOLing(Simultone

12、ous Peripheral Operations On Line)的操作方式,其含義是外圍設(shè)備同時聯(lián)機操作。該輸入方式的特點是:在有SPOOLing功能的計算機系統(tǒng)中,作業(yè)的輸入/輸出,不再單獨使用外轉(zhuǎn)處理機而由主機和相應(yīng)通道來承擔(dān)各種功能,而且,通常總是使用直接存取的大容量磁盤作為后援存儲器。 在SPOOLing系統(tǒng)中,多臺外圍設(shè)備通過通道或DMA器件和主機與外存連接起來。通道是一個獨立于CPU的專管輸入輸出的處理機,它控制外設(shè)或外存與內(nèi)存之間的信息交換。第五章 作業(yè)管理第五章 作業(yè)管理注:滕子陽編現(xiàn)代操作系統(tǒng) 53 作業(yè)調(diào)度 只有批處理系統(tǒng)才必須具有作業(yè)調(diào)度。在分時系統(tǒng)中由于要進行人機交

13、互,系統(tǒng)必須能及時響應(yīng),為此應(yīng)把用戶從終端輸入的作業(yè)直接送入內(nèi)存,因此,不再需要專門用于把作業(yè)從外存調(diào)入內(nèi)存的作業(yè)調(diào)度過程。對于實時系統(tǒng)中的實時任務(wù),因為通常對其響應(yīng)的時間更為嚴(yán)格,故也不需要作業(yè)調(diào)度。第五章 作業(yè)管理一、作業(yè)調(diào)度 根據(jù)計算機管理人員所制定的規(guī)則從所有后備作業(yè)隊列上選擇一個或多個作業(yè)置于“運行”狀態(tài),并為它們分配必要的資源,建立相應(yīng)的用戶作業(yè)進程和為其服務(wù)的系統(tǒng)進程,最后將它們的程序段調(diào)入主存以等待進程調(diào)度程序的調(diào)度。即:審查系統(tǒng)能否滿足用戶作業(yè)的資源要求且按一定的算法選取作業(yè)調(diào)入內(nèi)存分配必要的資源,建立進程,插入就緒隊列等待進程調(diào)度程序的調(diào)度。第五章 作業(yè)管理作業(yè)調(diào)度程序要完

14、成的如下工作:(1)按照某種調(diào)度算法從后備作業(yè)隊列中挑選作業(yè);(2)為選中作業(yè)分配主存和外設(shè)資源;因此作業(yè)調(diào)度程序在挑選作業(yè)過程中要調(diào)用存儲管理程序和設(shè)備管理程序中的某些功能(如“建立原語”和“撤銷原語”);(3)為選中的作業(yè)建立相應(yīng)的進程;(4)構(gòu)造和填寫作業(yè)運行時所需的有關(guān)表格,如作業(yè)表(登記所有在主存中各作業(yè)的有關(guān)信息)等;(5)作業(yè)結(jié)束時完成該作業(yè)的善后處理工作,如收回資源,輸出必要的信息,該作業(yè)的全部進程(PCB)和作業(yè)控制塊(JCB)。二、作業(yè)調(diào)度的功能二、作業(yè)調(diào)度的功能 根據(jù)計算機管理人員所制定的規(guī)則從所有后備作業(yè)隊列上選擇一個或多個作業(yè)置于“運行”狀態(tài),并為它們分配必要的資源,

15、建立相應(yīng)的用戶作業(yè)進程和為其服務(wù)的系統(tǒng)進程,最后將它們的程序段調(diào)入主存以等待進程調(diào)度程序的調(diào)度。即:審查系統(tǒng)能否滿足用戶作業(yè)的資源要求且按一定的算法選取作業(yè)調(diào)入內(nèi)存分配必要的資源,建立進程,插入就緒隊列等待進程調(diào)度程序的調(diào)度。第五章 作業(yè)管理三、作業(yè)調(diào)度的目標(biāo)三、作業(yè)調(diào)度的目標(biāo) 作業(yè)調(diào)度的目標(biāo)與整個系統(tǒng)的設(shè)計目標(biāo)有關(guān),總目標(biāo)是:(1)能更好地為用戶服務(wù);(2)能有效地改善系統(tǒng)性能。因此,調(diào)度目標(biāo)有以下兩方面:面向用戶的作業(yè)調(diào)度目標(biāo):面向用戶的作業(yè)調(diào)度目標(biāo): 作業(yè)的平均周轉(zhuǎn)時間盡可能短;保證截止時間前完成;優(yōu)先權(quán)高的作業(yè)得到優(yōu)先服務(wù)。面向系統(tǒng)的作業(yè)調(diào)度目標(biāo):面向系統(tǒng)的作業(yè)調(diào)度目標(biāo):系統(tǒng)能獲得大的

16、吞吐量吞吐量;使CPU“忙”;平衡利用資源。 由于這些目標(biāo)的相互沖突,任一調(diào)度算法要想同時滿足上述目標(biāo)是不可能的。例如,要想執(zhí)行盡可能多的作業(yè),調(diào)度算法就應(yīng)選擇那些估計執(zhí)行時間短的作業(yè)。而這對那些估計執(zhí)行時間長的作業(yè)是不公平的,且它們的響應(yīng)時間將會變得非常慢;再如,要使提高CPU的利用率,就得選擇計算量大的作業(yè),這對I/O型作業(yè)是不公平的等等。所以要想設(shè)計一個理想的調(diào)度算是件十分困難的事。在實際系統(tǒng)中,選用的調(diào)度算法往往是兼顧某些目標(biāo)的一種折衷考慮的結(jié)果。下面我們列舉一些在設(shè)計調(diào)度算法應(yīng)考慮的因素: 第五章 作業(yè)管理 選擇的調(diào)度算法應(yīng)與系統(tǒng)的整個設(shè)計目標(biāo)一致。例如,批處理系統(tǒng)應(yīng)注重提高計算機的

17、效率,盡量增加系統(tǒng)的平均吞吐量(指單位時間內(nèi)的平均算題個數(shù));而分時系統(tǒng)中應(yīng)保證用戶能忍受的響應(yīng)時間和一定的資源利用率;實時系統(tǒng)的調(diào)度策略是在保證及時響應(yīng)和處理與時間有關(guān)的事件的前提下,才考慮系統(tǒng)資源的使用效率。 批處理提高平均吞吐量;分時響應(yīng)時間、資源利用率;實時實時性和可靠性。注意系統(tǒng)資源的均衡使用,使“I/O繁忙”的作業(yè)與“CPU繁忙”的作業(yè)搭配起來運行。 應(yīng)保證提交的作業(yè)在規(guī)定的截止時間內(nèi)完成,而且應(yīng)設(shè)法縮短作業(yè)的平均周轉(zhuǎn)時間。 必須指出,對一個具體的系統(tǒng)而言,如果考慮的因素過多,必然使算法變得復(fù)雜,結(jié)果使系統(tǒng)的開銷增加,對提高資源利用反而不利。因此,大多數(shù)OS采用比較簡單的調(diào)度算法。

18、 第五章 作業(yè)管理四、調(diào)度算法四、調(diào)度算法 . 先來先服務(wù)(FCFS)調(diào)度算法 這是一種最簡單的作業(yè)調(diào)度算法。作業(yè)進入系統(tǒng)后,由作業(yè)建立程序按作業(yè)進入系統(tǒng)的先后次序,將它們插入后備隊列。每當(dāng)進行作業(yè)調(diào)度時,由作業(yè)調(diào)度程序順序掃描后備隊列,尋找當(dāng)前系統(tǒng)的可分配資源能滿足作業(yè)要求的第一個作業(yè),找出后,將其JCB從后備隊列移至現(xiàn)行作業(yè)隊列,并把作業(yè)狀態(tài)改為運行,同時將它調(diào)入內(nèi)存,為之創(chuàng)建進程,再將該進程掛在就緒隊列上。 應(yīng)當(dāng)指出,作業(yè)調(diào)度中的FCFS算法,并不一定是選擇后備隊列中的第一個作業(yè)投入運行,而是從后備隊列中選擇現(xiàn)有系統(tǒng)資源能滿足作業(yè)要求的第一個作業(yè),因此,F(xiàn)CFS算法只是對那些系統(tǒng)的可分配

19、資源能滿足要求的作業(yè)而言。 第五章 作業(yè)管理2. 最短作業(yè)優(yōu)先(SJF)調(diào)度算法 作業(yè)的長短是以估計的作業(yè)運行時間的長短來衡量的。SJF算法的依據(jù)是作業(yè)的長短。因此,SJF算法是從后備隊列選擇其估計運行時間最短的作業(yè),且系統(tǒng)的可分配資源能滿足其要求的作業(yè),使之投入運行。 該算法有利于短作業(yè)而不利于長作業(yè),由于80以上的作業(yè)都是短作業(yè),故該算法能得到較多用戶的支持。該算法優(yōu)點是能明顯地縮短作業(yè)的等待時間,再由于作業(yè)自身執(zhí)行的時間又很短,致使系統(tǒng)中的短作業(yè)能很快地一個一個地完成,故SJF算法有利于提高系統(tǒng)的吞吐量,和減少作業(yè)的平均周轉(zhuǎn)時間。 缺點:該算法不利于長作業(yè);該算法也未考慮到優(yōu)先權(quán)因素;由

20、于作業(yè)長短的估計運行時間通常是由用戶提供的,用戶可能會意或無意地減少其作業(yè)的估計運行時間,而致使該算法不是真正的短作業(yè)優(yōu)先調(diào)度算法。 第五章 作業(yè)管理3. 響應(yīng)比高者優(yōu)先(HRN)調(diào)度算法 該算法是將SJF算法與FCFS算法改進后加以折衷而得。它除了考慮作業(yè)要求的運行時間外,還考慮到作業(yè)的等待時間。在該算法中對響應(yīng)比的定義如下: 響應(yīng)比(作業(yè)等待時間作業(yè)要求的運行時間)作業(yè)要求的運行時間=1+作業(yè)等待時間 / 作業(yè)要求的運行時間 該算法的缺點是,每次進行作業(yè)調(diào)度時,都要對每個作業(yè)的響應(yīng)比進行計算,致使作業(yè)調(diào)度的開銷很大,此外,對緊迫作業(yè)也未能給予特殊照顧。 4. 優(yōu)先數(shù)調(diào)度算法 系統(tǒng)為每一個作

21、業(yè)確定一個優(yōu)先數(shù),存放于作業(yè)控制塊,優(yōu)先數(shù)高的作業(yè)優(yōu)先被調(diào)度選取。當(dāng)幾個作業(yè)有相同的優(yōu)先數(shù)時,對這些具有相同優(yōu)先數(shù)的作業(yè)發(fā)先來先服務(wù)原則進行調(diào)度。那么如何確定作業(yè)的優(yōu)先數(shù)?可根據(jù)作業(yè)的緩急程度、估計作業(yè)運行的時間、作業(yè)等待時間,資源申請的情況等各種因素綜合權(quán)衡之后確定作業(yè)的優(yōu)先數(shù)。第五章 作業(yè)管理 例如:假設(shè)有四道作業(yè),它們的進入時間和運行時間由下表給出: 在單道程序環(huán)境下,分別采用先來先服務(wù)和最短作業(yè)優(yōu)先調(diào)度算,試分別說明它們的調(diào)度順序及平均周轉(zhuǎn)時間和平均帶權(quán)周轉(zhuǎn)時間(不剝奪方式)。 作業(yè)號 進入時間(時) 運行時間(小時) 110004 21011 310206 410302第五章 作業(yè)管

22、理解:四道作業(yè)的運行時間表如下:作業(yè)號進入時間(時)運行時間(小時)FCFSSJF完成時間(時)周轉(zhuǎn)時間(小時)完成時間(時)周轉(zhuǎn)時間(小時)110.00.410.4 0.410.4 0.4210.1111.4 1.312.2 2.1310.20.612.0 1.811.2 1410.30.212.2 1.910.6 0.3第五章 作業(yè)管理FCFS:調(diào)度順序是、 平均周轉(zhuǎn)時間J=(0.4+1.3+1.8+1.9)/4=1.35(小時) 平均帶權(quán)周轉(zhuǎn)時間W=(0.4/0.4+1.3/1+1.8/0.6+1.9/0.2)/4=3.7(小時) SJF:調(diào)度順序是、 平均周轉(zhuǎn)時間J=(0.4+2.1+

23、1+0.3)/4=0.95(小時) 平均帶權(quán)周轉(zhuǎn)時間W=(0.4/0.4+2.1/1+1/0.6+0.3/0.2)/4=1.55(小時) 說明:短作業(yè)優(yōu)先調(diào)度算法能明顯地降低作業(yè)的平均周轉(zhuǎn)時間。第五章 作業(yè)管理5.4 與用戶的接口(書中5.1) 用戶接口用戶接口 是計算機系統(tǒng)與其用戶之間進行交互作用和通信的通路。對絕大多數(shù)用戶而言,一個計算機系統(tǒng)的可接受性在很大程度上取決于這個用戶接口。 用戶接口通常是以命令或系統(tǒng)調(diào)用命令或系統(tǒng)調(diào)用的形式呈現(xiàn)在用戶面前,前者提供給用戶在鍵盤終端上使用,后者則提供用戶在編程時調(diào)用。所以分別稱為程序接口和命令接口。下面分別述之。第五章 作業(yè)管理1、程序級接口、程序

24、級接口由一組系統(tǒng)調(diào)用組成由一組系統(tǒng)調(diào)用組成 程序接口程序接口:指用戶程序和OS之間的接口。這是操作系統(tǒng)為用戶程序訪問計算機資源而提供的接口,是用戶程序取得操作系統(tǒng)服務(wù)的唯一途徑。亦即程序接口是操作系統(tǒng)為正在運行的程序提供服務(wù)并與之通信的一個設(shè)施。它供所有的用戶使用;同時,也供操作系統(tǒng)的其它組成部分,特別是命令處理程序使用。程序接口的職責(zé)是裝入并創(chuàng)建一個準(zhǔn)備開始運行的程序(進程)。此外,這個接口還為程序正常或異常終止給出適當(dāng)?shù)捻憫?yīng)。當(dāng)一個程序正在執(zhí)行時,程序接口接受對系統(tǒng)服務(wù)及資源的申請,并與操作系統(tǒng)的資源管理程序進行通信。這個程序接口主要由一組系統(tǒng)調(diào)用(System Call)組成,通過系統(tǒng)調(diào)

25、用程序?qū)崿F(xiàn)與操作系統(tǒng)的通信。 第五章 作業(yè)管理 什么是系統(tǒng)調(diào)用呢? 系統(tǒng)調(diào)用: 指系統(tǒng)為用戶程序調(diào)用操作系統(tǒng)所提供的子程序。 它是一種特殊的過程調(diào)用,這種調(diào)用通常是由特殊的機器指令實現(xiàn)的。除了提供對操作系統(tǒng)子程序的調(diào)用外,這個指令還將系統(tǒng)轉(zhuǎn)入特權(quán)方式。因此,系統(tǒng)調(diào)用程序被看成是一個低級的過程,只能由匯編語言直接訪問。大多數(shù)用高級語言編寫的程序通過子程序庫來訪問這些系統(tǒng)調(diào)用。這些子程序執(zhí)行系統(tǒng)調(diào)用并完成其它的有關(guān)功能??傊?,它與一般的它與一般的函數(shù)調(diào)用不同,系統(tǒng)調(diào)用是通過中斷方式轉(zhuǎn)向相應(yīng)子程序的,函數(shù)調(diào)用不同,系統(tǒng)調(diào)用是通過中斷方式轉(zhuǎn)向相應(yīng)子程序的,它工作在核心態(tài)(即特權(quán)方式),而一般函數(shù)的調(diào)用

26、,仍僅它工作在核心態(tài)(即特權(quán)方式),而一般函數(shù)的調(diào)用,仍僅是在用戶態(tài)下的地址轉(zhuǎn)移。是在用戶態(tài)下的地址轉(zhuǎn)移。第五章 作業(yè)管理二、命令接口二、命令接口 為了便于用戶直接或間接地控制自己的作業(yè),操作系統(tǒng)向用戶提供了命令接口,用戶可通過該接口向作業(yè)發(fā)出命令以控制作業(yè)的運行。該接口又可進一步細分為聯(lián)機用戶接口和脫機用戶接口:1. 脫機命令接口:該接口是為批處理作業(yè)的用戶提供的,故也稱為批處理用戶接口。它是由一組作業(yè)控制語言JCL所組成。批處理作業(yè)的作戶不能直接與自己的作業(yè)交互作用,只能委托系統(tǒng)代替用戶對作業(yè)進行控制和干預(yù),這里的作業(yè)控制語言JCL便是提供給批處理作業(yè)用戶,將所需實現(xiàn)的功能,委托系統(tǒng)代為控制的一種語言。用戶用JCL把對作業(yè)需進行的控制和

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論