操作系統(tǒng)課件第5章_第1頁
操作系統(tǒng)課件第5章_第2頁
操作系統(tǒng)課件第5章_第3頁
操作系統(tǒng)課件第5章_第4頁
操作系統(tǒng)課件第5章_第5頁
已閱讀5頁,還剩52頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第五章設(shè)備管理5.1I/O系統(tǒng)I/O系統(tǒng):實(shí)現(xiàn)數(shù)據(jù)輸入、輸出及數(shù)據(jù)存儲(chǔ)的系統(tǒng)。包括:設(shè)備、設(shè)備控制器、高速總線、通道。I/O設(shè)備類型使用特性:存儲(chǔ)設(shè)備、輸入輸出設(shè)備速度:低:鍵盤、中:打印機(jī)、高:磁盤。信息交換單位:塊設(shè)備:磁盤、字符設(shè)備:打印機(jī)設(shè)備的共享屬性:獨(dú)占設(shè)備:臨界資源、共享設(shè)備:磁盤、虛擬設(shè)備:將獨(dú)占設(shè)備虛擬為幾個(gè)邏輯設(shè)備。I/O設(shè)備與控制器之間的接口設(shè)備不直接與CPU通信,而與設(shè)備控制器通信。CPU―――設(shè)備控制器―――設(shè)備I/O設(shè)備與設(shè)備控制器間有三種類型的信號(hào),各對(duì)應(yīng)一條信號(hào)線。數(shù)據(jù)信號(hào):雙向,有緩存控制信號(hào):控制器發(fā)給設(shè)備;要求其完成相關(guān)操作狀態(tài)信號(hào):設(shè)備發(fā)給控制器,顯示設(shè)備當(dāng)前狀態(tài)設(shè)備控制器接收從CPU發(fā)來的命令,并控制I/O設(shè)備工作。I/O通道在CPU與I/O設(shè)備之間增加設(shè)備控制器,減少了CPU對(duì)I/O的干預(yù),但當(dāng)系統(tǒng)配置的設(shè)備較多時(shí),I/O操作較為頻繁,CPU可能完全陷入I/O處理,降低計(jì)算機(jī)系統(tǒng)的效率,解決的方法就是用通道技術(shù)。通道:專門處理I/O操作的處理機(jī)。通道在CPU的控制下獨(dú)立地執(zhí)行通道程序,對(duì)外部設(shè)備的I/O操作進(jìn)行控制,實(shí)現(xiàn)內(nèi)存與外設(shè)之間成批的數(shù)據(jù)交換。 通道=I/O處理機(jī)單通路I/O系統(tǒng)多通路I/O系統(tǒng)總線系統(tǒng)5.2I/O控制方式四個(gè)階段:程序I/O——中斷——DMA——通道。趨勢(shì):提高主機(jī)與設(shè)備的并行度。程序I/O方式CPU等待I/OCPU資源浪費(fèi)極大例:從終端向內(nèi)存輸入一個(gè)字符用100ms,其中99.9ms設(shè)備進(jìn)行輸入工作,CPU將字符送入內(nèi)存用0.1ms,99.9ms+0.1ms=100msCPU有99.9ms在忙等中斷驅(qū)動(dòng)I/O控制方式例:從終端向內(nèi)存輸入一個(gè)字符用100ms,其中99.9ms設(shè)備進(jìn)行輸入工作,CPU將字符送入內(nèi)存用0.1ms,99.9ms+0.1ms=100msCPU利用99.9ms的時(shí)間處理其他任務(wù),I/O完成后由控制器發(fā)出中斷信號(hào)。直接存儲(chǔ)器訪問(DMA)I/O控制方式中斷I/O方式,每傳送一個(gè)“字節(jié)”產(chǎn)生一次中斷。不利于塊設(shè)備的I/O。DMA:每傳送一個(gè)數(shù)據(jù)塊中斷一次。設(shè)備與內(nèi)存直接交換數(shù)據(jù)。DMA控制器的組成CR(命令/狀態(tài));DR(數(shù)據(jù)寄存器);MAR(內(nèi)存地址);DC(數(shù)據(jù)計(jì)數(shù)器)DMA方式的工作流程CR(命令/狀態(tài));DR(數(shù)據(jù)寄存器);MAR(內(nèi)存地址);DC(數(shù)據(jù)計(jì)數(shù)器)I/O通道控制方式

DMA方式:對(duì)離散塊的讀取仍需要多次中斷。通道方式:CPU只需給出通道程序首址、要訪問I/O設(shè)備,通道程序可完成一組塊操作。例:六條通道指令組成的通道程序。

操作PRecord計(jì)數(shù)內(nèi)存地址Write0080813Write001401034Write01605830Write013002000Write002501850Write11250720通道是一種特殊的(),具有()能力。主機(jī)的CPU與通道可以并行工作,并通過()實(shí)現(xiàn)彼此之間的通信和同步。1、I/O設(shè)備2、設(shè)備控制器3、處理機(jī)4、I/O控制器1、執(zhí)行I/O指令集2、執(zhí)行CPU指令集3、傳輸I/O命令4、運(yùn)行I/O進(jìn)程1、I/O指令2、I/O中斷3、I/O指令和I/O中斷4、操作員如果I/O設(shè)備與存儲(chǔ)設(shè)備進(jìn)行數(shù)據(jù)交換不經(jīng)過CPU來完成,這種數(shù)據(jù)交換方式是_____。A、程序查詢B、中斷方式C、DMA方式在中斷驅(qū)動(dòng)方式中,CPU是以______為單位對(duì)I/O進(jìn)行干預(yù)的;DMA方式時(shí),是以______為單位進(jìn)行干預(yù)的;I/O通道方式是以______為單位進(jìn)行干預(yù)的。5.3緩沖管理緩沖的引入緩沖區(qū)是在內(nèi)存劃出的一定區(qū)域。1.緩和CPU和I/O設(shè)備間速度不匹配的矛盾。 如:計(jì)算——打印buffer——打印2.減少對(duì)CPU的中斷頻率 如:buffer越大,“buffer滿”信號(hào)發(fā)生頻率越低。3.提高CPU和I/O并行性單緩沖:當(dāng)進(jìn)程發(fā)出一I/O請(qǐng)求時(shí),OS為之分配一緩沖區(qū)。雙緩沖:為加快輸入輸出速度,引入雙緩沖技術(shù)。原理:首先輸入設(shè)備向buf1填入數(shù)據(jù),進(jìn)程從buf1提取數(shù)據(jù),同時(shí),輸入設(shè)備向buf2中填數(shù)據(jù)。當(dāng)buf1取空時(shí),進(jìn)程又從buf2中提取數(shù)據(jù),與此同時(shí)輸入設(shè)備向buf1填數(shù)。如此交替使用兩個(gè)緩沖區(qū),使CPU和設(shè)備的并行操作的程度進(jìn)一步提高。

循環(huán)緩沖:當(dāng)生產(chǎn)和消費(fèi)數(shù)據(jù)的速度相差甚遠(yuǎn)時(shí),要增加緩沖區(qū)的數(shù)量,引入循環(huán)緩沖技術(shù)。

類型:R:空緩沖;G:滿緩沖;C:當(dāng)前緩沖緩沖池:循環(huán)緩沖區(qū)一般用于特定的進(jìn)程,屬于專用緩沖區(qū),當(dāng)系統(tǒng)較大時(shí),為提高緩沖區(qū)的利用率,使用公用緩沖池,池中的緩沖區(qū)可供多個(gè)進(jìn)程共享。相同類型緩沖區(qū)鏈成一個(gè)隊(duì)列,形成以下三個(gè)隊(duì)列:空緩沖隊(duì)列emq、輸入隊(duì)列inq、輸出隊(duì)列outq。四個(gè)工作緩沖區(qū):hin:收容輸入數(shù)據(jù)(空)sin:提取輸入數(shù)據(jù)(裝滿輸入數(shù)據(jù))hout:收容輸出數(shù)據(jù)(空)sout:提取輸出數(shù)據(jù)(裝滿輸出數(shù)據(jù))5.4I/O軟件I/O軟件層次結(jié)構(gòu):低層軟件實(shí)現(xiàn)與硬件相關(guān)的操作,高層軟件向用戶提供一個(gè)友好、規(guī)范、清晰的界面I/O軟件設(shè)計(jì)的具體目標(biāo):①設(shè)備獨(dú)立性。屏蔽設(shè)備細(xì)節(jié)。②統(tǒng)一命名。使用設(shè)備邏輯名。③對(duì)錯(cuò)誤的處理。在低層解決錯(cuò)誤。④緩沖技術(shù)。屏蔽緩沖區(qū)差異。⑤設(shè)備的分配和釋放。避免死鎖。⑥I/O控制方式。屏蔽不同I/O控制方式的差異。產(chǎn)生I/O請(qǐng)求,格式化I/O;Spooling映射,保護(hù),分塊,緩沖,分配建立設(shè)備寄存器;檢查狀態(tài)當(dāng)I/O結(jié)束時(shí),喚醒驅(qū)動(dòng)器執(zhí)行I/O操作I/O軟件層次及功能中斷處理流程設(shè)備驅(qū)動(dòng)程序的處理過程將抽象要求轉(zhuǎn)化為具體要求檢查I/O請(qǐng)求的合法性讀出和檢查設(shè)備的狀態(tài)傳送必要的參數(shù)設(shè)置工作方式啟動(dòng)I/O設(shè)備設(shè)備獨(dú)立性概念(設(shè)備無關(guān)性)應(yīng)用程序獨(dú)立于具體使用的物理設(shè)備。在應(yīng)用程序中,使用邏輯設(shè)備名稱來請(qǐng)求使用某類設(shè)備。系統(tǒng)在實(shí)際執(zhí)行時(shí),必須使用物理設(shè)備名稱。設(shè)備獨(dú)立性軟件驅(qū)動(dòng)程序是一個(gè)與硬件緊密相關(guān)的軟件,為了實(shí)現(xiàn)設(shè)備獨(dú)立性,必須在其上設(shè)置一層軟件稱為設(shè)備獨(dú)立性軟件。用戶層的I/O軟件大部分的I/O軟件都在操作系統(tǒng)內(nèi)部,有一小部分在用戶層,包括與用戶程序鏈接在一起的庫函數(shù),以及完全運(yùn)行于內(nèi)核之外的一些程序。用戶層軟件必須通過一組系統(tǒng)調(diào)用來取得操作系統(tǒng)的服務(wù)。練習(xí)設(shè)備驅(qū)動(dòng)程序與()密切相關(guān),如果計(jì)算機(jī)中配置有一個(gè)光盤,一個(gè)軟盤,一個(gè)硬盤,此時(shí)應(yīng)為它們配置()種外存設(shè)備驅(qū)動(dòng)程序。如果系統(tǒng)中連接有四個(gè)相同的終端設(shè)備,此時(shí)應(yīng)為它們配置()個(gè)終端設(shè)備驅(qū)動(dòng)程序。程序員利用系統(tǒng)調(diào)用打開I/O設(shè)備時(shí),通常使用的設(shè)備標(biāo)識(shí)是()A.邏輯設(shè)備名B.物理設(shè)備名C.主設(shè)備號(hào)D.從設(shè)備號(hào)本地用戶通過鍵盤登陸系統(tǒng),首先獲得鍵盤輸入信息的程序時(shí)()。A.命令解釋程序B.中斷處理程序 C.系統(tǒng)調(diào)用程序 D.用戶登錄程序下列選項(xiàng)中,操作系統(tǒng)提供的給應(yīng)用程序的接口是()。A、系統(tǒng)調(diào)用B、中斷C、庫函數(shù)D、原語5.5設(shè)備分配

設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)包括:對(duì)設(shè)備、設(shè)備控制器、通道的分配設(shè)備控制表設(shè)備控制表集合(每個(gè)設(shè)備一張)控制器控制表,通道表,系統(tǒng)設(shè)備表系統(tǒng)設(shè)備表:整個(gè)系統(tǒng)一張,記錄了系統(tǒng)中全部設(shè)備及其驅(qū)動(dòng)程序地址。設(shè)備分配應(yīng)考慮的若干因素設(shè)備的固有屬性:共享+虛擬:注意調(diào)度的合理性;獨(dú)占:排它性分配,控制不好可能死鎖。分配算法:先來先服務(wù);優(yōu)先級(jí)高者優(yōu)先。安全性:安全分配:每進(jìn)程獲得一I/O后,即block,直到其I/O完成。不安全分配:需進(jìn)行安全性檢查,進(jìn)程執(zhí)行效率高。獨(dú)占設(shè)備分配程序基本的設(shè)備分配程序分配設(shè)備分配控制器分配通道設(shè)備分配程序的改進(jìn)增加設(shè)備的獨(dú)立性(申請(qǐng)的同類設(shè)備都忙,才阻塞)考慮多通路情況(所有控制器或通道都忙,進(jìn)程才進(jìn)入阻塞)SPOOLing技術(shù)通過多道程序技術(shù)將一臺(tái)物理CPU虛擬為多臺(tái)邏輯CPU,實(shí)現(xiàn)多個(gè)用戶共享一臺(tái)主機(jī)。通過SPOOLing技術(shù)將一臺(tái)物理I/O設(shè)備虛擬為多臺(tái)邏輯I/O設(shè)備,實(shí)現(xiàn)多個(gè)用戶共享一臺(tái)物理I/O設(shè)備。脫機(jī)輸入輸出方式SPOOLing技術(shù)(假脫機(jī)技術(shù)):在多道程序環(huán)境下,利用多道程序中的兩道程序模擬脫機(jī)輸入輸出中外圍機(jī)的功能,達(dá)到“脫機(jī)”輸入輸出的目的。作用:通過緩沖方式,將獨(dú)占設(shè)備改造為共享設(shè)備

SPOOLing系統(tǒng)的組成輸入設(shè)備輸出設(shè)備輸入進(jìn)程輸出進(jìn)程內(nèi)存輸入緩沖區(qū)內(nèi)存輸出緩沖區(qū)磁盤輸出井磁盤輸入井對(duì)低速設(shè)備操作——>變?yōu)閷?duì)輸入/出井操作。輸入井:暫存I/O設(shè)備輸入的數(shù)據(jù)輸出井:暫存用戶程序的輸出數(shù)據(jù)輸入緩沖區(qū):暫存由輸入設(shè)備送來的數(shù)據(jù),以后再傳送到輸入井輸出緩沖區(qū):暫存從輸出井送來的數(shù)據(jù),以后再傳送給輸出設(shè)備Spooling實(shí)例輸入進(jìn)程n請(qǐng)求輸入―>SPi為n在輸入井中分配空間—>設(shè)備數(shù)據(jù)由輸入buf送輸入井CPU空閑—送到內(nèi)存執(zhí)行。輸出:(打?。┻M(jìn)程n請(qǐng)求打印—>SPo為n在輸出井中申請(qǐng)磁盤空間—>將數(shù)據(jù)由內(nèi)存轉(zhuǎn)到輸出井打印機(jī)空—>取輸出井中對(duì)應(yīng)數(shù)據(jù)—>輸出buf—>打印SPOOLing系統(tǒng)的特點(diǎn)

提高了I/O的速度。將獨(dú)占設(shè)備改造為共享設(shè)備。實(shí)現(xiàn)了虛擬設(shè)備功能。練習(xí)1、在采用SPOOLing技術(shù)的系統(tǒng)中,用戶的打印數(shù)據(jù)首先被送到()A.打印機(jī)B.磁盤固定區(qū)域C.內(nèi)存固定區(qū)域D.終端2、實(shí)現(xiàn)SPOOLing系統(tǒng)時(shí)必須在磁盤上辟出稱為__________和__________的專門區(qū)域,以存放作業(yè)信息和作業(yè)執(zhí)行結(jié)果。

5.6磁盤存儲(chǔ)器的管理磁盤的結(jié)構(gòu)和布局

工作時(shí),磁頭懸浮在盤片上方,不與盤片直接接觸。磁頭在高速旋轉(zhuǎn)的盤片上做徑向移動(dòng)。磁頭首先處于0磁道,完成讀寫經(jīng)歷三個(gè)階段:尋道:磁頭沿徑向移動(dòng),移到目標(biāo)扇區(qū)所在磁道的上方。尋道時(shí)間TS旋轉(zhuǎn)延遲:找到目標(biāo)磁道后通過盤片的旋轉(zhuǎn),使目標(biāo)扇區(qū)轉(zhuǎn)到磁頭的下方。旋轉(zhuǎn)延遲時(shí)間Tr數(shù)據(jù)傳輸:數(shù)據(jù)在磁盤與內(nèi)存之間的實(shí)際傳輸。數(shù)據(jù)傳輸時(shí)間Tt訪問時(shí)間:Ta=Ts+Tr+Tt集中放數(shù)據(jù),能更好提高傳輸效率。練習(xí)磁盤上的每一個(gè)物理塊要用三個(gè)參數(shù)來定位,首先要把移動(dòng)臂移動(dòng)并定位到不同盤面上具有相同編號(hào)的磁道位置,表示該位置的參數(shù)稱()號(hào)。

A.柱面

B.盤面

C.扇區(qū)

D.磁頭

設(shè)磁盤的轉(zhuǎn)速為10ms/轉(zhuǎn),盤面劃分10個(gè)扇區(qū),當(dāng)前磁頭在第三塊的開始位置,則花費(fèi)()毫秒的時(shí)間可以把第二塊的信息讀到主存(假設(shè),旋轉(zhuǎn)是按由塊號(hào)從小到大方向的)

A、1

B、2

C、9

D、10磁盤調(diào)度算法當(dāng)多個(gè)訪盤請(qǐng)求在等待時(shí),采用一定的調(diào)度算法,對(duì)這些請(qǐng)求的服務(wù)順序調(diào)整安排,減少設(shè)備機(jī)械運(yùn)動(dòng)帶來的時(shí)間浪費(fèi)。1先來先服務(wù)FCFS2最短尋道時(shí)間優(yōu)先SSTF3掃描(SCAN)算法4循環(huán)掃描(CSCAN)算法先來先服務(wù)FCFS最短尋道時(shí)間優(yōu)先SSTF掃描(SCAN)算法

循環(huán)掃描(CSCAN)算法

假設(shè)磁盤訪問序列:98,183,37,122,14,124,65,67讀寫頭起始位置:53安排磁頭服務(wù)序列計(jì)算磁頭移動(dòng)總距離(道數(shù))例先來先服務(wù)圖解98,183,37,122,14,124,65,67磁頭走過的總道數(shù):640

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論