




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第7章 輸入/輸出管理 本章內(nèi)容提要nI/O管理概述n設(shè)備分配nI/O軟件層次n磁盤調(diào)度和管理7.1 I/O管理概述 7.1.1 I/O設(shè)備分類和標(biāo)識1設(shè)備分類 可以從不同角度對外部設(shè)備進(jìn)行分類,按照工作特性可把它們分成存儲設(shè)備和輸入/輸出設(shè)備兩大類。(1)存儲設(shè)備 它們是計算機用來存儲信息的主要設(shè)備。(2)輸入/輸出設(shè)備 輸入設(shè)備是計算機用來接收來自外部世界信息的設(shè)備 輸出設(shè)備是將計算機加工處理好的信息送向外部世界的設(shè)備 n還可以從其他角度對設(shè)備進(jìn)行分類。例如:按傳輸速率的快慢n按設(shè)備的共享屬性分類,分為獨占設(shè)備、共享設(shè)備和虛擬設(shè)備 I/O設(shè)備分類和標(biāo)識2設(shè)備標(biāo)識n系統(tǒng)按某種原則為每臺設(shè)備分
2、配惟一的號碼,用做硬件(設(shè)備控制器)區(qū)分和識別設(shè)備的代號,稱做設(shè)備絕對號(或絕對地址)。n操作系統(tǒng)為每類設(shè)備規(guī)定了一個編號,稱做設(shè)備類型號。如在UNIX系統(tǒng)中,設(shè)備類型號稱做主設(shè)備號。n設(shè)備相對號,是用戶自己規(guī)定的所用同類設(shè)備中的第幾臺。7.1.2 I/O系統(tǒng)結(jié)構(gòu)不同規(guī)模的計算機系統(tǒng),其I/O系統(tǒng)結(jié)構(gòu)存在差異。在大多數(shù)微型機和小型機中,都使用總線I/O系統(tǒng)結(jié)構(gòu)總線I/O系統(tǒng)結(jié)構(gòu)示意圖 7.1.3 設(shè)備控制器nI/O設(shè)備一般由機械和電子兩部分組成n電子部分稱做設(shè)備控制器或適配器n操作系統(tǒng)總是通過設(shè)備控制器實施對設(shè)備的控制和操作n控制器是可編址的設(shè)備1控制器接口n設(shè)備控制器有兩個方向的接口: 與主
3、機之間的系統(tǒng)接口 與設(shè)備驅(qū)動電路之間的低層次接口2控制器功能 實現(xiàn)主機和設(shè)備之間的通信控制,進(jìn)行端口地址譯碼。 把計算機的數(shù)字信號轉(zhuǎn)換成機械部分能夠識別的模擬信號,或者反過來。 實現(xiàn)數(shù)據(jù)的緩沖。 接收主機發(fā)來的控制命令。 將設(shè)備和控制器當(dāng)前所處的狀態(tài)提供給主機。3存儲器映像I/On為了實現(xiàn)與CPU通信,每個控制器都有幾個寄存器: 控制寄存器 狀態(tài)寄存器 數(shù)據(jù)寄存器 除控制寄存器外,很多設(shè)備還有數(shù)據(jù)緩沖區(qū)。nCPU與控制寄存器和設(shè)備數(shù)據(jù)緩沖區(qū)的基本通信方式: 為每個控制寄存器分配一個I/O端口號 把所有控制寄存器映像到存儲器空間存儲器映像I/O(Memory-Mapped I/O)。內(nèi)存和I/O
4、地址空間的三種映像方式 7.1.4 I/O系統(tǒng)的控制方式1程序控制直接傳遞方式2程序查詢方式3中斷控制方式 其基本工作過程是: CPU發(fā)出啟動I/O設(shè)備的指令 I/O控制器啟動并控制I/O設(shè)備的工作 I/O控制器向CPU發(fā)送一個中斷信號 CPU將控制傳送給中斷處理程序 中斷處理程序執(zhí)行相應(yīng)的處理工作 CPU恢復(fù)對被中斷任務(wù)的處理工作4直接存儲器訪問方式(1)DMA控制方式的引入 為減少CPU被中斷的次數(shù),提高CPU的工作效率,增加數(shù)據(jù)傳輸安全(2)DMA的傳送操作DMA傳送操作過程 5獨立通道方式(1)通道的引入n為使CPU擺脫繁忙的I/O事務(wù),現(xiàn)代大、中型計算機都設(shè)置了專門處理I/O操作的機
5、構(gòu),這就是通道。n通道程序由通道執(zhí)行的指令組成。(2)通道類型 字節(jié)多路通道 它以字節(jié)作為信息輸送單位,服務(wù)于多臺低速I/O設(shè)備。 選擇通道。 它在同一時間里只能為一臺設(shè)備服務(wù),主要用于連接高速外部設(shè)備。 成組多路通道 它結(jié)合字節(jié)多路通道分時操作和選擇通道高速傳送的優(yōu)點,廣泛用于連接高速和中速設(shè)備。6I/O處理器方式7.1.5 I/O管理的功能1I/O軟件的主要目標(biāo)(1)與設(shè)備無關(guān) (也稱設(shè)備獨立性)n用戶程序應(yīng)與實際使用的物理設(shè)備無關(guān),由操作系統(tǒng)考慮因為實際設(shè)備不同而需要使用不同的設(shè)備驅(qū)動程序等問題。n用戶編寫程序時一般不再使用物理設(shè)備,而使用虛擬設(shè)備,由操作系統(tǒng)實現(xiàn)虛實對應(yīng) 。n sort
6、 output(2)統(tǒng)一命名(3)層次結(jié)構(gòu)(4)效率高2I/O管理的主要功能 (1)監(jiān)視設(shè)備狀態(tài) (2)進(jìn)行設(shè)備分配 (3)完成I/O操作 (4)緩沖管理與地址轉(zhuǎn)換7.2 設(shè)備分配7.2.1 與設(shè)備分配相關(guān)的因素 (1)I/O設(shè)備的固有屬性 (2)系統(tǒng)所采用的分配算法 (3)設(shè)備分配應(yīng)防止死鎖發(fā)生 (4)用戶程序與實際使用的物理設(shè)備無關(guān)7.2.2 設(shè)備分配技術(shù)1按使用性質(zhì)對設(shè)備分類 (1)獨占設(shè)備n獨占設(shè)備是不能同時共用的設(shè)備,即在一段時間內(nèi),該設(shè)備只允許一個進(jìn)程獨占。 (2)共享設(shè)備n共享設(shè)備是可由若干進(jìn)程同時共用的設(shè)備。 (3)虛擬設(shè)備n虛擬設(shè)備是利用某種技術(shù)把獨占設(shè)備改造成可由多個進(jìn)程共
7、用的設(shè)備。2設(shè)備分配技術(shù) (1)獨占分配 把獨占設(shè)備固定地分配給一個進(jìn)程,直至該進(jìn)程完成I/O操作并且釋放它為止。 (2)共享分配 由若干進(jìn)程共用同一設(shè)備 (3)虛擬分配 利用共享設(shè)備去實現(xiàn)獨占設(shè)備的功能,從而使獨占設(shè)備“感覺上”成為可共享的、快速的I/O設(shè)備。7.2.3 設(shè)備分配算法 (1)先來先服務(wù) (2)優(yōu)先級高的優(yōu)先服務(wù)7.2.4 SPOOLing系統(tǒng)n早期設(shè)備分配的虛擬技術(shù)是脫機方式 利用外圍計算機專門負(fù)責(zé)I/O工作 n解決了慢速外設(shè)與快速主機的匹配問題n存在如下缺點: 需要人工干預(yù),產(chǎn)生人工錯誤的機會多,且效率低; 周轉(zhuǎn)時間慢; 無法實現(xiàn)優(yōu)先級調(diào)度。 SPOOLing系統(tǒng)用常駐內(nèi)存
8、的進(jìn)程去模擬一臺外圍機 SPOOLing系統(tǒng)一般分為4個部分 : 存輸入部分 取輸入部分 存輸出部分 取輸出部分SPOOLing系統(tǒng)工作原理示意圖 n上述4個部分的工作可由輸入進(jìn)程IN和輸出進(jìn)程OUT完成 IN進(jìn)程負(fù)責(zé)存輸入和取輸入工作 OUT進(jìn)程負(fù)責(zé)存輸出和取輸出工作nSPOOLing可使一個作業(yè)的輸入/輸出與其他作業(yè)的計算重疊起來進(jìn)行nSPOOLing提供了非常重要的數(shù)據(jù)結(jié)構(gòu) 作業(yè)池n付出不少代價 占用大量的內(nèi)存作為外設(shè)之間傳送信息用的緩沖區(qū),它所用的表格也占用不少內(nèi)存空間; 占用大量磁盤空間作為輸入井和輸出井; 增加了系統(tǒng)的復(fù)雜性。 SPOOLing系統(tǒng)7.3 I/O軟件層次I/O軟件系
9、統(tǒng)的層次7.3.1 中斷處理程序7.3.2 設(shè)備驅(qū)動程序1設(shè)備驅(qū)動程序的功能 接受來自上層、與設(shè)備無關(guān)軟件的抽象讀寫請求,并且將該I/O請求排在請求隊列的隊尾,同時還要檢查I/O請求的合法性(如參數(shù)是否合法)。 取出請求隊列中隊首請求,且將相應(yīng)設(shè)備分配給它。 向該設(shè)備控制器發(fā)送命令,啟動該設(shè)備工作,完成指定的I/O操作。 處理來自設(shè)備的中斷。2設(shè)備驅(qū)動程序在系統(tǒng)中的位置通常,設(shè)備驅(qū)動程序與設(shè)備類型是一一對應(yīng)的。主設(shè)備號表示設(shè)備類型,而次設(shè)備號表示該類型的一個設(shè)備。設(shè)備驅(qū)動程序?qū)拥哪康氖菍诵腎/O子系統(tǒng)隱藏設(shè)備控制器的差別 設(shè)備驅(qū)動程序在系統(tǒng)中的邏輯位置示意圖 3設(shè)備驅(qū)動程序的特點 驅(qū)動程序的
10、主要作用是實現(xiàn)請求I/O的進(jìn)程與設(shè)備控制器之間的通信 驅(qū)動程序與設(shè)備特性密切相關(guān) 驅(qū)動程序可以動態(tài)安裝或加載 驅(qū)動程序與I/O控制方式相關(guān) 驅(qū)動程序與硬件密切相關(guān) 不允許驅(qū)動程序使用系統(tǒng)調(diào)用4設(shè)備驅(qū)動程序的框架 (1)設(shè)備驅(qū)動程序與外界的接口 驅(qū)動程序與操作系統(tǒng)內(nèi)核的接口 驅(qū)動程序與系統(tǒng)引導(dǎo)的接口 驅(qū)動程序與設(shè)備的接口(2)設(shè)備驅(qū)動程序的組成 驅(qū)動程序的注冊與注銷 設(shè)備的打開與釋放 設(shè)備的讀/寫操作 設(shè)備的控制操作 設(shè)備的中斷和輪詢處理7.3.3 與設(shè)備無關(guān)的操作系統(tǒng)I/O軟件與設(shè)備無關(guān)的操作系統(tǒng)I/O軟件的功能示意圖 1設(shè)備驅(qū)動程序的統(tǒng)一接口 新的驅(qū)動程序遵循驅(qū)動程序接口的約定 I/O設(shè)備如
11、何命名 保護(hù)問題2緩沖技術(shù) (1)緩沖技術(shù)的引入 緩沖的基本思想 主要目的是: 緩解CPU與I/O設(shè)備間速度不匹配的矛盾。 提高它們之間的并行性。 減少對CPU的中斷次數(shù),放寬CPU對中斷響應(yīng)時間的要求。 (2)緩沖區(qū)的設(shè)置 單緩沖。適宜數(shù)據(jù)到達(dá)率與離去率相差很大的情況 雙緩沖。適宜信息的輸入和輸出速率相同(或相差不大)的情況緩沖區(qū)的設(shè)置 雙緩沖工作示例 多緩沖為了解決陣發(fā)性I/O的速度不匹配問題,可以設(shè)立多個緩沖區(qū)。3出錯報告n根據(jù)錯誤產(chǎn)生的原因,可把I/O錯誤分為兩類: 程序設(shè)計錯誤 實際I/O錯誤。4分配和釋放獨占設(shè)備 處理請求的簡單辦法是讓進(jìn)程直接打開設(shè)備特別文件 另一種辦法是設(shè)立專門
12、機制,負(fù)責(zé)獨占設(shè)備的申請和釋放 5提供與設(shè)備無關(guān)的塊大小 不同磁盤的扇區(qū)大小可能不同。通過這部分軟件的作用,可隱藏這些差異,向高層提供統(tǒng)一的盤塊大小。7.3.4 用戶級I/O軟件n多數(shù)I/O軟件都在操作系統(tǒng)中,用戶空間中也有一小部分。通常,它們以庫函數(shù)形式出現(xiàn)。n用戶空間中另一個重要的I/O軟件是SPOOLing系統(tǒng)。7.4 磁盤調(diào)度和管理硬盤結(jié)構(gòu)示意圖磁盤的結(jié)構(gòu)7.4.1 磁盤調(diào)度1磁盤存取時間 尋道時間:是指系統(tǒng)把磁頭移到相應(yīng)的磁道或柱面上所用時間; 旋轉(zhuǎn)延遲時間:是指一旦磁頭到達(dá)指定磁道、必須等待所需要的扇區(qū)轉(zhuǎn)到讀/寫頭下所用的延遲時間; 傳輸時間:是指信息實際在盤和內(nèi)存之間進(jìn)行傳送所花
13、費的時間。 一次磁盤服務(wù)的總時間就是這三者之和 n減少平均尋道時間就可以顯著地改善系統(tǒng)性能。2磁盤調(diào)度算法(1)先來先服務(wù)法(First-Come, First-Served,F(xiàn)CFS)先來先服務(wù)調(diào)度算法示例設(shè)磁頭最初在53道上 總共移動了640個磁道 有一個請求磁盤服務(wù)的隊列,要訪問的磁道分別是 98,183,37,122,14,124,65,67最短尋道時間優(yōu)先調(diào)度算法示例(2)最短尋道時間優(yōu)先法(Shortest Seek Time First, SSTF)當(dāng)前磁頭在53道上 請求訪問磁道序列:98,183,37,122,14,124,65,67磁頭共移動了236個磁道 掃描調(diào)度算法示例
14、(3)掃描法(SCAN)請求訪問磁道序列: 98,183,37,122,14,124,65,67磁頭最初在53道上。正向0道方向移動 (4)巡回掃描法(C-SCAN)巡回掃描調(diào)度算法示例請求訪問磁道序列: 98,183,37,122,14,124,65,67磁頭最初在53道上,正向右方移動(5)尋查法(LOOK)LOOK算法也稱“電梯”算法請求訪問磁道序列: 98,183,37,122,14,124,65,67磁頭最初在53道上,正向0道方向移動電梯調(diào)度算法示例 3磁盤調(diào)度算法的選擇 選最佳方案與多種因素有關(guān): 任何調(diào)度算法的性能都依賴于I/O請求的數(shù)量和類型 文件的物理存放方式對磁盤請求有很
15、大影響 目錄和索引塊的位置對I/O請求隊列有重要影響 旋轉(zhuǎn)延遲時間的影響7.4.2 磁盤管理1磁盤格式化n 低級格式化或物理格式化(1)格式化后扇區(qū)的格式n低級格式化按照規(guī)定的格式為每個扇區(qū)填充控制信息。n一般來說,扇區(qū)格式由三部分組成,即扇區(qū)頭、數(shù)據(jù)區(qū)(通常為512 B)和扇區(qū)尾(2)磁盤分區(qū)和邏輯格式化n第一步是分區(qū),即把磁盤分成一個或多個柱面組。n第二步工作是邏輯格式化,即建立文件系統(tǒng)。 MS-DOS的磁盤布局2引導(dǎo)塊結(jié)構(gòu)整個引導(dǎo)程序保存在稱做引導(dǎo)塊的分區(qū)中,該分區(qū)在盤上的位置是固定的,通常在起始扇區(qū)。 3壞塊處理 (1)壞塊的產(chǎn)生n一類是“天生”的,即廠家生產(chǎn)時該盤就存在瑕疵,如磁層有缺陷。n另一類是“繼發(fā)”的,即在使用過程中因外界干擾或故障而造成的磁層損壞。 (2)處理壞塊的方式 控制器處理方式替代方式n直接替代方式:是對磁道上的扇區(qū)依次編號,在最后留出備用扇區(qū)。n繞過壞塊方式:是當(dāng)發(fā)現(xiàn)壞塊時,就繞過它,即不為它編號,接著從后面的扇區(qū)繼續(xù)編號。 操作系統(tǒng)處理方式 操作系統(tǒng)首先通過讀盤上的壞塊表或親自檢測整個磁
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 汽車銷售渠道推廣服務(wù)合同
- 香菇購銷合同
- 云存儲技術(shù)及服務(wù)解決方案
- 新材料產(chǎn)業(yè)技術(shù)創(chuàng)新合作項目協(xié)議書范本
- 房屋買賣協(xié)議書合同
- 汽車零件采購合同
- 軍婚自愿離婚協(xié)議
- 三年期新型能源科技開發(fā)合作協(xié)議
- 影視制作行業(yè)演員角色表現(xiàn)免責(zé)協(xié)議
- 公司工程裝修合同
- 項目管理-配套設(shè)備元器件原材料來源情況報告模板
- 專升本專業(yè)人才培養(yǎng)方案-通信工程
- 第25課これは明日會議で使う資料です課件(14張)
- 如何在本機上架設(shè)服務(wù)器
- 一年級寫字下學(xué)期課件(PPT 38頁)
- 《實用日本語應(yīng)用文寫作》全套電子課件完整版ppt整本書電子教案最全教學(xué)教程整套課件
- 怎樣處理課堂突發(fā)事件
- 采礦學(xué)課程設(shè)計-隆德煤礦1.8Mta新井開拓設(shè)計
- 中藥藥劑學(xué)講義(英語).doc
- 【課件】Unit1ReadingforWriting課件高中英語人教版(2019)必修第二冊
- Q∕GDW 10799.6-2018 國家電網(wǎng)有限公司電力安全工作規(guī)程 第6部分:光伏電站部分
評論
0/150
提交評論