N計(jì)算機(jī)操作系統(tǒng)教程第三章2_第1頁
N計(jì)算機(jī)操作系統(tǒng)教程第三章2_第2頁
N計(jì)算機(jī)操作系統(tǒng)教程第三章2_第3頁
N計(jì)算機(jī)操作系統(tǒng)教程第三章2_第4頁
N計(jì)算機(jī)操作系統(tǒng)教程第三章2_第5頁
已閱讀5頁,還剩39頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

計(jì)算機(jī)操作系統(tǒng)教程---------Linux實(shí)例分析程驊信息科學(xué)與工程學(xué)院操作系統(tǒng)的用戶接口1作業(yè)管理2.批處理的作業(yè)管理3.處理機(jī)調(diào)度級別4.Linux系統(tǒng)調(diào)度用實(shí)現(xiàn)5.第3章作業(yè)管理及用戶接口

3.1

操作系統(tǒng)的用戶接口程序級接口作業(yè)控制級接口3.1.1程序級接口

用戶在程序中直接使用系統(tǒng)調(diào)用指令來調(diào)用操作系統(tǒng)的有關(guān)功能。1.什么是系統(tǒng)調(diào)用指令2.系統(tǒng)調(diào)用指令的形式程序級接口(通過OS提供的一套系統(tǒng)調(diào)用來定義)3.系統(tǒng)調(diào)用執(zhí)行過程4.處理機(jī)的狀態(tài)及特權(quán)指令管態(tài):

處理機(jī)在執(zhí)行操作系統(tǒng)的程序代碼時所處的狀態(tài)目態(tài):

處理機(jī)在執(zhí)行用戶程序和其它系統(tǒng)應(yīng)用程序時所處的狀態(tài)3.1.2作業(yè)控制級接口作業(yè)級接口:是操作系統(tǒng)為用戶在作業(yè)一級請求系統(tǒng)服務(wù)而設(shè)置的脫機(jī)用戶接口(批處理)——作業(yè)控制語言這種接口主要是用于批處理系統(tǒng)聯(lián)機(jī)用戶接口(交互式)——命令級接口(鍵盤命令)用于以交互方式請求操作系統(tǒng)服務(wù)命令行接口圖用用戶界面命令級接口:命令行接口CommandlineInterface命令級接口:圖用戶界面GraphicalUserInterface3.2作業(yè)管理3.2.1作業(yè)的基本概念作業(yè):用戶在一次計(jì)算過程中或一次事務(wù)處理過程中,要求計(jì)算機(jī)系統(tǒng)所做工作的總稱。作業(yè)步:一個作業(yè)可劃分成若干部分,處理作業(yè)的各個獨(dú)立的子任務(wù)稱為一個作業(yè)步。作業(yè)流:把若干作業(yè)依次放在輸入設(shè)備上,在操作系統(tǒng)控制下依次運(yùn)行用戶作業(yè)作業(yè)步作業(yè)步進(jìn)程進(jìn)程線程線程.........由用戶創(chuàng)建由用戶指定由系統(tǒng)創(chuàng)建作業(yè)、作業(yè)步進(jìn)程和線程的關(guān)系基本概念作業(yè)的組成:由程序、數(shù)據(jù)和作業(yè)說明書三部分組成。作業(yè)的處理過程:作業(yè)的類型:脫機(jī)作業(yè)------脫機(jī)用戶接口------批處理方式聯(lián)機(jī)作業(yè)------聯(lián)機(jī)用戶接口------交互式方式3.2.2作業(yè)控制方式1.批處理方式2.交互控制方式(1)操作控制命令

(2)菜單技術(shù)

(3)窗口技術(shù)

交互式系統(tǒng)作業(yè)管理由一組操作系統(tǒng)命令實(shí)現(xiàn),采用人機(jī)對話的方式來控制作業(yè)的運(yùn)行。為聯(lián)機(jī)用戶接口方式接口方式:命令驅(qū)動方式窗口系統(tǒng)與菜單驅(qū)動方式命令文件方式命令驅(qū)動方式用戶通過控制臺終端輸入操作系統(tǒng)提供的命令來控制自己的作業(yè)運(yùn)行,系統(tǒng)接受到一條命令后由命令處理程序解釋并執(zhí)行,然后通過屏幕顯示將結(jié)果報(bào)告給用戶。用戶根據(jù)結(jié)果決定下一步的操作,直到作業(yè)完成?;救蝿?wù):解釋命令,傳送命令以便執(zhí)行接受系統(tǒng)信息,提交給用戶(以響應(yīng)語言的形式)特點(diǎn):交互式命令的接口復(fù)雜,系統(tǒng)利用率低;控制靈活方便接口包括:一組聯(lián)機(jī)命令,終端處理程序,命令解釋程序終端處理與命令解釋程序終端處理程序用戶同操作系統(tǒng)的通信通過一個輸入/輸出裝置來實(shí)現(xiàn),由一個終端處理程序管理和控制直接影響命令接口的一些問題回送顯示(Echoing)提前打入(Typeahead)字符變換行緩沖中斷字符(BreakCharacters)命令解釋程序兩種處理方法:由終端命令解釋程序直接處理由子進(jìn)程代為處理命令接口的結(jié)構(gòu)命令接口由命令處理器來實(shí)現(xiàn)命令處理器的實(shí)現(xiàn)方式:作為OS的一個部分,如,OS/MVT或VAX/VMS作為OS的一個獨(dú)特模塊,能方便地修改或替換,如RT-11或CP/M作為一易于被替換的普通程序,如UNIX在某些系統(tǒng)中,可能用專門設(shè)計(jì)的命令接口替代標(biāo)準(zhǔn)的命令接口,如,多用戶UNIX,用戶可有不同命令接口命令語言命令語言規(guī)定由OS執(zhí)行的一系列操作多數(shù)命令行中要給出一些參數(shù),每一命令語句實(shí)際上是帶有參數(shù)的一個過程調(diào)用一個命令語言通常提供下列幾組命令:(1)系統(tǒng)訪問命令(2)文件管理命令(3)編輯、編譯和執(zhí)行命令(4)詢問命令(5)操作員專用命令命令行:規(guī)定由操作系統(tǒng)執(zhí)行的一系列操作命令行、命令格式、命令分類、命令簡化窗口系統(tǒng)與菜單驅(qū)動方式命令行方式:要求用戶記憶命令格式圖形用戶接口方式:用戶可利用鼠標(biāo)對屏幕上的圖標(biāo)進(jìn)行操作,完成與操作系統(tǒng)的交互,從而減少記憶內(nèi)容,方便用戶使用。圖形用戶接口的技術(shù)基礎(chǔ):高分辯顯示器和鼠標(biāo)效率沒有命令行方式高命令文件方式把一系列命令組裝成文件的方法,然后用文件名作為命令名執(zhí)行另外一系列命令針對大量順序操作功能而設(shè)計(jì),實(shí)現(xiàn)了聯(lián)機(jī)狀態(tài)下的批處理操作批處理命令可以是專門的命令,也可是系統(tǒng)的基本命令;還有有關(guān)的語法結(jié)構(gòu),循環(huán)、分支、轉(zhuǎn)移、判別等,構(gòu)成一套特殊的命令語言特點(diǎn):接受參數(shù)、變量,宏變量替換允許嵌套形式調(diào)用其他命令文件允許參數(shù)來自終端的命令文件本身允許執(zhí)行顯示到終端、存入文件或送入打印機(jī)允許命令加入注釋出錯時允許用戶干預(yù)可把輸入傳給程序,可有循環(huán)、分支、轉(zhuǎn)移等例:UNIX的作業(yè)管理shell命令處理程序1.shell的類型2.初始化文件3.基本特征4.輸入輸出重定向5.管道6.后臺執(zhí)行7.環(huán)境變量和內(nèi)部變量8.別名9.常用的外部命令批處理3.3批處理作業(yè)的管理3.3.1批處理作業(yè)的組織3.3.2批處理作業(yè)的輸入3.3.3作業(yè)控制塊是作業(yè)的描述信息與控制信息批處理系統(tǒng)作業(yè)處理把對作業(yè)進(jìn)行控制的意圖連同程序和數(shù)據(jù)及發(fā)生故障后的處理措施一起輸入系統(tǒng)中,由系統(tǒng)根據(jù)該意圖來控制作業(yè)的執(zhí)行。為脫機(jī)用戶接口方式由作業(yè)控制語言JCL組成作業(yè)控制語言JCL書寫作業(yè)說明書的語言稱為作業(yè)控制語言用于描述批處理作業(yè)處理過程控制意圖的一種特殊程序類別:包括I/O命令、編譯命令、操作命令及條件命令等脫機(jī)用戶接口的形式作業(yè)控制卡用在早期批處理系統(tǒng)管理中。使用作業(yè)控制語言JCL,穿孔在卡片上作業(yè)說明書使用某些作業(yè)控制命令將用戶對作業(yè)的意圖寫成作業(yè)說明書,實(shí)現(xiàn)對作業(yè)的控制。表達(dá)用戶對作業(yè)的控制意圖內(nèi)容:作業(yè)的基本描述、作業(yè)控制描述、資源要求描述作業(yè)控制塊

(JCB,JobControlBlock)用來對作業(yè)進(jìn)行描述的數(shù)據(jù)結(jié)構(gòu)稱為作業(yè)控制塊(JCB)作業(yè)控制塊是批處理作業(yè)存在的標(biāo)志保存系統(tǒng)對于作業(yè)進(jìn)行管理所需要的全部信息位于磁盤區(qū)域中,和作業(yè)一一對應(yīng)內(nèi)容:信息數(shù)量及內(nèi)容因系統(tǒng)而異生命周期:建立,使用,撤銷3.3.4作業(yè)狀態(tài)1.提交狀態(tài)(進(jìn)入狀態(tài))用戶通過輸入設(shè)備向系統(tǒng)提交一個作業(yè)時所處的狀態(tài)。2.后備狀態(tài)用戶作業(yè)經(jīng)輸入設(shè)備送入輸入井中存放,等待進(jìn)入內(nèi)存時所處的狀況3.執(zhí)行狀態(tài)(執(zhí)行狀態(tài))作業(yè)分配到所需資源,被調(diào)入內(nèi)存時所處的狀況4.完成狀態(tài)(退出狀態(tài))作業(yè)完成了計(jì)算任務(wù),結(jié)果由打印機(jī)輸出批處理作業(yè)的狀態(tài)及轉(zhuǎn)換3.4處理機(jī)調(diào)度的級別高級調(diào)度:又稱為作業(yè)調(diào)度

根據(jù)一定的算法,從輸入的一批作業(yè)中選出若干個作業(yè)調(diào)入內(nèi)存.2.低級調(diào)度:又稱進(jìn)程調(diào)度

根據(jù)一定的調(diào)度算法,從就緒隊(duì)列中選擇一個進(jìn)程,使其獲得處理機(jī)執(zhí)行。3.線程調(diào)度

作業(yè)調(diào)度的功能1)記錄系統(tǒng)中各個作業(yè)的情況2)按照某種調(diào)度算法從后備作業(yè)中挑選作業(yè)3)為選中的作業(yè)分配內(nèi)存和外設(shè)等資源并為作業(yè)建立相應(yīng)的進(jìn)程4)作業(yè)結(jié)束后進(jìn)行善后處理工作,即收回該作業(yè)所占用的全部資源,撤消與該作業(yè)相關(guān)的全部進(jìn)程和該作業(yè)的JCB

3.4.1作業(yè)調(diào)度2.性能評價標(biāo)準(zhǔn)(1)調(diào)度策略的選擇1)提高處理機(jī)與外設(shè)的并行程度2)提高主存的利用效率3)提高作業(yè)的吞吐量4)作業(yè)調(diào)度算法應(yīng)盡量簡單,使系統(tǒng)的時間和空間開銷最小(2)作業(yè)調(diào)度性能衡量1)周轉(zhuǎn)時間作業(yè)i的周轉(zhuǎn)時間:Ti=Tei–Tsi作業(yè)的平均周轉(zhuǎn)時間:

2)帶權(quán)周轉(zhuǎn)時間作業(yè)i的帶權(quán)周轉(zhuǎn)時間:Wi=Ti∕TriTei:作業(yè)i的完成時間Tsi:作業(yè)i的提交時間Ti:作業(yè)i的周轉(zhuǎn)時間Tri:作業(yè)i的執(zhí)行時間作業(yè)的平均帶權(quán)周轉(zhuǎn)時間:

(1)先來先服務(wù)(FCFS)

3.常用的作業(yè)調(diào)度算法優(yōu)點(diǎn):算法簡單、便于實(shí)現(xiàn)

缺點(diǎn):導(dǎo)致短作業(yè)等待時間過長

作業(yè)名進(jìn)入輸入井時間需計(jì)算時間需內(nèi)存量(KB)A8:064215B8:183060C8:362450D9:182410E9:181220(2)短作業(yè)優(yōu)先算法(SJF)優(yōu)點(diǎn):作業(yè)平均等待時間最小和作業(yè)吞吐重量大

缺點(diǎn):若系統(tǒng)不斷接納新作業(yè),則可能導(dǎo)致大作業(yè)長期等待

(3)最高響應(yīng)比優(yōu)先算法(HRN)響應(yīng)比=作業(yè)等待時間∕作業(yè)運(yùn)行時間

(4)優(yōu)先級算法分為靜態(tài)優(yōu)先數(shù)法和動態(tài)優(yōu)先數(shù)法

作業(yè)優(yōu)先數(shù)=(等待時間)2-所需運(yùn)行時間-16×輸出量

例如:

1.

進(jìn)程調(diào)度的功能

3.4.2進(jìn)程調(diào)度

(1)記錄當(dāng)前進(jìn)程的情況

(2)選擇占有處理機(jī)的進(jìn)程。(3)進(jìn)行進(jìn)程上下文切換1)完成任務(wù)。正在運(yùn)行的進(jìn)程完成其任務(wù)后,

釋放對CPU的控制

2)等待資源。由于等待某些資源或事件,正在

運(yùn)行的進(jìn)程不得不放棄CPU

2.進(jìn)程調(diào)度的時機(jī)3)運(yùn)行到時。在分時系統(tǒng)中,當(dāng)前進(jìn)程使用完規(guī)

定的時間片,時鐘中斷使該進(jìn)程讓

出CPU

4)發(fā)現(xiàn)標(biāo)志。核心處理完中斷或陷入事件后,

發(fā)現(xiàn)系統(tǒng)中“重新調(diào)度”標(biāo)志被置上

(1)保存處理器的上下文,包括程序計(jì)數(shù)器和其它寄存器(2)用新狀態(tài)和其它相關(guān)信息更新正在運(yùn)行

進(jìn)程的PCB3.進(jìn)程上下文切換(3)把原來的進(jìn)程移至就緒或等待隊(duì)列(4)選擇另一就緒進(jìn)程并更新被選進(jìn)程PCB

(5)從被選中進(jìn)程中重裝入CPU上下文

3.6.1進(jìn)程調(diào)度

調(diào)度方式采用“搶占式優(yōu)先級”方式調(diào)度策略3.5Linux系統(tǒng)中的進(jìn)程調(diào)度

SCHED_FIFO適合于實(shí)時進(jìn)程2)SCHED_RR對應(yīng)“時間片輪轉(zhuǎn)法”,適合于

每次運(yùn)行需要較長時間的實(shí)時進(jìn)程3)SCHED_OTHER是傳統(tǒng)的UNIX調(diào)度策略,

適合于交互式的分時進(jìn)程

1)當(dāng)前進(jìn)程調(diào)用nanosleep()或者pause(),使自己進(jìn)入睡眠狀態(tài),主動讓出一段時間CPU的使用權(quán)

3.調(diào)度時機(jī)2)進(jìn)程終止,永久地放棄對CPU的使用

3)在時鐘中斷處理程序執(zhí)行過程中,發(fā)現(xiàn)當(dāng)前進(jìn)程連續(xù)

運(yùn)行的時間過長

4)當(dāng)喚醒一個睡眠進(jìn)程時,發(fā)現(xiàn)被喚醒的進(jìn)程比當(dāng)前進(jìn)

程更有資格運(yùn)行

5)一個進(jìn)程通過執(zhí)行系統(tǒng)調(diào)用來改變調(diào)度策

溫馨提示

  • 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

提交評論