N計(jì)算機(jī)操作系統(tǒng)教程第三章_第1頁
N計(jì)算機(jī)操作系統(tǒng)教程第三章_第2頁
N計(jì)算機(jī)操作系統(tǒng)教程第三章_第3頁
N計(jì)算機(jī)操作系統(tǒng)教程第三章_第4頁
N計(jì)算機(jī)操作系統(tǒng)教程第三章_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(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é)院3.1

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

用戶在程序中直接使用系統(tǒng)調(diào)用指令來調(diào)用操作系統(tǒng)的有關(guān)功能。3.系統(tǒng)調(diào)用執(zhí)行過程4.處理機(jī)的狀態(tài)及特權(quán)指令管態(tài):

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

處理機(jī)在執(zhí)行用戶程序和其它系統(tǒng)應(yīng)用程序時(shí)所處的狀態(tài)3.1.2作業(yè)控制級(jí)接口作業(yè)級(jí)接口:是操作系統(tǒng)為用戶在作業(yè)一級(jí)請求系統(tǒng)服務(wù)而設(shè)置的脫機(jī)用戶接口(批處理)——作業(yè)控制語言這種接口主要是用于批處理系統(tǒng)聯(lián)機(jī)用戶接口(交互式)——命令級(jí)接口(鍵盤命令)用于以交互方式請求操作系統(tǒng)服務(wù)命令行接口圖用用戶界面3.2作業(yè)管理3.2.1作業(yè)的基本概念作業(yè):用戶在一次計(jì)算過程中或一次事務(wù)處理過程中,要求計(jì)算機(jī)系統(tǒng)所做工作的總稱。作業(yè)步:一個(gè)作業(yè)可劃分成若干部分,處理作業(yè)的各個(gè)獨(dú)立的子任務(wù)稱為一個(gè)作業(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ī)對(duì)話的方式來控制作業(yè)的運(yùn)行。為聯(lián)機(jī)用戶接口方式接口方式:命令驅(qū)動(dòng)方式窗口系統(tǒng)與菜單驅(qū)動(dòng)方式命令文件方式命令驅(qū)動(dòng)方式用戶通過控制臺(tái)終端輸入操作系統(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)的通信通過一個(gè)輸入/輸出裝置來實(shí)現(xiàn),由一個(gè)終端處理程序管理和控制直接影響命令接口的一些問題回送顯示(Echoing)提前打入(Typeahead)字符變換行緩沖中斷字符(BreakCharacters)命令解釋程序兩種處理方法:由終端命令解釋程序直接處理由子進(jìn)程代為處理窗口系統(tǒng)與菜單驅(qū)動(dòng)方式命令行方式:要求用戶記憶命令格式圖形用戶接口方式:用戶可利用鼠標(biāo)對(duì)屏幕上的圖標(biāo)進(jìn)行操作,完成與操作系統(tǒng)的交互,從而減少記憶內(nèi)容,方便用戶使用。圖形用戶接口的技術(shù)基礎(chǔ):高分辯顯示器和鼠標(biāo)效率沒有命令行方式高命令文件方式把一系列命令組裝成文件的方法,然后用文件名作為命令名執(zhí)行另外一系列命令針對(duì)大量順序操作功能而設(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ī)允許命令加入注釋出錯(cuò)時(shí)允許用戶干預(yù)可把輸入傳給程序,可有循環(huán)、分支、轉(zhuǎn)移等3.3批處理作業(yè)的管理3.3.1批處理作業(yè)的組織3.3.2批處理作業(yè)的輸入3.3.3作業(yè)控制塊是作業(yè)的描述信息與控制信息批處理系統(tǒng)作業(yè)處理把對(duì)作業(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è)控制命令將用戶對(duì)作業(yè)的意圖寫成作業(yè)說明書,實(shí)現(xiàn)對(duì)作業(yè)的控制。表達(dá)用戶對(duì)作業(yè)的控制意圖內(nèi)容:作業(yè)的基本描述、作業(yè)控制描述、資源要求描述作業(yè)控制塊

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

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

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

作業(yè)調(diào)度的功能1)記錄系統(tǒng)中各個(gè)作業(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.性能評(píng)價(jià)標(biāo)準(zhǔn)(1)調(diào)度策略的選擇1)提高處理機(jī)與外設(shè)的并行程度2)提高主存的利用效率3)提高作業(yè)的吞吐量4)作業(yè)調(diào)度算法應(yīng)盡量簡單,使系統(tǒng)的時(shí)間和空間開銷最?。?)作業(yè)調(diào)度性能衡量1)周轉(zhuǎn)時(shí)間作業(yè)i的周轉(zhuǎn)時(shí)間:Ti=Tei–Tsi作業(yè)的平均周轉(zhuǎn)時(shí)間:2)帶權(quán)周轉(zhuǎn)時(shí)間作業(yè)i的帶權(quán)周轉(zhuǎn)時(shí)間:Wi=Ti∕TriTei:作業(yè)i的完成時(shí)間Tsi:作業(yè)i的提交時(shí)間Ti:作業(yè)i的周轉(zhuǎn)時(shí)間Tri:作業(yè)i的執(zhí)行時(shí)間作業(yè)的平均帶權(quán)周轉(zhuǎn)時(shí)間:(1)先來先服務(wù)(FCFS)

3.常用的作業(yè)調(diào)度算法優(yōu)點(diǎn):算法簡單、便于實(shí)現(xiàn)缺點(diǎn):導(dǎo)致短作業(yè)等待時(shí)間過長

作業(yè)名進(jìn)入輸入井時(shí)間需計(jì)算時(shí)間需內(nèi)存量(KB)A8:064215B8:183060C8:362450D9:182410E9:181220(2)短作業(yè)優(yōu)先算法(SJF)優(yōu)點(diǎn):作業(yè)平均等待時(shí)間最小和作業(yè)吞吐重量大缺點(diǎn):若系統(tǒng)不斷接納新作業(yè),則可能導(dǎo)致大作業(yè)長期等待

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

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

作業(yè)優(yōu)先數(shù)=(等待時(shí)間)2-所需運(yùn)行時(shí)間-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ù)后,

釋放對(duì)CPU的控制

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

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

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

定的時(shí)間片,時(shí)鐘中斷使該進(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)先級(jí)”方式調(diào)度策略3.5Linux系統(tǒng)中的進(jìn)程調(diào)度

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

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

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

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

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

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

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

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

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

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

自身的優(yōu)先權(quán)(如nice命令),從而引起立即調(diào)度。

3.6.3系統(tǒng)初啟3.6.2shell基本工作原理a.硬件檢測

b.加載引導(dǎo)程序

1)bootsect.S,這是Linux的引導(dǎo)扇區(qū)的源代碼,匯編后不能超過512字節(jié).2)Setup.S,這是輔助程序的一部分.3)Video.S,這是另一部分輔助程序,用于引導(dǎo)過程中的屏幕顯示.c.系統(tǒng)初始化

d.用戶登錄

3.1.2作業(yè)控制級(jí)接口

溫馨提示

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

評(píng)論

0/150

提交評(píng)論