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

下載本文檔

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

文檔簡介

第2章作業(yè)管理初用戶接口

第2章作業(yè)管理和用戶接口(界面)

2.1操作系統(tǒng)的用戶界面

2.2操作系統(tǒng)提供給用戶程序的服務(wù)

2.3運行一個用戶程序的過程

2.4作業(yè)的輸入與輸出

2.5進程調(diào)度

2.6調(diào)度性能的評價

2.7常見作業(yè)調(diào)度算法

第2章作業(yè)管理笳用戶接口

本章學(xué)習(xí)目標

□操作命令:包括作業(yè)控制語言和鍵盤命令,這

是用戶操作計算機的方式

口系統(tǒng)功能調(diào)用:這是用戶程序?qū)Σ僮飨到y(tǒng)提供

的服務(wù)的調(diào)用接口

□系統(tǒng)功能調(diào)用的執(zhí)行過程

口作業(yè)的定義、類型、狀態(tài)、輸入輸出

第2章作業(yè)管理初用戶接口

2.1操作系統(tǒng)的用戶界面

2.1」操作系統(tǒng)提供的兩個接口

2.1.2作業(yè)捽制語言和鍵盤命令

第2章作業(yè)管理初用戶接口

2.1.1操作系統(tǒng)提供的兩個接口

操作系統(tǒng)為用戶提供的接口體現(xiàn)在兩個方面(如

圖2.2所示):一是操作系統(tǒng)為用戶提供的各種操

作命令,用戶可利用這些操作命令來組織作業(yè)的

工作流程和控制作業(yè)的運行;二是操作系統(tǒng)為用

戶提供的一組系統(tǒng)功能調(diào)用,用戶可以在源程序

一級使用這些系統(tǒng)調(diào)用,請求操作系統(tǒng)提供的服

務(wù)(如,請求使用各種外部設(shè)備進行信息傳輸、

向系統(tǒng)申請資源等)。

業(yè)管理和用戶接口

源程序:系統(tǒng)調(diào)用

(作業(yè)控制語等

操作命乳

I鍵盤命令。

圖2.2操作系練人機之間的關(guān)系「

第2章作業(yè)管理初用戶接口

2.1.2.操作命令

L鍵盤命令

一般終端與主機通信的過程可以分為如下幾

少1R:

(1)呼叫

(4)退出

第2章作業(yè)管理笳用戶接口

(1)呼叫

當終端用戶想從終端打入命令或輸入信息時,他

首先要進行呼叫,例如通過類似電話撥號的方式

進行呼叫。當呼叫成功后,用戶就可以從終端的

鍵盤上打入各種命令輸入到計算機系統(tǒng),即開始

第二步—聯(lián)接。

第2章作業(yè)管理笳用戶接口

(2)聯(lián)接

呼叫成功后,計算機即和終端聯(lián)上,于是計算機應(yīng)在終

端設(shè)備上輸出引導(dǎo)信息,以告訴用戶終端設(shè)備與系統(tǒng)聯(lián)

上了。這時,用戶應(yīng)打入一條“錄入命令”,向系統(tǒng)申

請錄入一個作業(yè)。一般錄入命令應(yīng)給出以下參數(shù):用戶

名、作業(yè)名、口令、資源需求等。系統(tǒng)接到錄入命令后,

將檢查口令、資源需求等。在符合時,就允許錄入。當

用戶從終端上看到允許錄入的信息后,就知道這個終端

作業(yè)被接受了,從而就進入第三步—通信。

第2章作業(yè)管理初用戶接口

(3)通信

終端作業(yè)被錄入后,就可以通過終端打入各種控制

作業(yè)的命令和從終端輸入作業(yè)的程序和數(shù)據(jù)。屬于

通信這一步的鍵盤命令是比較豐富的,一般有以下

幾類:

(1)環(huán)境設(shè)置。(5)編譯、連接裝配和運行。

(2)系統(tǒng)管理。(6)輸入數(shù)據(jù)。

(3)文件管理。(7)操作方式轉(zhuǎn)換。

(4)編輯修改。(8)申請資源。

第2章作業(yè)管理初用戶接口

(4)退出

當作業(yè)運行結(jié)束時,用戶應(yīng)打入“退出”

命令。系統(tǒng)響應(yīng)命令后將收回分配給作業(yè)的全部

資源,然后在終端輸出日期和上機時間等,即通

知用戶系統(tǒng)已結(jié)束了該作業(yè)。退出系統(tǒng)后,用戶

若要求系統(tǒng)執(zhí)行新的作業(yè)可再打入“錄入”命令。

每個作業(yè)結(jié)束后一定要打入“退出”命令。

第2章作業(yè)管理笳用戶接口

2.作業(yè)控制語言

在脫機方式下,系統(tǒng)為用戶提供了作業(yè)控制語言

(JCL),用戶可利用它來書寫作業(yè)說明書控制

程序的執(zhí)行。作業(yè)控制語言屬于操作系統(tǒng)與用戶

之間的界面形式。

大致來說,作業(yè)控制語言一般包括:I/O命令、編

譯命令、操作命令以及條件命令等幾類。

第2章作業(yè)管理笳用戶接口

3.圖形化用戶界面

圖形用戶接口采用了圖形化的操作界面,用非常

容易識別的各種圖標來將系統(tǒng)的各項功能、各種

應(yīng)用程序和文件,直觀、逼真地表示出來。用戶

可通過鼠標、菜單和對話框來完成對應(yīng)用程序和

文件的操作。

程序的服務(wù)

2.2.2

2.2.3

第2章作業(yè)管理初用戶接口

2.2.1系統(tǒng)調(diào)用描述

系統(tǒng)功能調(diào)用是操作系統(tǒng)和用戶的第二接口?!?/p>

用戶所需要的功能,有些是比較復(fù)雜的,硬件不能

直接提供,只能通過軟件的程序來實現(xiàn)。而有些功

能可由硬件完成,并設(shè)有相應(yīng)的指令,如啟動外設(shè)

工作,就有用于輸入/輸出的硬指令。但配置了操作

系統(tǒng)后,對系統(tǒng)資源的分配、控制不能由用戶干預(yù),

而必須由操作系統(tǒng)統(tǒng)一管理。所以,對于這樣一類

功能,也需有相應(yīng)的控制程序來實現(xiàn)。

第2章作業(yè)管理笳用戶接口

2.2.1系統(tǒng)調(diào)用描述

所謂系統(tǒng)調(diào)用,就是用戶在程序中調(diào)用操作系統(tǒng)所

提供的一些子功能。這是一種特殊的過程調(diào)用,這

種調(diào)用是由特殊的機器指令實現(xiàn)的。

1、系統(tǒng)調(diào)用與-般過程調(diào)用的區(qū)別

⑴運行在不同的狀態(tài)

⑵狀態(tài)的轉(zhuǎn)換

返回問題

(4)嵌套調(diào)用

第2章作業(yè)管理初用戶接口

2.2.1系統(tǒng)調(diào)用描述

3.系統(tǒng)調(diào)用與一般過程調(diào)用的區(qū)別:

①運行狀態(tài)不同。一般的過程調(diào)用,其調(diào)用和被調(diào)用

的過程或者都是用戶子程序,或者都是系統(tǒng)程序,故都運行

在同一狀態(tài),即系統(tǒng)態(tài)或用戶態(tài)下。系統(tǒng)調(diào)用的調(diào)用過程是

用戶程序,它運行在用戶態(tài);而被調(diào)用過程是系統(tǒng)過程,它

運行在系統(tǒng)態(tài)。

②進入方式不同。一般的過程調(diào)用可以直接由調(diào)用過

程轉(zhuǎn)向被調(diào)用過程;而執(zhí)行系統(tǒng)調(diào)用時,由于調(diào)用和被調(diào)用

過程處于不同的系統(tǒng)狀態(tài),因而不允許由調(diào)用過程直接轉(zhuǎn)向

被調(diào)用過程而是通過軟中斷機制,先進入操作系統(tǒng)核心,經(jīng)

核心程序分析后,才能轉(zhuǎn)向相應(yīng)的命令處理程序。

第2章作業(yè)管理初用戶接口

2.2.1系統(tǒng)調(diào)用描述

3.系統(tǒng)調(diào)用與一般過程調(diào)用的區(qū)別:

③返回不同。一般的過程調(diào)用,在被調(diào)用過程執(zhí)行完后,

可以直接返回調(diào)用過程繼續(xù)執(zhí)行。而在采用了搶占式剝奪調(diào)

度方式的系統(tǒng)中,在被調(diào)用過程執(zhí)行完后,要對系統(tǒng)中所有

要求運行的進程進行優(yōu)先權(quán)的分析。當調(diào)用進程仍具有最高

優(yōu)先權(quán)時才返回到調(diào)用進程繼續(xù)執(zhí)行;否則,將引起重新調(diào)

度,以便讓優(yōu)先權(quán)最高的進程先執(zhí)行。此時,將把調(diào)用進程

放入就緒隊列。

④代碼層次不同(嵌套調(diào)用)。一般過程調(diào)用中的被

調(diào)用程序是用戶級程序,而系統(tǒng)調(diào)用是操作系統(tǒng)代碼中的代

碼程序,是系統(tǒng)級程序。

第2章作業(yè)管理初用戶接口

自愿進管指令(訪管指令):

為了實現(xiàn)對這些事先編制好的、具有特定功能的

例行子程序的調(diào)用,現(xiàn)代計算機系統(tǒng)一般提供自愿進管

指令,其指令形式為:

SVCN

其中,SVC表示機器自愿進管指令的操作碼記憶符,N為

地址碼。

SVC是SupervisorCall(訪問管理程序)的縮寫,

所以SVC指令又稱訪管指令。

當處理機執(zhí)行到這一條指令時就發(fā)生中斷,該中

斷稱為訪管中斷,它表示正在運行的程序?qū)Σ僮飨到y(tǒng)的

某種需求。借助中斷可使機器狀態(tài)由目態(tài)轉(zhuǎn)為管態(tài)。

第2章作業(yè)管理初用戶接口

2.2.2系統(tǒng)調(diào)用功能分類

1.設(shè)備管理:這類系統(tǒng)調(diào)用被用來請求和釋放設(shè)備,以

及啟動設(shè)備操作等。

2.文件管理:這類系統(tǒng)調(diào)用包括創(chuàng)建、刪除文件,讀、

寫文件操作以及移動文件指針等。I

3.進程控制:當多個用戶程序在系統(tǒng)內(nèi)執(zhí)行時引出了一

個新的概念,稱為進程。I

4,進程通信:進程間傳遞消息或信號的系統(tǒng)調(diào)用。

內(nèi)存塊的申請、釋放,獲取作業(yè)占用內(nèi)存

塊的首址、大小等。

第2章作業(yè)管理初用戶接口

2.2.3系統(tǒng)調(diào)用的實現(xiàn)

操作系統(tǒng)的基本服務(wù)是通過系統(tǒng)功能調(diào)用來實現(xiàn)

的,系統(tǒng)功能調(diào)用提供運行程序和操作系統(tǒng)之間

的界面。系統(tǒng)調(diào)用的實現(xiàn)取決于計算機的結(jié)構(gòu),

它是由特定的硬件指令實現(xiàn)對操作系統(tǒng)某一服務(wù)

例程的調(diào)用。

第2章作業(yè)管理笳用戶接口

2.2.3系統(tǒng)調(diào)用的實現(xiàn)(續(xù))

不同操作系統(tǒng),系統(tǒng)調(diào)用實現(xiàn)的具體方法有所不

同,但其實質(zhì)的特點是相同的:

1)每個系統(tǒng)調(diào)用對應(yīng)-個系統(tǒng)功能號■

2)每個系統(tǒng)調(diào)用有一個對應(yīng)的執(zhí)行程序段

3)每個系統(tǒng)調(diào)用要求一定數(shù)量的輸入?yún)?shù)和返

回值

4)整個系統(tǒng)有一個系統(tǒng)調(diào)用執(zhí)行程序入口地址

第2章作業(yè)管理初用戶接口

2.系統(tǒng)調(diào)用的處理過程

為T保證os不被用戶程序破壞

不允許用戶程序訪問os的系統(tǒng)程序和數(shù)據(jù)

那么,怎樣得到系統(tǒng)服務(wù)的呢?

需要有-個類似于硬件中斷處理的處理機構(gòu)

當用戶使用操作系統(tǒng)調(diào)用時,產(chǎn)生一條相應(yīng)的指令,

處理機在執(zhí)行到該指令時發(fā)生相應(yīng)的中斷,并發(fā)出有關(guān)

的信號給該處理機構(gòu)

該處理機構(gòu)在收到了處理機發(fā)來的信號后,啟動相關(guān)的

處理程序去完成該系統(tǒng)調(diào)用所要求的功能

第2章作業(yè)管理笳用戶接口

2.系統(tǒng)調(diào)用的處理過程(續(xù)1)^,

在系統(tǒng)中為控制系統(tǒng)調(diào)用服務(wù)的機構(gòu)稱為陷入(TRAP)或

異常處理機構(gòu)

相對應(yīng),把由于系統(tǒng)調(diào)用引起處理機中斷的指令稱為陷入或

異常指令(或稱訪管指令)

在操作系統(tǒng)中,每個系統(tǒng)調(diào)用都對應(yīng)一個事先給定的功能號,

例如0、1、2、3等

在陷入指令中必須包括對應(yīng)系統(tǒng)調(diào)用的功能號

而且,在有些陷入指令中,還帶有傳給陷入處理機構(gòu)和內(nèi)部

處理程序的有關(guān)參數(shù)

第2章作業(yè)管理初用戶接口

2.系統(tǒng)調(diào)用的處理過程(續(xù)2)

必須為實現(xiàn)系統(tǒng)調(diào)用功能的子程序編造入口地址表

每個入口地址與相應(yīng)的系統(tǒng)程序名對應(yīng)

陷入處理程序把陷入指令包含功能號與入口地址表有關(guān)項對應(yīng),

系統(tǒng)調(diào)用功能號驅(qū)動有關(guān)子程序執(zhí)行

在系統(tǒng)調(diào)用處理結(jié)束之后,用戶程序需利用系統(tǒng)調(diào)用返回結(jié)果

繼續(xù)執(zhí)行

保護現(xiàn)場:

在進入系統(tǒng)調(diào)用處理之前,陷入處理機構(gòu)還需保存處理機現(xiàn)場

在系統(tǒng)調(diào)用處理結(jié)束之后,要恢復(fù)處理機現(xiàn)場,現(xiàn)場被保護在

特定的內(nèi)存區(qū)或寄存器中

第2章作業(yè)管理初用戶接口

A,JSUB,?

ARSUB.

SUB^

例行子程序,

圖2.3系統(tǒng)調(diào)用的執(zhí)行過程

第2章作業(yè)管理笳用戶接口

2.3運行一個用戶程序的過程

一、使用計算機來計算來運行用戶程序有三個步驟:

(1)用某種語言(例如FORTRAN語言)編制一個程序,

它被稱為源程序。

(2)將源程序和初始數(shù)據(jù)記錄在某種輸入介質(zhì)上。例如

穿成一盤紙帶,或在終端設(shè)備(包括鍵盤、顯示器)上

直接編輯源程序。

(3)按照一定要求來控制計算機工作,并經(jīng)過加工最后

算出結(jié)果。

第2章作業(yè)管理笳用戶接口

二、對作業(yè)的處理的幾個作業(yè)步■

(1)編輯(修改):建立新文件或是對原有文件進行修

改。

(2)編譯:請求系統(tǒng)把修改好的源程序翻譯成浮動目標

模塊,并將它放在磁盤上,也可以穿孔輸出或二者有之。

(3)鏈接:請求系統(tǒng)把主程序模塊和其他所需要的子程

序和例行程序鏈接裝配在一起,成為一個可執(zhí)行的完整

的內(nèi)存映像文件。

4)運行:將主存映像文件調(diào)入主存,并啟動運行,最后

得出計算結(jié)果。

第2章作業(yè)管理露用戶接口

二、批處理系統(tǒng)作業(yè)處理

1.作業(yè)的基本概念

(1)作業(yè)

用戶在一次計算過程中,或者一次事務(wù)處理過程中,要求計

算機系統(tǒng)所做工作的總稱

(2)作業(yè)步

-個作業(yè)可劃分成若干部分,稱為-個作業(yè)步

典型的作業(yè)控制過程:

“編譯”、“連接裝配”、“運行”

(3)作業(yè)流

第2章作業(yè)管理初用戶接口

作業(yè)的基本概念(續(xù)1)

(4)典型的作業(yè)步

庫函數(shù)

第2章作業(yè)管理笳用戶接口

三、作業(yè)步之間的關(guān)系表現(xiàn)為

(1)每個作業(yè)步運行的結(jié)果產(chǎn)生下一個作業(yè)步

所需要的文件。如圖2.1所示。

(2)一個作業(yè)步能否正確地執(zhí)行,依賴于前一

個作業(yè)步是否成功地完成。

第2章作業(yè)管理初用戶接口

USERFORUSER.OBPUSER.EXL、-

B(微).-----

S2.1作蛾加的關(guān)和

圖2.1作業(yè)步之間的關(guān)系

第2章作業(yè)管理初用戶接口

作業(yè)、作業(yè)步、進程的關(guān)系

第2章作業(yè)管理初用戶接口

作業(yè)的基本類型

根據(jù)調(diào)度和控制的需要進行分類

從調(diào)度的角度,可分為:

計算型作業(yè):指任務(wù)中包含大量的計算,而其I/O較少的作

業(yè),如通常的科學(xué)計算;

I/O型作業(yè):要求少量的計算而需大量I/O的作業(yè),如通常的

事務(wù)處理

第2章作業(yè)管理初用戶接口

作業(yè)的基本類型

從控制的角度,可分為:

脫機作業(yè)(批量型作業(yè)):

在整個作業(yè)的運行過程中,只需根據(jù)作業(yè)說明書

中的說明對作業(yè)進行控制,脫機作業(yè)通常是在批處理操

作環(huán)境下運行,故也稱為批量型作業(yè);

聯(lián)機作業(yè)(終端型作業(yè)):

通常是用鍵盤命令直接控制作業(yè)的運行,聯(lián)機作業(yè)

通常在分時操作環(huán)境下運行,故也稱為終端型作業(yè)。

第2章作業(yè)管理笳用戶接口

2.作業(yè)的4種狀態(tài)

一個作業(yè)從進入系統(tǒng)到運行結(jié)束,要經(jīng)歷提交、

后備、運行(執(zhí)行)、完成4個階段。

運行狀態(tài)

業(yè)運行

預(yù)輸入備作業(yè)緩輸出

-狀

入完成

態(tài)

態(tài)

態(tài)(W

第2章作業(yè)管理笳用戶接口

【提交狀態(tài)】

當程序員將作業(yè)實體已存儲在某種輸入介質(zhì)上時所處的狀態(tài)。

【后備狀態(tài)】

輸入管理系統(tǒng)不斷把作業(yè)輸入到輸入井,如一個作

業(yè)全部信息被輸入到輸入井,在它未被調(diào)度執(zhí)行之前,

該作業(yè)處于后備狀態(tài)。為每個作業(yè)設(shè)置一個作業(yè)控制

塊(JCB)

【運行狀態(tài)】II

一個后備作業(yè)被作業(yè)調(diào)度程序選中,分配了資源,

調(diào)入內(nèi)存運行時的狀態(tài)

【完成狀態(tài)】

作業(yè)運行完畢,所占用的資源尚未全部回收,處于

完成狀態(tài)。

第2章作業(yè)管理初用戶接口

2.3作業(yè)的輸入輸出

作業(yè)信息的輸入與結(jié)果的輸出涉及設(shè)備的I/O方

式,根據(jù)是否使用通道可分為無通道處理和有通

道處理兩種方式。

第2章作業(yè)管理初用戶接口

2.3作業(yè)的建立

-個作業(yè)的建立包括兩個子過程:

作業(yè)的輸入、作業(yè)控制塊的建立。

作業(yè)的輸入方式:p35

■聯(lián)機輸入方式

-脫機輸入方式

-直接耦合方式

-網(wǎng)絡(luò)輸入方式

-SPOOLING系統(tǒng)(SimultaneousPeripheral

OperationOn-Line)

第2章作業(yè)管理初用戶接口

作業(yè)的輸入方式

聯(lián)機輸入方式

-外圍設(shè)備直接和主機相連。

脫機輸入方式(預(yù)輸入方式)

-利用低檔個人計算機作為外圍處理機進行處

理。

-脫機輸入解決了快速輸入輸出的問題,提高

了資源利用率,但是要以犧牲低檔機為代價。

還需要用戶干預(yù)

第2章作業(yè)管理笳用戶接口

直接耦合方式

-慢速的輸入輸出過程由外圍低檔機管理

-公用存儲器中的大量數(shù)據(jù)的高速讀寫由主機完成

網(wǎng)絡(luò)輸入方式

-用戶需要把在計算機網(wǎng)絡(luò)中某一臺主機上輸入的信息傳送

到同一網(wǎng)中另一臺主機上就行操作執(zhí)行,構(gòu)成了網(wǎng)絡(luò)輸入

方式

第2章作業(yè)管理笳用戶接口

SPOOLING系統(tǒng)(假脫機操作)

SimultaneousPeripheralOperationOnLine

-它使用直接存取的大容量磁盤作為緩沖,將

一個可共享的磁盤空間改造成若干個輸入設(shè)備

和輸出設(shè)備,并使得I/O設(shè)備和CPU并行操作。

(在聯(lián)機情況下實現(xiàn)的同時外圍操作)

SPOOLING系統(tǒng)的組成

-輸入井和輸出井

-輸入緩沖區(qū)和輸出緩沖區(qū)

-輸入進程和輸出進程

(輸入管理模塊、輸出管理模塊)

SPOOLING系統(tǒng)

第2章作業(yè)管理笳用戶接口

SPOOLING系統(tǒng)輸入過程:

-系統(tǒng)的輸入程序包含兩個獨立的過程,一個

過程負責(zé)從外部設(shè)備把信息讀入緩沖區(qū);另

一個過程是寫過程,負責(zé)把緩沖區(qū)中的信息

送到外存輸入井中。

-在系統(tǒng)輸入模塊收到作業(yè)輸入請求后,輸入

管理模塊中的讀過程負責(zé)將信息從輸入裝置

讀入緩沖區(qū)。當緩沖區(qū)滿時,由寫過程將信

息從緩沖區(qū)寫到外存的輸入井中

第2章作業(yè)管理初用戶接口

SPOOLING系統(tǒng)的工作原理

?當用戶提交一批作業(yè)后,操作員鍵入“預(yù)

輸入命令”啟動預(yù)輸入程序工作,預(yù)輸入

程序啟動輸入機讀出作業(yè)信息,并把它們

存放到輸入井中。當主存儲器可以裝入作

業(yè)時就從輸入井中選擇若干作業(yè)裝入主存

儲器。被裝入主存儲器中的作業(yè)在執(zhí)行中

可請求井管理程序從輸出井讀需處理的信

息或把處理結(jié)果寫到輸出井中。緩輸出程

序利用處理器空閑時間把作業(yè)執(zhí)行結(jié)果在

打印機上輸出

第2章作業(yè)管理初用戶接口

SPOOLING系統(tǒng)的特點

-提高了I/O速度

-將獨占設(shè)備改造為共享設(shè)備

-實現(xiàn)了虛擬設(shè)備功能

第2章作業(yè)管理初用戶接口

2.4作業(yè)調(diào)度

作業(yè)調(diào)度是由作業(yè)調(diào)度程序來完成的,作業(yè)調(diào)度

程序在系統(tǒng)初始化時被創(chuàng)建的。他的主要功能是

審查系統(tǒng)能否滿足用戶作業(yè)的資源請求,以及根

據(jù)一定的算法從輸入的一批作業(yè)中選出若干個作

業(yè),分配必要的資源,并將其調(diào)入內(nèi)存準備執(zhí)行。

第2章作業(yè)管理初用戶接口

作業(yè)調(diào)度

2.4.1作業(yè)狀態(tài)

2.4.2作業(yè)調(diào)度

第2章作業(yè)管理初用戶接口

2.4.1作業(yè)狀態(tài)(4種)

提交狀態(tài):用戶向系統(tǒng)提交一個作業(yè)時,該作業(yè)

所處的狀況。

后備狀態(tài):用戶作業(yè)經(jīng)過輸入設(shè)備送入輸出井

(磁盤)中存放,等待進入內(nèi)存時所處的狀

況。此時,該作業(yè)的數(shù)據(jù)已轉(zhuǎn)換成為機器可

讀的內(nèi)部形式,并且作業(yè)請求資源等信息也

交給了操作系統(tǒng)。

第2章作業(yè)管理初用戶接口

執(zhí)行狀態(tài):作業(yè)分配到所需要的資源,被調(diào)入內(nèi)

存,其進程經(jīng)調(diào)度在處理機上執(zhí)行相應(yīng)的程

序時所處的狀況。此時該作業(yè)真正處于活動

完成狀態(tài):作業(yè)完成了計算任務(wù),結(jié)果由打印機

輸出,最后由系統(tǒng)收回分配給它的全部資源,

準備退出系統(tǒng)時的作業(yè)狀況。

CPU

o

輸入井輸出井

用戶

打印機.用戶

job2

jobn

多道批處理系統(tǒng)

第2章作業(yè)管理初用戶接口

2.4.2作業(yè)調(diào)度

(JobControlBlock,):在多

道批處理系統(tǒng)中通常有上百個作業(yè)被收容在

輸入井(磁盤)中,為了管理和調(diào)度作業(yè),I

系統(tǒng)為每個作業(yè)設(shè)置了-個作業(yè)控制塊■

(JCB),它記錄該作業(yè)的有關(guān)信息。不同系

統(tǒng)的JCB的組成內(nèi)容有所區(qū)別。

第2章作業(yè)管理初用戶接口

作業(yè)控制塊的主要內(nèi)容

作業(yè)名*******

預(yù)估的運算時間、最遲完成時間、

資源要求要求的內(nèi)存量、要求的外設(shè)類型、

臺數(shù),要求的文件量和輸出量

資源使用狀進入系統(tǒng)的時間、開始運行的時間、

已運行時間、內(nèi)存地址、外設(shè)臺號,

類型級別控制方式、作業(yè)類型、優(yōu)先級

執(zhí)行

第2空作業(yè)管理多用戶接口

JCB是作業(yè)在系統(tǒng)中存在的唯一標志。作業(yè)進入系

統(tǒng)時由SPOOLing系統(tǒng)為每個作業(yè)建立一個JCB;

當作業(yè)退出系統(tǒng)時,則它的JCB也一起被撤消?!?/p>

在磁盤輸入井中的所有后備作業(yè)按作業(yè)類型(CPU

型、I/O型等)組成不同的后備作業(yè)隊列。由作業(yè)

調(diào)度程序從中挑選作業(yè),隨后放入內(nèi)存,予以運行。

作業(yè)調(diào)度主要用于批處理系統(tǒng)。

第2章作業(yè)管理初用戶接口

2.作業(yè)調(diào)度的主要任務(wù):完成作業(yè)從后備狀態(tài)到執(zhí)行狀

態(tài)和從執(zhí)行狀態(tài)到完成狀態(tài)的轉(zhuǎn)換。

作業(yè)調(diào)度的主要功能:p38

①記錄系統(tǒng)中各個作業(yè)的情況:

②按照某種調(diào)度算法從后備作業(yè)隊列中挑選作業(yè):I

③為選中的作業(yè)分配內(nèi)存和外設(shè)等資源;

④為選中的作業(yè)建立相應(yīng)的進程:

⑤作業(yè)結(jié)束后進行善后處理工作。

第2章作業(yè)管理初用戶接口

2.5進程調(diào)度

2.5.1進程調(diào)度的功能和時機

2.5.2兩級調(diào)度模型

2.5.3三級調(diào)度模型

第2章作業(yè)管理初用戶接口

2.5.1進程調(diào)度的功能和時機

進程調(diào)度為低級調(diào)度,完成進程狀態(tài)從就緒態(tài)到

運行態(tài)的轉(zhuǎn)化。進程調(diào)度程序完成一臺物理CPU

轉(zhuǎn)變?yōu)槎嗯_虛擬(或邏輯)CPU的工作。

進程調(diào)度程序是操作系統(tǒng)的真正核心,它直接負

責(zé)CPU的分配。系統(tǒng)中所有進程都是在CPU上運

行的,進程調(diào)度程序就是它們的切換開關(guān)。

第2章作業(yè)管理初用戶接口

L進程調(diào)度的主要功能

保存現(xiàn)場:當前運行的進程調(diào)用進程調(diào)度程序時,即表示

該進程要求放棄CPU。這時,進程調(diào)度程序把它的現(xiàn)

場信息,如程序計數(shù)器及通用寄存器的內(nèi)容等保留在

該進程PCB的現(xiàn)場信息區(qū)中;

挑選進程:根據(jù)一定的調(diào)度算法,從就緒隊列中選出一個

進程,并將其狀態(tài)置為運行態(tài),準備分配CPU;

恢復(fù)現(xiàn)場:為選中的進程恢復(fù)現(xiàn)場信息,并將CPU控制權(quán)

交給該進程,從而接著上次間斷的地方繼續(xù)運行。

第2章作業(yè)管理初用戶接口

2.進程調(diào)度的時機

任務(wù)完成:正在運行的進程完成任務(wù)后,主動釋放對CPU

的控制;

等待資源:由于等待某些資源或事件,正在運行的進程不

得不放棄CPU;

運行到時:在分時系統(tǒng)中,當前進程使用完規(guī)定的時間片

時,時鐘中斷使該進程讓出CPU;

發(fā)現(xiàn)標志:核心處理完中斷或陷入事件后,發(fā)現(xiàn)系統(tǒng)中

“重新調(diào)度”標志被置上,表明有比當前用戶進程更適

宜運行的進程,則執(zhí)行進程調(diào)度。

第2章作業(yè)管理初用戶接口

2.5.2兩級調(diào)度模型

作業(yè)調(diào)度和進程調(diào)度是CPU主要的兩級調(diào)度,它們的區(qū)

級別不同。作業(yè)調(diào)度是宏觀調(diào)度,為進程活動做準備,進

程調(diào)度是微觀調(diào)度,使進程真正活動起來;

執(zhí)行頻率不同。作業(yè)調(diào)度次數(shù)少,進程調(diào)度頻率高;

有的系統(tǒng)不設(shè)作業(yè)調(diào)度,但進程調(diào)度必不可少。

作業(yè)調(diào)度進程調(diào)度

后備

業(yè)

隊就緒隊列

I/O完成

I/O等待請求I/O

I/O

隊列

二級調(diào)度簡化隊列圖

第2章作業(yè)管理初用戶接口

2.6調(diào)度性能的評價

2.6.1調(diào)度策略的選擇I

2.6.2性能評價準則

第2章作業(yè)管理初用戶接口

2.6.1確定調(diào)度策略時應(yīng)考慮的主要因素

設(shè)計目標。所用算法應(yīng)保證實現(xiàn)系統(tǒng)的設(shè)計目標。目標不

同,系統(tǒng)設(shè)計要求不同。如:

批處理系統(tǒng):提高資源利用率和增加系統(tǒng)的平均吞吐量;]

分時系統(tǒng):保證對用戶的均衡響應(yīng)時間;

實時系統(tǒng):實現(xiàn)對事件的及時可靠的處理;

網(wǎng)絡(luò)系統(tǒng):用戶和程序能方便、有效地利用網(wǎng)絡(luò)中的分布

式資源。

第2章作業(yè)管理初用戶接口

對所有作業(yè)或進程應(yīng)公平對待,使每個進程能公

平地共享CPU。

2)均衡性。均衡使用資源,盡量使系統(tǒng)中各種資源同時得到

利用,提高資源的利用率。

3)統(tǒng)籌兼顧。兼顧響應(yīng)時間和資源利用率。對分時系統(tǒng),應(yīng)

在很短的時間響應(yīng)用戶需求。

4)優(yōu)先級?;谙鄬?yōu)先級,但避免無限延期。隨著等待時

間的延長,低優(yōu)先級進程的優(yōu)先級應(yīng)得到提升。

5)開銷。系統(tǒng)開銷不應(yīng)太大。

第2章作業(yè)管理初用戶接口

2.6.2性能評價準則

CPU利用率:實際系統(tǒng)中,CPU利用率一般從

40%(輕負荷系統(tǒng))至90%(重負荷系統(tǒng))。通常

在一定的I/O等待時間的百分比下,運行程序

道數(shù)越多,CPU空閑時間的百分比越低。H

吞吐量:單位時間內(nèi)CPU完成作業(yè)的數(shù)量。

第2章作業(yè)管理笳用戶接口

3.周轉(zhuǎn)時間

在一個批處理系統(tǒng)中,為了吸引更多的用戶來處理作業(yè),

系統(tǒng)總是力求縮短用戶作業(yè)的周轉(zhuǎn)時間。

周轉(zhuǎn)時間:從作業(yè)提交到作業(yè)完成的時間間隔。用于作業(yè)

等待進入內(nèi)存,進程在就緒隊列中等待,進程在CPU上

執(zhí)行和完成I/O操作所花費時間的總和。

Ti=Ki-KiI

其中:tsi表示作業(yè)i的提交時間,亦即作業(yè)i到達

系統(tǒng)的時間;tci表示作業(yè)i的完成時刻。

平均周轉(zhuǎn)時間:n個作業(yè)的平均周轉(zhuǎn)時間T為:

第2章作業(yè)管理初用戶接口

帶權(quán)周轉(zhuǎn)時間:為周轉(zhuǎn)時間T和實際運行時間R之

比。能合理的反映長短作業(yè)的差別。

W二T/R(R為實際執(zhí)行時間)

平均帶權(quán)周轉(zhuǎn)時間:

_/n\1(n1

w=ywix-=V—X-

第2章作業(yè)管理初用戶接口

4.就緒等待時間:CPU的調(diào)度算法并不真正影

響作業(yè)執(zhí)行或I/O操作的時間數(shù)量。各種■

CPU調(diào)度算法僅影響作業(yè)(進程)在就緒隊列

中所花費的時間數(shù)量。

5.響應(yīng)時間:從提交第一個請求到產(chǎn)生第一個

請求的回應(yīng)所用的時間。為剛開始響應(yīng)的時

間,而不是用于輸出響應(yīng)的時間。

第2章作業(yè)管理初用戶接口

2.7常見作業(yè)調(diào)度算法

2.7.1先來先服務(wù)法(FCFS)

272時間片輪轉(zhuǎn)法(RR),

2.7.3優(yōu)先級法■

2.7.4其它調(diào)度算法簡介

第2章作業(yè)管理初用戶接口

2.7.1先來先服務(wù)法(FCFS)

實現(xiàn)思想:每次調(diào)度都選擇隊頭的作業(yè)或進程;■

有利于長作業(yè)(進程),不利于短作業(yè)(進程);

有利于CPU繁忙型作業(yè)(需大量CPU時間進行計算

的作業(yè)),不利于I/O繁忙型作業(yè)(需頻繁請求I/O

的作業(yè));■H

算法簡單,實現(xiàn)容易,但效率低。

第2章作業(yè)管理初用戶接口

例如:設(shè)有三個作業(yè),編號為1,2,3。各作業(yè)

分別對應(yīng)一個進程。各作業(yè)依次到達,相差

一個時間單位,3個進程分別需要運行24、3

和3個時間單位。

圖示三個作業(yè)的執(zhí)行順序;

算出各作業(yè)的平均周轉(zhuǎn)時間和平均帶權(quán)周轉(zhuǎn)時間。

第2章作業(yè)管理初用戶接口

復(fù)習(xí):

周轉(zhuǎn)時間:從作業(yè)提交到作業(yè)完成的時間間隔。

=t'—t.

平均周轉(zhuǎn)時間:n個作業(yè)的平均周轉(zhuǎn)時間T為:

?I

帶權(quán)周轉(zhuǎn)時間:為周轉(zhuǎn)時間T和運行時間R之比。

W=T/R

平均帶權(quán)周轉(zhuǎn)時間:

(n、1r1

W=匯府x—=v—x—

ti=l)nn

圖示三個作業(yè)的執(zhí)行順序:

作業(yè)3?;:-

作業(yè)2I.i*1i1

作業(yè)1―i_i---------------------------;::

*JI?11?1*??11_

012242730日寸I旬

算出各作業(yè)的周轉(zhuǎn)時間和帶權(quán)周轉(zhuǎn)時間:

/pt\||/到達運行開始完成周轉(zhuǎn)帶權(quán)周

1F業(yè)

時間時間時間時間時間轉(zhuǎn)時間

1024024241

2132427268.67

3232730289.33

平均周轉(zhuǎn)時間T=26,平均帶權(quán)周轉(zhuǎn)時間W=6.33

第2章作業(yè)管理初用戶接口

2.7.2時間片輪轉(zhuǎn)法(RR)

主要用于分時系統(tǒng)中的進程調(diào)度。

實現(xiàn)思想:系統(tǒng)把所有就緒進程按先入先出的原則排成一個

隊列。新來的進程加到就緒隊列末尾。每當執(zhí)行進程調(diào)度時,

進程調(diào)度程序總是選出就緒隊列的隊首進程,讓它在CPU上

運行一個時間片的時間。當進程用完分給它的時間片后,系

統(tǒng)計時器發(fā)出時鐘中斷,調(diào)度程序便停止該進程的運行,并

把它放入就緒隊列的末尾;然后,把CPU分給就緒隊列的隊

首進程,同樣也讓它運行一個時間片,如此往復(fù),如同輪流

坐莊。

第2章作業(yè)管理初用戶接口

例如:設(shè)4個進程A、B、例口D依次進入就緒隊列

(同時到達),四個進程分別需要運行12、5、3

和6個時間單位。

①圖示RR法時間片q=1和q=4時進程運行情況;

②算出各進程的周轉(zhuǎn)時間和帶權(quán)周轉(zhuǎn)時間。

第2章作業(yè)管理初用戶接口

時間片輪轉(zhuǎn)法(q=l)

進程到達運行開始完成周轉(zhuǎn)帶權(quán)周

名時間時間時間時間時間轉(zhuǎn)時間

A012026262.17

B05117173.4

C03211113.67

D06320203.33

周轉(zhuǎn)時間T=18.5,平均帶權(quán)周轉(zhuǎn)時間W=3.14

第2章作業(yè)管理露用戶接口

時間片輪轉(zhuǎn)法(q=4)

進程到達運行開始完成周轉(zhuǎn)帶權(quán)周

名時間時間時間時間時間轉(zhuǎn)時間

A012026262.17

B05420204

C03811113.67

D061122223.67

周轉(zhuǎn)時間T=19.75,平均帶權(quán)周轉(zhuǎn)時間W=3.38

第2章作業(yè)管理笳用戶接口

時間片輪轉(zhuǎn)法的性能

時間片的大小對輪轉(zhuǎn)法的性能影響很大。

時間片的長短由下列因素決定:

系統(tǒng)響應(yīng)時間:在進程數(shù)目一定時,時間片的長短直接正

比于系統(tǒng)對響應(yīng)時間的要求;

就緒隊列進程的數(shù)目:當系統(tǒng)要求響應(yīng)時間一定時,時間

片的大小反比于就緒隊列中的進程數(shù);

進程的轉(zhuǎn)換時間:若進程的轉(zhuǎn)換時間為3時間片為q,為

保證系統(tǒng)開銷不大于某個標準,應(yīng)使比值t/q不大于某

一數(shù)值,如1/10;

CPU運行指令速度:CPU運行速度快,時間片可短些。反

之,則應(yīng)取長些。

第2章作業(yè)管理初用戶接口

2.7.3優(yōu)先級法

實現(xiàn)思想:從就緒隊列中選出優(yōu)先級最高的進程,把CPU

兩種處理方式:

非搶占式優(yōu)先級法:當前占用CPU的進程一直運行下去,

直到完成任務(wù)或因等待某事件發(fā)生而主動讓出CPU時,

系統(tǒng)才讓另一個優(yōu)先級高的進程占用CPU。

搶占式優(yōu)先級法:當前進程在運行過程中,一旦有另一個

優(yōu)先級更高的進程出現(xiàn)在就緒隊列中,進程調(diào)度程序

就停止當前進程的運行,強行將CPU分給那個進程。

第2章作業(yè)管理初用戶接口

進程優(yōu)先級可由系統(tǒng)內(nèi)部定義或外部指定:

內(nèi)部優(yōu)先級:利用某些可度量的量來定義一個進程的優(yōu)先

級,如,進程類型,進程對資源的需求(時間限度,需要內(nèi)

存大小,打開文件的數(shù)目,1/0平均工作時間與CPU平均工

作時間的比值等),用它們來計算優(yōu)先級。

外部優(yōu)先級:按操作系統(tǒng)以外的標準設(shè)置,如,外單位人員

租用計算中心大型計算機所付款的類型和總數(shù),使用計

算機的部門以及其它的外部因素。

第2章作業(yè)管理初用戶接口

靜態(tài)優(yōu)先級和動態(tài)優(yōu)先級:

優(yōu)先數(shù):標識優(yōu)先級的整數(shù),在Unix/Linux系統(tǒng)中,優(yōu)先數(shù)

越小,優(yōu)先級越高。

靜態(tài)優(yōu)先級:在創(chuàng)建進程時確定,且在進程的整個運行期間

保持不變。優(yōu)點是易于實現(xiàn),系統(tǒng)開銷??;缺點是會出現(xiàn)

“饑餓”現(xiàn)象。

動態(tài)優(yōu)先級:隨著進程推進優(yōu)先級不斷改變,如,使得系統(tǒng)

中等待CPU很長時間的進程逐漸提升其優(yōu)先級,避免發(fā)生

“饑餓”現(xiàn)象。

第2章作業(yè)管理初用戶接口

假定在單CPU條件下有下列要執(zhí)行的作業(yè):

作業(yè)運行時間優(yōu)先級

1103

214

322

411

553

各作業(yè)依次到達,相差一個時間單位。

①用執(zhí)行時間圖描述非搶占優(yōu)先級調(diào)度算法執(zhí)行這些作

業(yè)的情況;

②算出各作業(yè)的周轉(zhuǎn)時間和帶權(quán)周轉(zhuǎn)時間。

第2章作業(yè)管理初用戶接口

用執(zhí)行時間圖描述調(diào)度算法執(zhí)行這些作業(yè)

的情況

作業(yè)5

作業(yè)4

作業(yè)3

作業(yè)2

作業(yè)1

1819時間

第2章作業(yè)管理初用戶接口

算出各作業(yè)的周轉(zhuǎn)時間和帶權(quán)周轉(zhuǎn)時間

平均周轉(zhuǎn)時間T=12.2平均帶權(quán)周轉(zhuǎn)時間W=7.06

第2章作業(yè)管理初用戶接口

2.7.4其它調(diào)度算法簡介

短作業(yè)優(yōu)先法(SJF):主要用于作業(yè)調(diào)度。

基本思想:從后備作業(yè)隊列中選取運行時間最短的作業(yè)

放入內(nèi)存。采用非搶占策略,系統(tǒng)選中某個短作業(yè)后

投入運行,直到該作業(yè)完成并退出系統(tǒng)。

特點:能有效地降低作業(yè)的平均等待時間和提高系統(tǒng)吞

吐量,但對長作業(yè)很不利,且不能保證緊迫性作業(yè)會

被及時處理。

第2章作業(yè)管理初用戶接口

最短剩余時間優(yōu)先(SRTF)

采用搶占式策略。當新進程加入就緒隊列時,若其需要的

運行時間比當前運行進程所需的剩余時間還短,則強

行奪取運行進程的CPU控制權(quán),新進程調(diào)度運行?!?/p>

特點:總能保證新的短作業(yè)一進入系統(tǒng)就得到執(zhí)行,但該

算法需要增加系統(tǒng)開銷,如保存進程斷點現(xiàn)場,統(tǒng)計

進程剩余時間等。

第2章作業(yè)管理初用戶接口

5.最高響應(yīng)比優(yōu)先法(HRN,Highest

ResponseratioNext)

最高響應(yīng)比優(yōu)先法(HRN)是對FCFS方

式和SJF方式的一種綜合平衡。FCFS

方式只考慮每個作業(yè)的等待時間而未

考慮執(zhí)行時間的長短,而SJF方式只

考慮執(zhí)行時間而未考慮等待時間的長

短。

第2章作業(yè)管理初用戶接口

此,這兩種調(diào)度算法在某些極端

情況下會帶來某些不便。HRN調(diào)度

琪略同時老慮警個作業(yè)的等待時間

長短和估計需栗的執(zhí)行時間長短,

從中選出響應(yīng)比最高的作業(yè)投入執(zhí)

行。

響應(yīng)比R定義如下:

R=(W+T)/T=1+W/T

端成第

力「觸很#世

般嘴a

r取

w

招'包耙

W找

t

'

盤M名

#漏

需\

M

fr

*回

崛n

電4材力吊

蓋4

壯普。

本就上觸4

肥招R

也關(guān)事能耙

4

叫當<

有日■

4

嗨■嘲

W

叫壯1需憧。

近上

果翔G都

思植徵林

殿瑜長第

衣4瑜

e

血4

舔M

H

耳4

喉壯H

。

右4

一上牌

H

/

衣m

研1

乳錄招m國

w

fr

m

那#

叫%

V恭

域**

a步

N

Hw4曲

ft招

S4名*

4M豳

S泵o

H&H名R

f耙

uKSM

H耳

溫馨提示

  • 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)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論