操作系統(tǒng)內核的IO子系統(tǒng)_第1頁
操作系統(tǒng)內核的IO子系統(tǒng)_第2頁
操作系統(tǒng)內核的IO子系統(tǒng)_第3頁
操作系統(tǒng)內核的IO子系統(tǒng)_第4頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、1操作系統(tǒng)內核的操作系統(tǒng)內核的I/O子系統(tǒng)子系統(tǒng)2內核內核I/O子系統(tǒng)子系統(tǒng)n內核與內核與I/O有關服務:有關服務: I/O調度、調度、緩沖緩沖、高速緩沖高速緩沖、spooling、設備預訂、錯誤處理、設備預訂、錯誤處理.n內核內核I/O子系統(tǒng)負責:子系統(tǒng)負責:l文件和設備命名空間的管理文件和設備命名空間的管理l文件和設備訪問控制文件和設備訪問控制l操作控制(操作控制(for example,a moderm cannot seek())l文件系統(tǒng)空間的分配文件系統(tǒng)空間的分配l設備分配設備分配l緩沖、高速緩存、假脫機緩沖、高速緩存、假脫機lI/O調度調度l設備狀態(tài)監(jiān)控、錯誤處理、失敗恢復設備狀

2、態(tài)監(jiān)控、錯誤處理、失敗恢復l設備驅動程序的配置和初始化設備驅動程序的配置和初始化3I/OI/O調度調度nI/OI/O調度調度:調度一組調度一組I/OI/O請求就是確定一個好的順序來執(zhí)請求就是確定一個好的順序來執(zhí)行這些請求。行這些請求。l某些I/O需要按設備隊列的順序-先來先服務先來先服務l 某些操作系統(tǒng)嘗試著公平-優(yōu)先級高者優(yōu)先優(yōu)先級高者優(yōu)先l 磁盤I/O調度n實現(xiàn)lOS通過為每個設備維護一個請求隊列來實現(xiàn)調度。l可以試圖公平,也可以根據(jù)不同的優(yōu)先級進行I/O調度。l其他方法:緩沖、高速緩沖、假脫機4緩沖buffern緩沖緩沖 Buffering用來保存在兩設備之間或在設備和應用程序之間所傳輸

3、數(shù)據(jù)的內存區(qū)域。n緩沖區(qū)管理:為了解決緩沖區(qū)管理:為了解決CPU與與I/O之間速度不匹配的之間速度不匹配的矛盾矛盾,在它們之間配置了緩沖區(qū)。這樣設備管理程,在它們之間配置了緩沖區(qū)。這樣設備管理程序又要負責管理緩沖區(qū)的建立、分配和釋放。序又要負責管理緩沖區(qū)的建立、分配和釋放。n緩沖作用:緩沖作用:l解決設備速度不匹配解決設備速度不匹配l解決設備傳輸塊的大小不匹配解決設備傳輸塊的大小不匹配l為了維持為了維持拷貝語義拷貝語義“copy semantics”要求要求n單緩沖、雙緩沖、多緩沖、緩沖池單緩沖、雙緩沖、多緩沖、緩沖池5高速緩存高速緩存n高速緩存高速緩存 Caching高速緩存(cache):

4、是可以保留數(shù)據(jù)拷貝的高速內存。n緩沖與高速緩存的差別是緩沖只是保留數(shù)據(jù)僅有的一緩沖只是保留數(shù)據(jù)僅有的一個現(xiàn)存拷貝個現(xiàn)存拷貝,而根據(jù)定義高速緩存只是提供了一個駐留在其他地方的數(shù)據(jù)的一個高速拷貝。n高速緩存和緩沖是兩個不同的功能,但有時一塊內存區(qū)域也可以同時用于兩個目的。l當內核接收到I/O請求時,內核首先檢查高速緩存以確定相應文件的內容是否在內存中。如果是,物理磁盤I/O就可以避免或延遲。6假脫機技術假脫機技術nSPOOLing(Simultaneous Peripheral Operation On Line),稱為假脫機技術。:用來保存設備輸出的緩沖,這些設備如打印機不能接收交叉的數(shù)據(jù)流。l

5、操作系統(tǒng)通過截取對打印機的輸出來解決這一問題。應用程序的輸出先是假脫機到一個獨立的磁盤文件上。當應用程序完成打印時,假脫機系統(tǒng)將相應的待送打印機的假脫機文件進行排隊nPrinting:打印機雖然是獨享設備,通過SPOOLing技術,可以將它改造為一臺可供多個用戶共享的設備。7設備預訂和錯誤處理設備預訂和錯誤處理n設備預訂設備預訂提供對設備的獨占訪問提供對設備的獨占訪問l分配和再分配的系統(tǒng)調用l有可能產(chǎn)生死鎖有可能產(chǎn)生死鎖n錯誤處理錯誤處理 Error Handling l操作系統(tǒng)可以恢復磁盤讀,設備無效,暫時的失敗l當I/O失敗時,大多數(shù)返回一個錯誤碼 l系統(tǒng)日志記錄了出錯報告8內核數(shù)據(jù)結構內

6、核數(shù)據(jù)結構n內核需要保存留I/O組件使用的狀態(tài)信息,包括打開文件表,網(wǎng)絡連接,字符設備狀態(tài)等n許多復雜的數(shù)據(jù)結構用來跟蹤緩沖,內存分配,及“臟”塊n某些OS用面向對象的方法和消息傳遞的方法來實現(xiàn)I/O9UNIX I/O內核內核結結構構10轉換轉換I/O請求為硬件操作請求為硬件操作I/O請求到硬件操作請求到硬件操作n考慮一個考慮一個進程從磁盤中讀取一個文件過程進程從磁盤中讀取一個文件過程l確定保存文件的設備確定保存文件的設備l轉換名字到設備的表示法轉換名字到設備的表示法l把數(shù)據(jù)從磁盤讀到緩沖區(qū)中把數(shù)據(jù)從磁盤讀到緩沖區(qū)中l(wèi)通知請求進程數(shù)據(jù)現(xiàn)在是有效的通知請求進程數(shù)據(jù)現(xiàn)在是有效的l把控制權返回給進程

7、把控制權返回給進程11I/O請求的周期數(shù)據(jù)已在緩沖區(qū)啟動I/O設備12習題分析1在操作系統(tǒng)中,用戶在使用在操作系統(tǒng)中,用戶在使用I/O設備時,通常采用設備時,通常采用 A設備的絕對號設備的絕對號 B設備的相對號設備的相對號C虛擬設備號虛擬設備號 D設備名設備名2在現(xiàn)代操作系統(tǒng)中采用緩沖技術的主要目的是在現(xiàn)代操作系統(tǒng)中采用緩沖技術的主要目的是 A.改善用戶編程環(huán)境改善用戶編程環(huán)境 B.提高提高CPU的處理速度的處理速度C.提高提高CPU和設備之間的并行程度和設備之間的并行程度 D.實現(xiàn)與設備無關性實現(xiàn)與設備無關性 3. 設備的打開、關閉、讀、寫等操作是由設備的打開、關閉、讀、寫等操作是由 完成的。完成的。A用戶程序用戶程序 B編譯程序編譯程序 C設備分配程序設備分配程序 D設備驅動程序設備驅動程序 13習題分析4I/O系統(tǒng)有三種常用方式來與主機交換數(shù)據(jù)系統(tǒng)有三種常用方式來與主機交換數(shù)據(jù),它們是程序輪詢方式、中斷方式和,它們是程序輪詢方式、中斷方式和方式,其中方式主要由硬件來實方式,其中方式主要由硬件來實現(xiàn),此時高速外設和內存之間進行數(shù)據(jù)交現(xiàn),此時高速外設和內存之間進行數(shù)據(jù)交換換 。

溫馨提示

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

評論

0/150

提交評論