計算機(jī)操作系統(tǒng)-第2章作業(yè)管理和用戶接口.ppt_第1頁
計算機(jī)操作系統(tǒng)-第2章作業(yè)管理和用戶接口.ppt_第2頁
計算機(jī)操作系統(tǒng)-第2章作業(yè)管理和用戶接口.ppt_第3頁
計算機(jī)操作系統(tǒng)-第2章作業(yè)管理和用戶接口.ppt_第4頁
計算機(jī)操作系統(tǒng)-第2章作業(yè)管理和用戶接口.ppt_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、清華大學(xué)出版社,計算機(jī)操作系統(tǒng),劉騰紅 駱正華 主編,Computer Operating System,第二章 作業(yè)管理和用戶接口,2.1 用戶與操作系統(tǒng)間的接口 2.2 作業(yè)管理的基本概念 2.3 作業(yè)管理的任務(wù)和功能 2.4 作業(yè)的輸入與輸出 2.5 作業(yè)調(diào)度 2.6 作業(yè)控制 2.7 Windows XP 的用戶接口,2.1.1 程序接口 2.1.2 命令接口,2.1 用戶與操作系統(tǒng)間的接口,系統(tǒng)提供兩類接口 一類是用于程序一級 另一類是用于作業(yè)控制一級,其中又分別為聯(lián)機(jī)用戶和脫機(jī)用戶設(shè)置了不同的接口。,2.1 用戶與操作系統(tǒng)間的接口,它是由一組系統(tǒng)調(diào)用命令(簡稱系統(tǒng)調(diào)用)組成。這是為

2、程序員通過匯編程序與操作系統(tǒng)打交道而提供的。 系統(tǒng)調(diào)用 所謂系統(tǒng)調(diào)用,就是操作系統(tǒng)內(nèi)提供的一些子程序,用戶通過這些稱為特殊指令的命令調(diào)用這些子程序,以取得操作系統(tǒng)的服務(wù)。 通常,操作系統(tǒng)為了滿足用戶程序的各種需要,提供了功能豐富的系統(tǒng)調(diào)用命令,2.1.1 程序接口,系統(tǒng)調(diào)用的執(zhí)行 用戶必須向系統(tǒng)調(diào)用命令處理程序提供必要的參數(shù),以便使它根據(jù)這些參數(shù)進(jìn)行相應(yīng)的處理。 當(dāng)用戶程序執(zhí)行系統(tǒng)調(diào)用時,產(chǎn)生一條相應(yīng)的指令(有些操作系統(tǒng)稱其為訪管指令或軟中斷指令),處理機(jī)執(zhí)行該指令時產(chǎn)生相應(yīng)的軟中斷,系統(tǒng)將當(dāng)前程序的執(zhí)行現(xiàn)場保護(hù)后,轉(zhuǎn)入相應(yīng)的系統(tǒng)調(diào)用處理程序,去完成特定的系統(tǒng)調(diào)用功能。,2.1.1 程序接口,

3、操作系統(tǒng)的命令接口分為聯(lián)機(jī)命令接口和脫機(jī)命令接口 聯(lián)機(jī)命令接口 鍵盤操作命令 內(nèi)部命令。這類命令的特點是程序短小,使用頻繁 外部命令 菜單驅(qū)動方式。 圖符驅(qū)動方式。它是一種面向屏幕的圖形菜單選擇方式。 圖形化用戶界面。它將菜單驅(qū)動、圖符驅(qū)動、面向?qū)ο蠹夹g(shù)等集成在一起,形成一個圖文并茂的視窗操作環(huán)境。,2.1.2 命令接口,脫機(jī)或批處理命令接口 它是由一組作業(yè)控制命令(或稱作業(yè)控制語言)組成。脫機(jī)用戶是指不能直接干預(yù)作業(yè)的運行,而必須事先把要求系統(tǒng)所干的事用相應(yīng)的作業(yè)控制命令寫成一份作業(yè)操作說明書,連同其作業(yè)一起提交給系統(tǒng)的用戶。當(dāng)系統(tǒng)調(diào)度到該作業(yè)時,由系統(tǒng)中命令解釋程序?qū)ζ洳僮髡f明書上的命令逐

4、條解釋執(zhí)行,直至遇到“撤離”命令而停止該作業(yè)為止。,2.1.2 命令接口,2.2.1 作業(yè)、作業(yè)步、作業(yè)流 2.2.2 作業(yè)的分類,2.2 作業(yè)管理的基本概念,作業(yè) 用戶在一次算題過程中或一個事務(wù)處理中要求計算機(jī)系統(tǒng)所做工作的集合。 在一個多道程序的并行系統(tǒng)中,一個作業(yè)就是獨立于其他作業(yè)的計算工作的一個單位。 作業(yè)步 要求計算機(jī)系統(tǒng)做的一項相對獨立的工作叫做一個作業(yè)步,2.2.1 作業(yè)、作業(yè)步、作業(yè)流,對作業(yè)的處理一般有這樣幾個作業(yè)步: 編輯 將高級語言源程序通過鍵盤或別的形式輸入計算機(jī),在編輯程序的協(xié)助下糾正輸入過程中可能出現(xiàn)的錯誤,從而得到一個新的源程序。 編譯 調(diào)用相應(yīng)的編譯程序,對源程

5、序進(jìn)行編譯,產(chǎn)生目標(biāo)程序。 裝入 調(diào)入裝入模塊把編譯好的目標(biāo)程序連接裝配成一個可執(zhí)行代碼。 運行 啟動運行目標(biāo)程序,得出運行結(jié)果。,2.2.1 作業(yè)、作業(yè)步、作業(yè)流,這些作業(yè)步總是相互關(guān)聯(lián)、且有嚴(yán)格的先后執(zhí)行次序的。 它們之間的關(guān)系表現(xiàn)為: 一個作業(yè)步運行的結(jié)果將產(chǎn)生下一個作業(yè)步所需要的“文件”。 一個作業(yè)步能否正確地執(zhí)行,依賴于前一個作業(yè)步是否成功地完成。,2.2.1 作業(yè)、作業(yè)步、作業(yè)流,根據(jù)計算機(jī)系統(tǒng)對作業(yè)處理方式的不同,可把用戶作業(yè)分為兩大類:批量型作業(yè)和終端型作業(yè)。 對批量型作業(yè), 根據(jù)對其運行過程控制方式的不同,又可分為兩種: 利用作業(yè)說明書實行自動控制方式的作業(yè),即脫機(jī)作業(yè); 利

6、用控制臺鍵盤操作命令直接控制的作業(yè),即聯(lián)機(jī)作業(yè)。 終端型作業(yè) 用戶在終端上利用鍵盤操作命令控制和監(jiān)督作業(yè)的運行,系統(tǒng)把作業(yè)運行的情況和結(jié)果通過CRT及時反饋給用戶。 終端型作業(yè)通常在分時操作環(huán)境下運行。,2.2.2 作業(yè)的分類,2.3.1 作業(yè)管理的任務(wù) 2.3.2 作業(yè)管理的功能,2.3 作業(yè)管理的任務(wù)和功能,對資源進(jìn)行描述 根據(jù)不同資源的特征選取適當(dāng)?shù)臄?shù)據(jù)結(jié)構(gòu)來描述資源,內(nèi)容包括資源標(biāo)識、資源分配特性、資源安全要求、資源分配狀況等。 對資源進(jìn)行分配 按照一定的分配原則從若干申請資源的作業(yè)中選出合適的作業(yè),將作業(yè)申請資源的邏輯名與資源的物理地址進(jìn)行連接,這樣用戶就能夠 開始對資源的使用。 保

7、證資源使用的安全性 如果是共享資源,安全性表現(xiàn)在所以共享該資源的作業(yè)相互之間沒有不良影響或者越權(quán)操作。 如果是獨享資源,安全性表現(xiàn)在獨享資源具有實現(xiàn)臨界資源的手段。,2.3.1 作業(yè)管理的任務(wù),作業(yè)的輸入與輸出 如何組織作業(yè)并快速地把輸入設(shè)備上的作業(yè)源源不斷地裝入高速的后援存儲器上,逐步地形成后備作業(yè)隊列;并且將作業(yè)的輸出信息組織在輸出設(shè)備上輸出。 作業(yè)調(diào)度 在多道程序設(shè)計系統(tǒng)中,系統(tǒng)可以同時處理多個作業(yè),因此,系統(tǒng)必須能夠按照一定的策略選取若干作業(yè),并將它們調(diào)入內(nèi)存,分配必要的資源,使它們同時處于運行狀態(tài),共享系統(tǒng)的有限資源,這就是作業(yè)調(diào)度。 作業(yè)控制 作業(yè)是在操作系統(tǒng)控制下執(zhí)行的。它包括作

8、業(yè)如何輸入到系統(tǒng)中,當(dāng)作業(yè)被調(diào)度選中后如何控制它的運行,作業(yè)在運行過程中發(fā)生錯誤或出現(xiàn)故障時應(yīng)怎樣處理,計算的結(jié)果如何輸出等。,2.3.2 作業(yè)管理的功能,2.4.1 早期聯(lián)機(jī)輸入輸出 2.4.2 脫機(jī)輸入輸出 2.4.3 Spooling系統(tǒng),2.4 作業(yè)的輸入與輸出,在早期的批處理系統(tǒng)中,每個用戶將需要計算機(jī)解決的計算工作組織成一個作業(yè),交給機(jī)房。由操作員把一批作業(yè)裝到輸入設(shè)備 (如卡片機(jī)、紙帶機(jī)) 上,再由監(jiān)督程序送到輔存(早期是磁帶),然后再由調(diào)度程序從磁帶上選擇若干個作業(yè)投入運行。作業(yè)在運行過程中,若需要輸出信息,將信息先輸出至另一條磁帶上,等到磁帶上的一批作業(yè)全部運行結(jié)束后,再將輸

9、出帶上的信息由輸出設(shè)備(如打印機(jī))輸出。以后再重復(fù)上述過程,輸入下一批作業(yè)。,2.4.1 早期聯(lián)機(jī)輸入輸出,2.4.1 早期聯(lián)機(jī)輸入輸出,脫機(jī)批處理系統(tǒng)由主機(jī)和衛(wèi)星機(jī)(又稱外圍計算機(jī))組成。衛(wèi)星機(jī)不與主機(jī)直接連接,只與外部設(shè)備打交道。衛(wèi)星機(jī)把輸入設(shè)備上的作業(yè)傳輸?shù)酱笕萘康暮笤鎯ζ?磁帶、磁盤)上,當(dāng)主機(jī)需要輸入作業(yè)時,就把后援存儲器同主機(jī)連上。主機(jī)直接從后援存儲器中調(diào)度作業(yè)并控制運行,并把運行過程中作業(yè)的輸出信息以文件形式保存在后援存儲器上,等一批作業(yè)結(jié)束后,將后援存儲器重新與衛(wèi)星機(jī)連接,衛(wèi)星機(jī)負(fù)責(zé)將作業(yè)的輸出信息從輸出設(shè)備上向外輸出。,2.4.2 脫機(jī)輸入輸出,2.4.2 脫機(jī)輸入輸出,S

10、pooling系統(tǒng) 指脫機(jī)IO不再單獨使用衛(wèi)星機(jī),而是由主機(jī)上的通道來完成,并可與主機(jī)并行工作,為實現(xiàn)此功能所配置的軟件系統(tǒng)。 它們和用戶進(jìn)程一樣,也受系統(tǒng)調(diào)度程序調(diào)度運行,但它們的優(yōu)先級比任何用戶進(jìn)程都高。 輸入進(jìn)程負(fù)責(zé)從輸入設(shè)備上讀入作業(yè),把作業(yè)記錄在一組盤區(qū)中(這組盤區(qū)稱為作業(yè)的輸入井)。 一個用戶作業(yè)在運行中有信息要輸出時,首先通過文件管理系統(tǒng)組織輸出文件,并存于相應(yīng)的一組盤區(qū)中(這組盤區(qū)稱為作業(yè)的輸出井)。 以后當(dāng)所要的輸出設(shè)備有空時,系統(tǒng)通過調(diào)度Spooling輸出進(jìn)程把輸出文件從輸出井傳送到相應(yīng)的輸出設(shè)備。,2.4.3 SPOOLing系統(tǒng),2.4.3 SPOOLing系統(tǒng),2.

11、5.1 作業(yè)的狀態(tài) 2.5.2 作業(yè)控制塊 2.5.3 作業(yè)調(diào)度的功能及調(diào)度性能的衡量 2.5.4 作業(yè)調(diào)度算法,2.5 作業(yè)調(diào)度,一個作業(yè)在進(jìn)入系統(tǒng)到運行結(jié)束的生命期內(nèi),一共有四種狀態(tài): 提交狀態(tài) 那么作業(yè)在其處于從輸入設(shè)備上進(jìn)入輸入井的過程時所處的狀態(tài),稱為提交狀態(tài)。 后備狀態(tài) 作業(yè)全部進(jìn)入輸入井后,系統(tǒng)為每個作業(yè)建立作業(yè)控制塊,并把其JCB放入作業(yè)后備隊列,為作業(yè)調(diào)度做準(zhǔn)備。這時作業(yè)所處的狀態(tài)為后備狀態(tài)。 運行狀態(tài) 一個作業(yè)被作業(yè)調(diào)度程序選中而進(jìn)入主存開始運行,到作業(yè)計算完成為止,這時作業(yè)所處的狀態(tài)為運行狀態(tài)。一個作業(yè)處于運行狀態(tài)是從宏觀上看,其實它可能處于就緒、執(zhí)行、等待三種狀態(tài)之一。

12、 完成狀態(tài) 當(dāng)作業(yè)正常運行完成或因故障而終止時,作業(yè)進(jìn)入完成狀態(tài)。,2.5.1 作業(yè)的狀態(tài),2.5.1 作業(yè)的狀態(tài),系統(tǒng)中往往有很多批處理作業(yè)被收容在磁盤輸入井中,為了管理和調(diào)度這些作業(yè),就必須記錄已進(jìn)入系統(tǒng)的各作業(yè)的情況,為此,系統(tǒng)為每個作業(yè)設(shè)置一個作業(yè)控制塊(記為JCB,Job Control Block),記錄作業(yè)的有關(guān)信息。 作業(yè)存在的整個過程中,相應(yīng)的JCB也存在,只有當(dāng)作業(yè)退出系統(tǒng)時,JCB才被撤消。JCB是一個作業(yè)存在的標(biāo)志。,2.5.2 作業(yè)控制塊,作業(yè)調(diào)度 又稱為處理機(jī)的高級調(diào)度或宏調(diào)度,是按照某種調(diào)度算法從所有處于后備狀態(tài)的作業(yè)隊列中挑選一個或多個作業(yè)進(jìn)入主存中運行 作業(yè)調(diào)

13、度還要為選中的作業(yè)分配資源,做好作業(yè)運行前的準(zhǔn)備。完成作業(yè)調(diào)度的程序稱為作業(yè)調(diào)度程序。 作業(yè)調(diào)度在多道批處理系統(tǒng)中是非常必要的。 因為,系統(tǒng)接納若干用戶作業(yè),這眾多的作業(yè)共享系統(tǒng)中的全部資源,各用戶如何有效地共享系統(tǒng)資源,則必需有作業(yè)調(diào)度程序來解決。 在分時系統(tǒng)中,通常只有進(jìn)程調(diào)度而沒有作業(yè)調(diào)度。 因為,分時系統(tǒng)的目的是為了使各用戶作業(yè)得到快速地運行,對各用戶命令的及時響應(yīng)。,2.5.3 作業(yè)調(diào)度的功能及調(diào)度性能的衡量,作業(yè)調(diào)度程序的功能 按照系統(tǒng)選定的調(diào)度算法,從后備作業(yè)隊列中選取一個或多個作業(yè)。 為被選中的作業(yè)分配運行時所需要的系統(tǒng)資源。如分配主存和外設(shè)資源。 為被選中的作業(yè)開始運行做好一

14、切準(zhǔn)備工作。如將作業(yè)的后備狀態(tài)改為運行狀態(tài)等。 作業(yè)正常運行完成或因故障而中斷需要撤離系統(tǒng)時,作業(yè)調(diào)度程序還要完成作業(yè)的善后處理工作。,2.5.3 作業(yè)調(diào)度的功能及調(diào)度性能的衡量,通常采用平均周轉(zhuǎn)時間和平均帶權(quán)周轉(zhuǎn)時間來衡量作業(yè)調(diào)度算法性能的好壞。 作業(yè)i的周轉(zhuǎn)時間Ti定義為: Ti=Tei-Tsi(其中Tei為作業(yè)i的完成時間,Tsi為作業(yè)i的提交時間); n個作業(yè)的平均周轉(zhuǎn)時間T為: T=(T1+ T2+ Tn)/n 作業(yè)i的帶權(quán)周轉(zhuǎn)時間Wi定義為: Wi= Ti/Tri(其中Tri為作業(yè)i的實際運行時間) n個作業(yè)的平均帶權(quán)周轉(zhuǎn)時間W為: W=(W1+ W2+ Wn)/n,2.5.3 作

15、業(yè)調(diào)度的功能及調(diào)度性能的衡量,先來先服務(wù)調(diào)度算法 短作業(yè)優(yōu)先調(diào)度算法 響應(yīng)比高者優(yōu)先調(diào)度算法 優(yōu)先數(shù)調(diào)度算法,2.5.4 作業(yè)調(diào)度的算法,2.5.4 作業(yè)調(diào)度的算法-FCFS,先來先服務(wù)(FCFS,F(xiàn)irst Come Firs Serve)調(diào)度算法是按作業(yè)來到的先后次序進(jìn)行調(diào)度的。,2.5.4 作業(yè)調(diào)度的算法-FCFS,短作業(yè)優(yōu)先調(diào)度算法是依據(jù)每個作業(yè)的JCB中提供的運行時間,每次調(diào)度作業(yè)時,總是選取運行時間最短的作業(yè)運行。這種算法對短作業(yè)有利,作業(yè)的平均周轉(zhuǎn)時間最佳,也容易實現(xiàn),但它不考慮長作業(yè)的利益,有可能使長作業(yè)得不到運行的機(jī)會。,2.5.4 作業(yè)調(diào)度的算法-SJF,2.5.4 作業(yè)調(diào)

16、度的算法-SJF,響應(yīng)比高者優(yōu)先調(diào)度算法是介于先來先服務(wù)調(diào)度算法和短作業(yè)優(yōu)先調(diào)度算法之間的一種折衷的算法。 它兼顧了運行時間短和等待時間長的作業(yè),但算法較復(fù)雜,每當(dāng)調(diào)度作業(yè)時,要計算各個作業(yè)的響應(yīng)比。 響應(yīng)比定義為: 響應(yīng)比=作業(yè)響應(yīng)時間估計的運行時間 其中響應(yīng)時間為作業(yè)進(jìn)人系統(tǒng)后的等待時間加上估計的運行時間。因此,響應(yīng)比可寫為: 響應(yīng)比=1+作業(yè)等待時間估計的運行時間,2.5.4 作業(yè)調(diào)度的算法-HRN,2.5.4 作業(yè)調(diào)度的算法-HRN,如果對表2-2中的作業(yè)采用響應(yīng)比高者優(yōu)先調(diào)度算法來進(jìn)行調(diào)度,每個作業(yè)運行完成時剩下的所有作業(yè)的響應(yīng)比: 當(dāng)作業(yè)1結(jié)束時:作業(yè)2的響應(yīng)比=1+(10.0-8

17、.5)/0.5=1+3=4 作業(yè)3的響應(yīng)比=1+(10.0-9.0)/0.1=1+10=11 作業(yè)4的響應(yīng)比=1+(10.0-9.5)/0.2=1+2.5=3.5 從計算結(jié)果可看出,作業(yè)3的響應(yīng)比最高,應(yīng)該選擇作業(yè)3運行。 當(dāng)作業(yè)3結(jié)束時: 作業(yè)2的響應(yīng)比=1+(10.1-8.5)/0.5=1+3.2=4.2 作業(yè)4的響應(yīng)比=1+(10.1-9.5)/0.2=1+3=4,2.5.4 作業(yè)調(diào)度的算法- HRN,2.5.4 作業(yè)調(diào)度的算法-優(yōu)先數(shù)調(diào)度算法,優(yōu)先數(shù)調(diào)度算法就是選取優(yōu)先數(shù)最高的作業(yè)首先運行。 確定優(yōu)先數(shù)的一種較簡單的方法是, 當(dāng)一個作業(yè)送入系統(tǒng)時,由用戶為自己的作業(yè)規(guī)定一個優(yōu)先數(shù),這個

18、優(yōu)先數(shù)反映了用戶要求運行的急切程度。為了防止有的用戶為自己的作業(yè)規(guī)定一個很高的優(yōu)先數(shù),系統(tǒng)可對高優(yōu)先數(shù)作業(yè)收取高的費用。 更好的方法是由系統(tǒng)根據(jù)該作業(yè)執(zhí)行時間的長短和對資源要求的多少來規(guī)定其優(yōu)先數(shù)。這可以在作業(yè)進(jìn)入系統(tǒng)時確定,亦可在每次選擇作業(yè)時算出。,2.6.1 脫機(jī)控制方式 2.6.2 聯(lián)機(jī)控制方式,2.6 作業(yè)控制,作業(yè)控制就是對用戶對作業(yè)的干預(yù) 作業(yè)控制方式有兩種: 脫機(jī)作業(yè)控制 也稱為作業(yè)的自動控制方式,它是為批處理的脫機(jī)用戶提供的。 聯(lián)機(jī)作業(yè)控制 也稱為作業(yè)的直控制方式,它是為聯(lián)機(jī)或終端用戶提供的。,2.6 作業(yè)控制,脫機(jī)作業(yè)控制通常采用兩種途徑: 作業(yè)控制卡 作業(yè)控制卡方式是早期的一種脫機(jī)作業(yè)控制方式,存在著以下缺陷: 使用不夠靈活,因為用戶要把控制卡插入到那些要控制的卡片中間,如插不準(zhǔn)確, 就會出錯,很不方便。 由于作業(yè)控制卡是分散的,因此要對作業(yè)控制卡進(jìn)行修改比較麻煩。此外,這些控制卡只能順序執(zhí)行,不能重復(fù)執(zhí)行或跳越執(zhí)行。 作業(yè)控制卡的格式表示方式不簡潔,不易學(xué)會,不受用戶歡迎。 作業(yè)說明書,2.6.1 脫機(jī)控制方式,聯(lián)機(jī)作業(yè)控制是指用戶通過使用控制臺或終端發(fā)布命令對其作業(yè)運行所進(jìn)行的控制。用戶根據(jù)其操作意圖逐個地鍵入命令控制和指揮作業(yè)運行,而系統(tǒng)也通過相應(yīng)的設(shè)備把作

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論