版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、Northeastern University主要內(nèi)容主要內(nèi)容 I/O管理基本知識管理基本知識 I/O控制方式控制方式 緩緩沖技術(shù)沖技術(shù) 設(shè)設(shè)備分配與回收備分配與回收 磁磁盤存儲器的管理盤存儲器的管理 RAID技術(shù)技術(shù)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理2主要內(nèi)容主要內(nèi)容 I/O管理基本知識管理基本知識 I/O控制方式控制方式 緩緩沖技術(shù)沖技術(shù) 設(shè)設(shè)備分配與回收備分配與回收 磁磁盤存儲器的管理盤存儲器的管理 RAID技術(shù)技術(shù)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理3外設(shè)的分類外設(shè)的分類 按交互對象分類按交互對象分類 人機(jī)交互設(shè)備:如顯
2、示器、打印機(jī)、鍵盤、鼠標(biāo) 與其它電子設(shè)備交互的設(shè)備:磁盤、磁帶、傳感器、控制器 計(jì)算機(jī)之間的通信設(shè)備:網(wǎng)卡、調(diào)制解調(diào)器 按交互方向分類按交互方向分類 輸入設(shè)備:鍵盤、鼠標(biāo)、掃描儀 輸出設(shè)備:顯示器、打印機(jī) 輸入/輸出設(shè)備:磁盤、網(wǎng)卡操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理4外設(shè)的分類外設(shè)的分類 從程序使用角度分類從程序使用角度分類 邏輯設(shè)備:計(jì)算機(jī)程序中使用的設(shè)備 物理設(shè)備:實(shí)際完成I/O操作的設(shè)備 按外設(shè)特性分類按外設(shè)特性分類 使用特性:存儲、輸入/輸出、終端 數(shù)據(jù)傳輸率:低速(如鍵盤)、中速(打印機(jī))、高速(磁盤、網(wǎng)卡) 信息組織特征 字符設(shè)備:以字符為單位存儲
3、或傳輸信息,一般不能被尋址 塊設(shè)備:以數(shù)據(jù)塊為單位存儲或傳輸信息,一般可尋址操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理5外設(shè)的分類外設(shè)的分類 從資源分配角度分類從資源分配角度分類 獨(dú)占設(shè)備:在一段時間內(nèi)只允許有一個進(jìn)程使用的設(shè)備,一般為低速I/O設(shè)備,如打印機(jī),磁帶等 共享設(shè)備:在一段時間內(nèi)可有多個進(jìn)程并發(fā)使用的設(shè)備,多個進(jìn)程以交叉的方式來使用設(shè)備,其資源利用率高,如硬盤 虛擬設(shè)備:在一類設(shè)備上模擬另一類設(shè)備,常用共享設(shè)備模擬獨(dú)占設(shè)備,用高速設(shè)備模擬低速設(shè)備,被模擬的設(shè)備稱為虛設(shè)備.(實(shí)例:SPOOLing技術(shù),利用虛設(shè)備技術(shù)用硬盤模擬輸入輸出設(shè)備)操作系統(tǒng)原理操作系
4、統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理6外設(shè)的特點(diǎn)外設(shè)的特點(diǎn) 種類多種類多 差差異大(控制方式和異大(控制方式和I/O速度)速度)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理7設(shè)備與控制器之間的接口設(shè)備與控制器之間的接口操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理8緩沖緩沖 轉(zhuǎn)轉(zhuǎn)換器換器控制邏輯控制邏輯數(shù)據(jù)線數(shù)據(jù)線狀態(tài)線狀態(tài)線控制線控制線信號信號數(shù)據(jù)數(shù)據(jù)I/O設(shè)備設(shè)備在設(shè)備和設(shè)備控制器之間傳在設(shè)備和設(shè)備控制器之間傳送數(shù)據(jù)信號送數(shù)據(jù)信號用于傳送指示設(shè)備當(dāng)前狀態(tài)用于傳送指示設(shè)備當(dāng)前狀態(tài)的信號的信號作為設(shè)備控制器向作為設(shè)備控制器向I/O設(shè)備
5、發(fā)設(shè)備發(fā)送控制信號的通路送控制信號的通路I/O管理的目的管理的目的 提提高效率高效率:提高:提高I/O訪問效率,匹配訪問效率,匹配CPU和多種不同處理和多種不同處理速度的外設(shè)速度的外設(shè) 方方便使用便使用:方便用戶使用,對不同類型的設(shè):方便用戶使用,對不同類型的設(shè)備使用統(tǒng)一方備使用統(tǒng)一方法,協(xié)調(diào)對設(shè)備的并發(fā)使用法,協(xié)調(diào)對設(shè)備的并發(fā)使用 方方便控制便控制:方便:方便OS內(nèi)部對設(shè)備的控內(nèi)部對設(shè)備的控制,增制,增加和刪除設(shè)備,加和刪除設(shè)備,適應(yīng)新的設(shè)備類型適應(yīng)新的設(shè)備類型操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理9I/O管理的功能管理的功能 提提供設(shè)備使用的供設(shè)備使用的用戶接
6、口用戶接口:命令接口和編程接口:命令接口和編程接口 設(shè)備分配和釋放設(shè)備分配和釋放:使用設(shè)備前,需要分配設(shè)備和相應(yīng)的通:使用設(shè)備前,需要分配設(shè)備和相應(yīng)的通道、控制道、控制器器 設(shè)備的訪問和控制設(shè)備的訪問和控制:包括并發(fā)訪問和差錯處理(虛擬設(shè)備:包括并發(fā)訪問和差錯處理(虛擬設(shè)備) I/O緩沖和調(diào)度緩沖和調(diào)度:目標(biāo)是提高:目標(biāo)是提高I/O訪問效率訪問效率操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理10I/O軟件的設(shè)計(jì)目標(biāo)軟件的設(shè)計(jì)目標(biāo) 設(shè)設(shè)備獨(dú)立性備獨(dú)立性:又稱設(shè)備無關(guān)性,即應(yīng)用程序所涉及的:又稱設(shè)備無關(guān)性,即應(yīng)用程序所涉及的I/O設(shè)備與系統(tǒng)中具體使用的物理設(shè)備相互無關(guān)設(shè)備與
7、系統(tǒng)中具體使用的物理設(shè)備相互無關(guān) 系統(tǒng)建立邏輯設(shè)備與物理設(shè)備的映射機(jī)制,應(yīng)用進(jìn)程通過邏輯設(shè)備名申請I/O,系統(tǒng)通過物理設(shè)備的驅(qū)動和控制實(shí)現(xiàn)具體的I/O 提高了設(shè)備分配的靈活性 易于實(shí)現(xiàn)I/O重定向操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理11I/O軟件的設(shè)計(jì)目標(biāo)軟件的設(shè)計(jì)目標(biāo) 統(tǒng)統(tǒng)一命一命名名:對:對各類設(shè)備采用預(yù)先設(shè)計(jì)的、統(tǒng)一的邏輯名稱各類設(shè)備采用預(yù)先設(shè)計(jì)的、統(tǒng)一的邏輯名稱命名,而不依賴于具體設(shè)備命名,而不依賴于具體設(shè)備 層次結(jié)構(gòu)層次結(jié)構(gòu):組成:組成I/O軟件的各個程序按照其功能和彼此接軟件的各個程序按照其功能和彼此接口劃分成若干層次,與用戶口劃分成若干層次,與用戶
8、I/O程序相關(guān)的部分在高層,程序相關(guān)的部分在高層,直接與硬件動作相關(guān)的部分在低層直接與硬件動作相關(guān)的部分在低層 高效率高效率:合理分配各種設(shè)備,盡可能提高外設(shè)和:合理分配各種設(shè)備,盡可能提高外設(shè)和CPU、外、外設(shè)之間的并行性設(shè)之間的并行性操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理12I/O管理結(jié)構(gòu)管理結(jié)構(gòu)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理13用戶進(jìn)程用戶進(jìn)程邏輯邏輯I/O設(shè)備設(shè)備I/O調(diào)度與控制調(diào)度與控制I/O硬件硬件虛虛擬設(shè)備:擬設(shè)備:針針對用戶,提供操作命令;對用戶,提供操作命令;對對于通信設(shè)備,則是通信體系結(jié)于通信設(shè)備,則是通信
9、體系結(jié)構(gòu),如通信協(xié)議棧;構(gòu),如通信協(xié)議棧;對對于文件存儲設(shè)備,是文件系統(tǒng)于文件存儲設(shè)備,是文件系統(tǒng)的邏輯控制結(jié)構(gòu)的邏輯控制結(jié)構(gòu)邏輯設(shè)備與物理設(shè)備之間的過渡協(xié)邏輯設(shè)備與物理設(shè)備之間的過渡協(xié)調(diào)機(jī)構(gòu):調(diào)機(jī)構(gòu):用用戶命令到設(shè)備操作序列的轉(zhuǎn)換;戶命令到設(shè)備操作序列的轉(zhuǎn)換;I/O緩沖:提高緩沖:提高I/O效率效率控制物理設(shè)備的實(shí)體,直接面對硬控制物理設(shè)備的實(shí)體,直接面對硬件設(shè)備的控制細(xì)節(jié),這部分通常為件設(shè)備的控制細(xì)節(jié),這部分通常為驅(qū)動程序。驅(qū)動程序。并并發(fā)發(fā)I/O訪問調(diào)度訪問調(diào)度設(shè)設(shè)備控制和狀態(tài)維護(hù)備控制和狀態(tài)維護(hù)中中斷處理斷處理主要內(nèi)容主要內(nèi)容 I/O管理基本知識管理基本知識 I/O控制方式控制方式 緩
10、緩沖技術(shù)沖技術(shù) 設(shè)設(shè)備分配與回收備分配與回收 磁磁盤存儲器的管理盤存儲器的管理 RAID技術(shù)技術(shù)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理14PC中的各類總線中的各類總線操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理15程序程序I/O方式方式 I/O操作由程序發(fā)起,并等待操作完成。數(shù)據(jù)的每次讀寫操作由程序發(fā)起,并等待操作完成。數(shù)據(jù)的每次讀寫通過通過CPU。 優(yōu)點(diǎn)優(yōu)點(diǎn) 幾乎不需要其它任何硬件機(jī)構(gòu)的支持 缺缺點(diǎn)點(diǎn) 在外設(shè)進(jìn)行數(shù)據(jù)處理時,CPU只能忙等待 CPU與外設(shè)只能串行工作操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理16程
11、序程序I/O方式方式 處處理過程理過程操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理17CPU執(zhí)行下一條指令執(zhí)行下一條指令開始數(shù)據(jù)傳送開始數(shù)據(jù)傳送 否否是是外圍設(shè)備外圍設(shè)備是是否否等待等待發(fā)發(fā)Start指令指令設(shè)備標(biāo)志觸發(fā)設(shè)備標(biāo)志觸發(fā)器為器為“Done”?接收到接收到Start指令指令作接收或發(fā)送數(shù)據(jù)準(zhǔn)備作接收或發(fā)送數(shù)據(jù)準(zhǔn)備準(zhǔn)備好?準(zhǔn)備好?標(biāo)志觸發(fā)器置為標(biāo)志觸發(fā)器置為“Done”等待等待CPU來的下一條指令來的下一條指令程序中斷方式程序中斷方式將將CPU從忙等待中解放出來從忙等待中解放出來I/O操作由程序發(fā)起,在操作完成時(如數(shù)據(jù)可讀或已經(jīng)寫入)由外設(shè)向CPU發(fā)出中斷,通
12、知該程序。數(shù)據(jù)的每次讀寫通過CPU優(yōu)點(diǎn)優(yōu)點(diǎn)在外設(shè)進(jìn)行數(shù)據(jù)處理時,CPU不必等待,可以繼續(xù)執(zhí)行該程序或其他程序。缺點(diǎn)缺點(diǎn)CPU依然參與數(shù)據(jù)的搬運(yùn)(從外設(shè)的局部存儲搬運(yùn)到內(nèi)存)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理18程序中斷方式程序中斷方式 處理過程處理過程操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理19接收到接收到CPU發(fā)來的發(fā)來的Start指指令令緩沖寄存器滿?緩沖寄存器滿?設(shè)備設(shè)備控制器發(fā)控制器發(fā)中斷信號中斷信號是是CPU調(diào)度程序調(diào)度其它進(jìn)程調(diào)度程序調(diào)度其它進(jìn)程收到中斷信號收到中斷信號了嗎?了嗎?中斷處理中斷處理被中斷進(jìn)程執(zhí)行被中斷進(jìn)程
13、執(zhí)行是是否否準(zhǔn)備數(shù)據(jù)并將其置入緩沖準(zhǔn)備數(shù)據(jù)并將其置入緩沖寄存器寄存器否否向設(shè)備發(fā)向設(shè)備發(fā)Start指令,指令,置中斷允許位為置中斷允許位為“1”其它進(jìn)程執(zhí)行其它進(jìn)程執(zhí)行DMA方式方式 將將CPU從數(shù)據(jù)搬運(yùn)中解放出來從數(shù)據(jù)搬運(yùn)中解放出來 由程序設(shè)置DMA控制器中的若干寄存器值(如內(nèi)存始址,傳送字節(jié)數(shù)),然后發(fā)起I/O操作,而后者完成內(nèi)存與外設(shè)的成批數(shù)據(jù)交換 操作完成后借助中斷機(jī)制通知CPU 優(yōu)點(diǎn)優(yōu)點(diǎn) CPU只需干預(yù)I/O操作的開始和結(jié)束,而其中的每一批數(shù)據(jù)讀寫無需CPU控制,適于高速設(shè)備操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理20DMA方式方式操作系統(tǒng)原理操作系統(tǒng)原理
14、東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理21DMA方式方式操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理22DataCountDataRegisterAddressRegisterControlLogicDMA RequestDMA AcknowledgeInterruptReadWriteAddress LinesData Lines通道控制方式通道控制方式 引入通道的目的引入通道的目的 為了使CPU從I/O事務(wù)中解脫出來,同時為了提高CPU與設(shè)備,設(shè)備與設(shè)備之間的并行工作能力 執(zhí)行一個通道程序可以完成幾批I/O操作操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章
15、 設(shè)備管理設(shè)備管理23通道控制方式通道控制方式 通道控制器通道控制器 有自己的專用存儲器 可以執(zhí)行由通道指令組成的通道程序 可以進(jìn)行較為復(fù)雜的I/O控制,如網(wǎng)卡上信道訪問控制 通道程序通常由操作系統(tǒng)構(gòu)造,放在內(nèi)存里操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理24通道控制方式通道控制方式 通道的分類通道的分類 字節(jié)多路通道字節(jié)多路通道:連接多個字符設(shè)備 選擇性通道選擇性通道:可以連接多個外設(shè),但一次只能訪問一個外設(shè) 成組多路通道成組多路通道:可以并發(fā)訪問多個外設(shè),同時連接多個中速設(shè)備操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理25通道控制方式通道控
16、制方式 字節(jié)多路通道字節(jié)多路通道 字節(jié)多路通道以字節(jié)為單位傳輸信息 它可以分時地執(zhí)行多個通道程序。當(dāng)一個通道程序控制某臺設(shè)備傳送一個字節(jié)后,通道硬件就控制轉(zhuǎn)去執(zhí)行另一個通道程序,控制另一臺設(shè)備傳送信息 主要連接以字節(jié)為單位的低速I/O設(shè)備,如打印機(jī),終端操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理26通道控制方式通道控制方式 字字節(jié)多路通道的工作原理節(jié)多路通道的工作原理操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理27控制器控制器A控制器控制器B控制器控制器C控制器控制器NA1B1C1N1.AnBnCnNnA1A2A3 子通道子通道AB1B2B3
17、子通道子通道BC1C2C3 子通道子通道CN1N2N3 子通道子通道N設(shè)備設(shè)備通道控制方式通道控制方式 選擇通道選擇通道 選擇通道每次傳送一批數(shù)據(jù),故傳送速度很高 選擇通道在一段時間內(nèi)只能執(zhí)行一個通道程序,只允許一臺設(shè)備進(jìn)行數(shù)據(jù)傳輸 當(dāng)這臺設(shè)備數(shù)據(jù)傳輸完成后,再選擇與通道連接的另一臺設(shè)備,執(zhí)行它的相應(yīng)的通道程序 主要連接磁盤、磁帶等高速I/O設(shè)備操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理28選擇通道選擇通道通道控制方式通道控制方式 成組多路通道成組多路通道 允許先為一臺設(shè)備執(zhí)行一條通道指令,然后自動轉(zhuǎn)接,為另一臺設(shè)備執(zhí)行一條通道指令 主要連接高速設(shè)備 對于連接多臺磁盤
18、的成組多路通道,可以啟動它們同時執(zhí)行移臂定位操作,按序交叉的傳輸一批數(shù)據(jù) 成組多路通道實(shí)際上是對通道程序采用多道程序設(shè)計(jì)的硬件實(shí)現(xiàn) 能夠結(jié)合選擇通道速度高和字節(jié)多路通道能分時并行操作的優(yōu)點(diǎn)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理29通道控制方式通道控制方式 通道的硬件連接結(jié)構(gòu)通道的硬件連接結(jié)構(gòu)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理30CPU內(nèi)存內(nèi)存通道通道控制控制設(shè)備設(shè)備通道控制方式通道控制方式 設(shè)備、控制器、通道、內(nèi)存之間的關(guān)系設(shè)備、控制器、通道、內(nèi)存之間的關(guān)系 單通道單通道I/O系統(tǒng)系統(tǒng)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7
19、章章 設(shè)備管理設(shè)備管理31存儲器存儲器通道通道1通道通道2控制器控制器1控制器控制器2I/O設(shè)備設(shè)備1I/O設(shè)備設(shè)備2I/O設(shè)備設(shè)備3I/O設(shè)備設(shè)備4控制器控制器1控制器控制器2I/O設(shè)備設(shè)備5I/O設(shè)備設(shè)備6I/O設(shè)備設(shè)備7I/O設(shè)備設(shè)備8通道控制方式通道控制方式 設(shè)備、控制器、通道、內(nèi)存之間的關(guān)系設(shè)備、控制器、通道、內(nèi)存之間的關(guān)系 多通道多通道I/O系統(tǒng),交叉連接系統(tǒng),交叉連接操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理32存儲器存儲器通道通道1通道通道2控制器控制器1控制器控制器2I/O設(shè)備設(shè)備1I/O設(shè)備設(shè)備2I/O設(shè)備設(shè)備3I/O設(shè)備設(shè)備4主要內(nèi)容主要內(nèi)容 I
20、/O管理基本知識管理基本知識 I/O控制方式控制方式 緩沖技術(shù)緩沖技術(shù) 設(shè)設(shè)備分配與回收備分配與回收 磁磁盤存儲器的管理盤存儲器的管理 RAID技術(shù)技術(shù)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理33緩沖技術(shù)的引入緩沖技術(shù)的引入 緩緩和和CPU與與I/O設(shè)備之間速度不匹配的矛盾設(shè)備之間速度不匹配的矛盾 減少對減少對CPU的中斷頻率,放寬對的中斷頻率,放寬對CPU中斷響應(yīng)時間的限制中斷響應(yīng)時間的限制 提高提高CPU和和I/O設(shè)備之間的并行性設(shè)備之間的并行性操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理34緩沖區(qū)緩沖區(qū)CPU外設(shè)外設(shè)高高速緩存速緩存 磁
21、磁盤高速緩盤高速緩存存 利用內(nèi)存中的存儲空間暫存從磁盤中讀出的一系列盤塊中的信息(并非體系結(jié)構(gòu)中的Cache) 是一組在邏輯上屬于磁盤、而物理上駐留在內(nèi)存中的盤塊 兩種形式 在內(nèi)存中開辟一單獨(dú)存儲空間作為高速緩存 把所有未利用的內(nèi)存空間作為高速緩存操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理35單緩沖技術(shù)單緩沖技術(shù) 基本原理基本原理 一個緩沖區(qū),CPU和外設(shè)輪流使用,一方處理完之后接著等待對方處理操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理36操作系統(tǒng)操作系統(tǒng)用戶進(jìn)程用戶進(jìn)程緩沖區(qū)緩沖區(qū)工作區(qū)工作區(qū)I/O設(shè)備設(shè)備輸入輸入傳送傳送TMC處理處理T1
22、M1C1T2M2C2T3M3C3T4M4C4T5t系統(tǒng)處理每一塊數(shù)據(jù)的時系統(tǒng)處理每一塊數(shù)據(jù)的時間為:間為:Max(C,T)+M雙緩沖技術(shù)雙緩沖技術(shù) 基本原理基本原理 兩個緩沖區(qū),CPU和外設(shè)都可以連續(xù)處理而無需等待對方。要求CPU和外設(shè)的速度相近操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理37操作系統(tǒng)操作系統(tǒng)用戶進(jìn)程用戶進(jìn)程緩沖區(qū)緩沖區(qū)1工作區(qū)工作區(qū)緩沖區(qū)緩沖區(qū)2I/O設(shè)備設(shè)備傳送傳送輸入輸入TMC處理處理T1M1C1T2M2C2T3M3C3T4M4C4T5t環(huán)形緩沖技術(shù)環(huán)形緩沖技術(shù) 基本原理基本原理 多個緩沖區(qū),CPU和外設(shè)的處理速度可以相差較大操作系統(tǒng)原理操作系統(tǒng)原
23、理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理38操作系統(tǒng)操作系統(tǒng)用戶進(jìn)程用戶進(jìn)程緩沖區(qū)緩沖區(qū)1工作區(qū)工作區(qū)緩沖區(qū)緩沖區(qū)2緩沖區(qū)緩沖區(qū)nI/O設(shè)備設(shè)備傳送傳送輸入輸入TMC處理處理環(huán)形緩沖技術(shù)環(huán)形緩沖技術(shù)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理39操作系統(tǒng)操作系統(tǒng)用戶進(jìn)程用戶進(jìn)程緩沖區(qū)緩沖區(qū)1工作區(qū)工作區(qū)緩沖區(qū)緩沖區(qū)2緩沖區(qū)緩沖區(qū)nI/O設(shè)備設(shè)備傳送傳送輸入輸入TMC處理處理組組成成RRGGGG123456NextiNextgRRCGGG123456NextiCurrentNextg多個緩沖區(qū):用于輸入數(shù)據(jù)多個緩沖區(qū):用于輸入數(shù)據(jù)的空緩沖區(qū)的空緩沖區(qū)R、已裝滿數(shù)據(jù)的
24、、已裝滿數(shù)據(jù)的緩沖區(qū)緩沖區(qū)G、計(jì)算進(jìn)程正在使、計(jì)算進(jìn)程正在使用的現(xiàn)行緩沖區(qū)用的現(xiàn)行緩沖區(qū)C多個指針:多個指針:Nextg:計(jì)算進(jìn)程下次可用:計(jì)算進(jìn)程下次可用Nexti:輸入進(jìn)程下次可用:輸入進(jìn)程下次可用Current:計(jì)算進(jìn)程正在使用:計(jì)算進(jìn)程正在使用緩沖區(qū)使用、進(jìn)程同步緩沖區(qū)使用、進(jìn)程同步環(huán)形緩沖技術(shù)環(huán)形緩沖技術(shù) Getbuf過過程程 當(dāng)計(jì)算進(jìn)程需要使用緩沖區(qū)的數(shù)據(jù)時調(diào)用Getbuf過程 將指針Nextg所指示的緩沖區(qū)提供給計(jì)算進(jìn)程使用 將該緩沖區(qū)改為現(xiàn)行工作緩沖區(qū) 令Current指針指向該緩沖區(qū)的第一個單元 將Nextg移向下一個G緩沖區(qū)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章
25、 設(shè)備管理設(shè)備管理40RRGGGG123456NextiNextgCCurrentNextgRRCGGG123456NextiCurrentNextg環(huán)形緩沖技術(shù)環(huán)形緩沖技術(shù) Getbuf過過程程 當(dāng)輸入進(jìn)程需要使用空緩沖區(qū)來裝入數(shù)據(jù)時也調(diào)用Getbuf過程 將指針Nexti所指示的緩沖區(qū)提供給輸入進(jìn)程使用 將Nexti移向下一個R緩沖區(qū)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理41RRGGGG123456NextiNextgNextiRRGGGG123456NextgNexti環(huán)形緩沖技術(shù)環(huán)形緩沖技術(shù) Releasebuf過過程程 當(dāng)計(jì)算進(jìn)程把C緩沖區(qū)數(shù)據(jù)提取完時,
26、調(diào)用Releasebuf過程 將C緩沖區(qū)釋放 將該緩沖區(qū)由當(dāng)前工作緩沖區(qū)C改為空緩沖區(qū)R操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理42RRCGGG123456NextiCurrentNextgRRRRGGG123456NextiNextg環(huán)形緩沖技術(shù)環(huán)形緩沖技術(shù) Releasebuf過過程程 當(dāng)輸入進(jìn)程把緩沖區(qū)裝滿時,調(diào)用Releasebuf過程 將緩沖區(qū)釋放 將該緩沖區(qū)改為滿緩沖區(qū)G操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理43RRGGGG123456NextgNextiGGRGGGG123456NextgNexti環(huán)形緩沖技術(shù)環(huán)形緩沖技術(shù)
27、操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理44RRGGGG123456NextiNextgRNextgGNextiRNextgGNextiRNextg 進(jìn)程同步問題進(jìn)程同步問題環(huán)形緩沖技術(shù)環(huán)形緩沖技術(shù)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理45GGRRGR123456NextiNextgGGRRGR123456NextiNextgGNextiGNextiGNexti? 進(jìn)程同步問題進(jìn)程同步問題環(huán)形緩沖技術(shù)環(huán)形緩沖技術(shù)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理46GGRRGR123456NextiNextgGGGGG
28、G123456NextgNexti?GGRRGR123456NextiNextgRNextgRNextgRNextg? 進(jìn)程同步問題進(jìn)程同步問題環(huán)形緩沖技術(shù)環(huán)形緩沖技術(shù) 使使用環(huán)形緩沖,可使輸入進(jìn)程與計(jì)算進(jìn)程并發(fā)執(zhí)行,指針用環(huán)形緩沖,可使輸入進(jìn)程與計(jì)算進(jìn)程并發(fā)執(zhí)行,指針Nexti和和Nextg不斷沿順時針方向移動,可能出現(xiàn):不斷沿順時針方向移動,可能出現(xiàn): Nexti追上Nextg,輸入進(jìn)程輸入數(shù)據(jù)的速度大于計(jì)算進(jìn)程處理數(shù)據(jù)的速度,已將全部緩沖區(qū)裝滿(均為G或C),輸入進(jìn)程阻塞,直到計(jì)算進(jìn)程使R出現(xiàn),并調(diào)用Releasebuf將其釋放,喚醒輸入進(jìn)程; Nextg追上Nexti,計(jì)算進(jìn)程處理數(shù)據(jù)
29、的速度大于輸入進(jìn)程輸入數(shù)據(jù)的速度,已將全部緩沖區(qū)抽空(均為R),計(jì)算進(jìn)程阻塞,直到輸入進(jìn)程使G出現(xiàn),并調(diào)用Releasebuf將其釋放,喚醒計(jì)算進(jìn)程操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理47緩沖池技術(shù)緩沖池技術(shù) 三種緩沖區(qū)隊(duì)列三種緩沖區(qū)隊(duì)列 空閑緩沖區(qū)emq 裝滿輸入數(shù)據(jù)的緩沖區(qū)inq 裝滿輸出數(shù)據(jù)的緩沖區(qū)outq操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理48emqinqoutq緩沖池技術(shù)緩沖池技術(shù) 四個工作緩沖區(qū)四個工作緩沖區(qū) 收容輸入數(shù)據(jù)hin 提取輸入數(shù)據(jù)sin 收容輸出數(shù)據(jù)hout 提取輸出數(shù)據(jù)sout操作系統(tǒng)原理操作系統(tǒng)原理東北
30、大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理49應(yīng)用進(jìn)程應(yīng)用進(jìn)程hinsinhoutsout收容輸入收容輸入提取輸入提取輸入提取輸出提取輸出收容輸出收容輸出緩沖池技術(shù)緩沖池技術(shù) 三種緩沖區(qū)隊(duì)列:三種緩沖區(qū)隊(duì)列:emq,inq,outq 四個工作緩沖區(qū):四個工作緩沖區(qū):hin,sin,hout,sout 四種操作:收容輸入、提取輸入、收容輸出、提取輸出四種操作:收容輸入、提取輸入、收容輸出、提取輸出操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理50應(yīng)用進(jìn)程應(yīng)用進(jìn)程emqinqoutqhinsinhoutsout收容輸入收容輸入提取輸入提取輸入提取輸出提取輸出收容輸出收容輸出算法
31、、互算法、互斥斥取取emq作為作為hin放放inq取取outq作為作為sout放放emq取取inq作為作為sin放放emq取取emq作為作為hout放放outq緩沖池技術(shù)緩沖池技術(shù) Getbuf與與Putbuf操作操作 為每個隊(duì)列設(shè)置互斥信號量MS(type)、資源信號量RS(type) Addbuf(type, number):將由參數(shù)number所指示的緩沖區(qū)B掛在type隊(duì)列上 Takebuf(type):從type所指示的隊(duì)列的隊(duì)首摘下一個緩沖區(qū)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理51Procedure Getbuf(type) P(RS(type);
32、P(MS(type); B(number)=Takebuf(type); V(MS(type);Procedure Putbuf(type, number) P(MS(type); Addbuf(type, number); V(MS(type); V(RS(type);緩沖區(qū)的工作方式緩沖區(qū)的工作方式操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理52收容輸入:收容輸入:hin=Getbuf(emq);輸入數(shù)據(jù)至輸入數(shù)據(jù)至hin;Putbuf(inq, hin)應(yīng)用進(jìn)程應(yīng)用進(jìn)程emqinqoutqhinsinhoutsout收容輸入收容輸入提取輸入提取輸入提取輸出提取輸出
33、收容輸出收容輸出緩沖區(qū)的工作方式緩沖區(qū)的工作方式操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理53收容輸入:收容輸入:hin=Getbuf(emq);輸入數(shù)據(jù)至輸入數(shù)據(jù)至hin;Putbuf(inq, hin)提取輸入:提取輸入:sin=Getbuf(inq);從從hin提取數(shù)據(jù)提取數(shù)據(jù);Putbuf(emq, sin)應(yīng)用進(jìn)程應(yīng)用進(jìn)程emqinqoutqhinsinhoutsout收容輸入收容輸入提取輸入提取輸入提取輸出提取輸出收容輸出收容輸出緩沖區(qū)的工作方式緩沖區(qū)的工作方式操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理54收容輸入:收容輸入:hi
34、n=Getbuf(emq);輸入數(shù)據(jù)至輸入數(shù)據(jù)至hin;Putbuf(inq, hin)提取輸入:提取輸入:sin=Getbuf(inq);從從hin提取數(shù)據(jù)提取數(shù)據(jù);Putbuf(emq, sin)收容輸出:收容輸出:hout=Getbuf(emq);將將hout裝滿數(shù)據(jù)裝滿數(shù)據(jù);Putbuf(outq, hout)應(yīng)用進(jìn)程應(yīng)用進(jìn)程emqinqoutqhinsinhoutsout收容輸入收容輸入提取輸入提取輸入提取輸出提取輸出收容輸出收容輸出緩沖區(qū)的工作方式緩沖區(qū)的工作方式操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理55收容輸入:收容輸入:hin=Getbuf(emq
35、);輸入數(shù)據(jù)至輸入數(shù)據(jù)至hin;Putbuf(inq, hin)提取輸入:提取輸入:sin=Getbuf(inq);從從hin提取數(shù)據(jù)提取數(shù)據(jù);Putbuf(emq, sin)收容輸出:收容輸出:hout=Getbuf(emq);將將hout裝滿數(shù)據(jù)裝滿數(shù)據(jù);Putbuf(outq, hout)提取輸出:提取輸出:sout=Getbuf(outq);從從hout提取數(shù)據(jù)提取數(shù)據(jù);Putbuf(emq, sout)應(yīng)用進(jìn)程應(yīng)用進(jìn)程emqinqoutqhinsinhoutsout收容輸入收容輸入提取輸入提取輸入提取輸出提取輸出收容輸出收容輸出主要內(nèi)容主要內(nèi)容 I/O管理基本知識管理基本知識 I/O
36、控制方式控制方式 緩沖技術(shù)緩沖技術(shù) 設(shè)備分配與回收設(shè)備分配與回收 磁磁盤存儲器的管理盤存儲器的管理 RAID技術(shù)技術(shù)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理56設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu) 設(shè)備控制表(設(shè)備控制表(OCT) 每個設(shè)備一張,記錄本設(shè)備的情況操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理57OCT1OCT2OCTn設(shè)設(shè)備備控控制制表表集集合合設(shè)備類型:設(shè)備類型:type設(shè)備標(biāo)識符:設(shè)備標(biāo)識符:deviceid設(shè)備狀態(tài):等待設(shè)備狀態(tài):等待/不等不等待待 忙忙/閑閑指向控制器表的指針指向控制器表的指針重復(fù)執(zhí)行次數(shù)或時間重復(fù)執(zhí)
37、行次數(shù)或時間設(shè)備隊(duì)列的隊(duì)首指針設(shè)備隊(duì)列的隊(duì)首指針設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu) 控制器控制表(控制器控制表(COCT)每個控制器一張,記錄本控制器的情況 通道控制表(通道控制表(CHCT)每個通道一張操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理58控制器標(biāo)識符:控制器標(biāo)識符:controllerid控制器狀態(tài):忙控制器狀態(tài):忙/閑閑與控制器連接的通道表指針與控制器連接的通道表指針控制器隊(duì)列的隊(duì)首指針控制器隊(duì)列的隊(duì)首指針控制器隊(duì)列的隊(duì)尾指針控制器隊(duì)列的隊(duì)尾指針通道標(biāo)識符:通道標(biāo)識符:channerid通道狀態(tài):忙通道狀態(tài):忙/閑閑與通道連接的控制器表指針與通道連
38、接的控制器表指針通道隊(duì)列的隊(duì)首指針通道隊(duì)列的隊(duì)首指針通道隊(duì)列的隊(duì)尾指針通道隊(duì)列的隊(duì)尾指針設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu) 系統(tǒng)設(shè)備表(系統(tǒng)設(shè)備表(SDT) 記錄系統(tǒng)中全部設(shè)備的情況,每個設(shè)備占一個表目 操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理59表目表目1表目表目i設(shè)備類設(shè)備類設(shè)備標(biāo)識符設(shè)備標(biāo)識符DCT驅(qū)動程序入口驅(qū)動程序入口設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理60表目表目1表目表目i設(shè)備類設(shè)備類設(shè)備標(biāo)識符設(shè)備標(biāo)識符DCT驅(qū)動程序入口驅(qū)動程序入口設(shè)備類型:設(shè)備類型:type設(shè)備標(biāo)識符:設(shè)
39、備標(biāo)識符:deviceid設(shè)備狀態(tài):等待設(shè)備狀態(tài):等待/不等待不等待 忙忙/閑閑指向控制器表的指針指向控制器表的指針重復(fù)執(zhí)行次數(shù)或時間重復(fù)執(zhí)行次數(shù)或時間設(shè)備隊(duì)列的隊(duì)首指針設(shè)備隊(duì)列的隊(duì)首指針通道標(biāo)識符:通道標(biāo)識符:channerid通道狀態(tài):忙通道狀態(tài):忙/閑閑與通道連接的控制器表指針與通道連接的控制器表指針通道隊(duì)列的隊(duì)首指針通道隊(duì)列的隊(duì)首指針通道隊(duì)列的隊(duì)尾指針通道隊(duì)列的隊(duì)尾指針控制器標(biāo)識符:控制器標(biāo)識符:controllerid控制器狀態(tài):忙控制器狀態(tài):忙/閑閑與控制器連接的通道表指針與控制器連接的通道表指針控制器隊(duì)列的隊(duì)首指針控制器隊(duì)列的隊(duì)首指針控制器隊(duì)列的隊(duì)尾指針控制器隊(duì)列的隊(duì)尾指針DCT
40、COCTSDTCHCT設(shè)備分配時須考慮的因素設(shè)備分配時須考慮的因素 設(shè)備的固有屬性設(shè)備的固有屬性 獨(dú)占性:一段時間內(nèi)只允許一個進(jìn)程獨(dú)占 共享性:允許多個進(jìn)程同時共享 可虛擬設(shè)備:設(shè)備本身獨(dú)占,但經(jīng)某種技術(shù)處理,可將其改造成虛擬設(shè)備 分配策略分配策略 獨(dú)占分配:分配給一個進(jìn)程,該進(jìn)程釋放設(shè)備后,再將設(shè)備分配給另一進(jìn)程 共享分配:分配給多個進(jìn)程,注意訪問順序和合理調(diào)度 虛擬分配:采用虛擬技術(shù)后,按共享設(shè)備分配操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理61設(shè)備分配算法設(shè)備分配算法 設(shè)備分配算法設(shè)備分配算法 先來先服務(wù):當(dāng)多個進(jìn)程對同一設(shè)備提出I/O請求時,按照進(jìn)程對設(shè)備提出
41、請求的先后順序排隊(duì) 優(yōu)先級高者優(yōu)先:優(yōu)先級高者排在設(shè)備隊(duì)列前面,優(yōu)先級相同者,按照先來先服務(wù)原則排隊(duì) 設(shè)備分配中的安全性設(shè)備分配中的安全性 安全分配方式:進(jìn)程發(fā)出I/O請求后,便進(jìn)入阻塞狀態(tài)(不能再請求其他任何資源),直到其I/O操作完成時才被喚醒不會死鎖 不安全分配方式:進(jìn)程發(fā)出I/O請求后仍繼續(xù)運(yùn)行,需要時又發(fā)出第二、三、個I/O請求,僅當(dāng)其請求設(shè)備被另一進(jìn)程占用時,請求進(jìn)程才被阻塞可能死鎖操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理62操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理63為進(jìn)程為進(jìn)程P分配所需的分配所需的I/O設(shè)備設(shè)備從從SDT
42、表查該類設(shè)備的控制表表查該類設(shè)備的控制表DCT由由DCT檢查該設(shè)備忙否檢查該設(shè)備忙否?不忙不忙檢查分配此設(shè)備的安全性檢查分配此設(shè)備的安全性?不安全不安全分配此設(shè)備給進(jìn)程分配此設(shè)備給進(jìn)程P查此設(shè)備連接的查此設(shè)備連接的COCT忙否忙否?不忙不忙不忙不忙分配此控制器給進(jìn)程分配此控制器給進(jìn)程P查此控制器連接的查此控制器連接的CHCT忙否忙否?最后一個最后一個DCT?分配此通道給進(jìn)程分配此通道給進(jìn)程P啟動啟動I/O,進(jìn)行具體的進(jìn)行具體的I/O操作操作忙忙進(jìn)程進(jìn)程P的的PCB放入放入此設(shè)備的等待隊(duì)列此設(shè)備的等待隊(duì)列YN忙忙最后一個最后一個COCT?最后一個最后一個DCT?進(jìn)程進(jìn)程 P 的的 PCB 放入放
43、入此控制器的等待隊(duì)列此控制器的等待隊(duì)列YNY忙忙最后一個最后一個CHCT?Y最后一個最后一個COCT?NYNN多通路設(shè)備多通路設(shè)備分配流程示分配流程示意圖意圖進(jìn)程進(jìn)程 P 的的 PCB 放入放入此通道的等待隊(duì)列此通道的等待隊(duì)列Spooling技術(shù)技術(shù) Simultaneous Peripheral Operation On-Line 技術(shù)的引入技術(shù)的引入 獨(dú)享設(shè)備經(jīng)常會成為系統(tǒng)中的“瓶頸”資源 進(jìn)程在占用設(shè)備期間,并不經(jīng)常使用該設(shè)備 利用高速共享設(shè)備(如磁盤)將低速的獨(dú)享設(shè)備模擬成高速的共享設(shè)備操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理64應(yīng)用進(jìn)程應(yīng)用進(jìn)程 A應(yīng)用進(jìn)程
44、應(yīng)用進(jìn)程 BSPOOLing程序程序設(shè)備設(shè)備Virtual I/OActual I/OSpooling技術(shù)技術(shù) 系統(tǒng)組成系統(tǒng)組成 輸入井暫存設(shè)備輸入的數(shù)據(jù);輸出井暫存用戶程序的輸出數(shù)據(jù)(在磁盤上) 輸入緩沖區(qū)Bi暫存來自輸入設(shè)備的數(shù)據(jù),再傳送到輸入井輸出緩沖區(qū)Bo暫存來自輸出井的數(shù)據(jù),再傳送到輸出設(shè)備(在內(nèi)存中) 輸入進(jìn)程SPi:輸入設(shè)備輸入緩沖區(qū)輸入井 輸出進(jìn)程SPo:內(nèi)存輸出井輸出緩沖區(qū)輸出設(shè)備操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理65輸入進(jìn)程輸入進(jìn)程SPi 輸出進(jìn)程輸出進(jìn)程SPo輸入緩沖區(qū)輸入緩沖區(qū)Bi輸出緩沖區(qū)輸出緩沖區(qū)Bo輸入井輸入井輸出井輸出井輸入設(shè)備
45、輸入設(shè)備輸出輸出設(shè)備設(shè)備磁盤磁盤Spooling技術(shù)技術(shù) 共享打印機(jī)共享打印機(jī) 打印機(jī)屬于獨(dú)占設(shè)備 利用SPOOLing技術(shù),可將其改造成共享設(shè)備 用戶請求打印輸出時,SPOOLing系統(tǒng)進(jìn)行 由輸出進(jìn)程在輸出井中為之申請一個空閑磁盤塊區(qū),并將要打印的數(shù)據(jù)送入其中 輸出進(jìn)程再為用戶進(jìn)程申請一張空白的用戶請求打印表,將用戶打印要求填入其中,再將該表掛在請求打印隊(duì)列上 打印機(jī)空閑時,輸出進(jìn)程根據(jù)打印隊(duì)列要求打印操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理66Spooling技術(shù)技術(shù) Spooling系統(tǒng)的特點(diǎn)系統(tǒng)的特點(diǎn) 提高了I/O的速度 將獨(dú)占設(shè)備改造為共享設(shè)備 實(shí)現(xiàn)了虛
46、擬設(shè)備的功能操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理67主要內(nèi)容主要內(nèi)容 I/O管理基本知識管理基本知識 I/O控制方式控制方式 緩沖技術(shù)緩沖技術(shù) 設(shè)備分配與回收設(shè)備分配與回收 磁盤存儲器的管理磁盤存儲器的管理 RAID技術(shù)技術(shù)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理68磁盤結(jié)構(gòu)磁盤結(jié)構(gòu)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理69磁盤結(jié)構(gòu)磁盤結(jié)構(gòu)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理70軸心軸心主桿主桿讀寫磁頭讀寫磁頭盤面盤面0 0盤面盤面1 1盤面盤面2 2盤面盤面3 3盤面盤面
47、4 4盤面盤面5 5盤面盤面6 6盤面盤面7 7盤面盤面8 8盤面盤面9 9扇區(qū)扇區(qū)磁道磁道磁道間隔磁道間隔扇區(qū)間隔扇區(qū)間隔磁盤磁盤I/O訪問時間的組成訪問時間的組成柱面定位時間(尋道時間)柱面定位時間(尋道時間) :磁頭移動到指定柱面的機(jī)械運(yùn)動磁頭移動到指定柱面的機(jī)械運(yùn)動時間時間旋轉(zhuǎn)延遲時間(尋區(qū)時間)旋轉(zhuǎn)延遲時間(尋區(qū)時間) :磁盤旋轉(zhuǎn)到指定扇區(qū)的機(jī)械運(yùn)動磁盤旋轉(zhuǎn)到指定扇區(qū)的機(jī)械運(yùn)動時間時間數(shù)據(jù)傳送時間:數(shù)據(jù)傳送時間:從指定扇區(qū)讀寫數(shù)據(jù)的時從指定扇區(qū)讀寫數(shù)據(jù)的時間間操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理71設(shè)備占用設(shè)備占用等待時間等待時間I/O通道占用通道占用
48、等待時間等待時間柱面定位時間柱面定位時間旋轉(zhuǎn)延遲時間旋轉(zhuǎn)延遲時間數(shù)據(jù)傳送時間數(shù)據(jù)傳送時間磁盤設(shè)備忙磁盤設(shè)備忙磁盤磁盤I/O訪問時間的組成訪問時間的組成 以讀取一個以讀取一個128KB的文件為例的文件為例 (1)文件由8個連續(xù)磁道(每個磁道32個扇區(qū))上的256 個扇區(qū)構(gòu)成: 20ms+(7.3ms+16.7ms)*8=220ms; 其中,柱面定位時間為20ms,旋轉(zhuǎn)延遲時間為7.3ms,32扇區(qū)數(shù)據(jù)傳送時間為16.7ms; (2)文件由256個隨機(jī)分布的扇區(qū)構(gòu)成: (20ms+7.3ms+0.5ms)*256=7373ms; 其中,1扇區(qū)數(shù)據(jù)傳送時間為0.5ms; 隨機(jī)分布時的訪問時間為連續(xù)分
49、布時的33.5倍!操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理72磁盤調(diào)度算法磁盤調(diào)度算法操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理73有若干個訪問者請求磁盤執(zhí)有若干個訪問者請求磁盤執(zhí)行行I/O操操作,作,應(yīng)先讓哪一個訪問者完成操應(yīng)先讓哪一個訪問者完成操作?作?磁盤調(diào)度磁盤調(diào)度公平:一個I/O請求在有限時間內(nèi)滿足高效:減少機(jī)械部件運(yùn)動帶來的時間浪費(fèi)磁盤調(diào)度算法磁盤調(diào)度算法 先來先服務(wù):根據(jù)進(jìn)程請求磁盤先來先服務(wù):根據(jù)進(jìn)程請求磁盤I/O的次序進(jìn)行調(diào)度的次序進(jìn)行調(diào)度 例:磁頭當(dāng)前位置為100號磁道,請求順序?yàn)椋?5、58、39、18、90、160、
50、150、38、184,采用FCFS調(diào)度算法,計(jì)算平均尋道長度操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理74(從(從100號磁道開始)號磁道開始)被訪問的下一個磁道號被訪問的下一個磁道號 移動距離(磁道數(shù))移動距離(磁道數(shù))5545583391918219072160701501038112184146平均尋道長度:平均尋道長度:55.3優(yōu)點(diǎn):公平,簡單優(yōu)點(diǎn):公平,簡單缺點(diǎn):平均尋道距離大缺點(diǎn):平均尋道距離大磁盤調(diào)度算法磁盤調(diào)度算法 最短尋道時間優(yōu)先(最短尋道時間優(yōu)先(SSTF) 要求訪問的磁道與當(dāng)前磁頭所在的磁道距離最近 例:磁頭當(dāng)前位置為100號磁道,請求順序?yàn)椋?
51、5、58、39、18、90、160、150、38、184,采用SSTF調(diào)度算法,計(jì)算平均尋道長度操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理75(從(從100號磁道開始)號磁道開始)被訪問的下一個磁道號被訪問的下一個磁道號 移動距離(磁道數(shù))移動距離(磁道數(shù))90105832553391638118201501321601018424平均尋道長度:平均尋道長度:27.5問題問題可能導(dǎo)致某個進(jìn)程發(fā)生“饑餓”現(xiàn)象只要不斷有新進(jìn)程請求到達(dá),且其要訪問的磁道與磁頭當(dāng)前所在磁道的距離較近,這種新進(jìn)程的I/O請求必然優(yōu)先滿足磁盤調(diào)度算法磁盤調(diào)度算法 掃描(掃描(SCAN)算)算法法
52、 下一個訪問對象應(yīng)是其余訪問的磁道既在當(dāng)前磁道之外,又是距離最近的 例:磁頭當(dāng)前位置為100號磁道,請求順序?yàn)椋?5、58、39、18、90、160、150、38、184,計(jì)算SCAN調(diào)度算法的平均尋道長度操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理76磁盤調(diào)度算法磁盤調(diào)度算法 掃描(掃描(SCAN)算法)算法操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理77(從(從100號磁道開始,向磁道號增加方向訪問)號磁道開始,向磁道號增加方向訪問)被訪問的下一個磁道號被訪問的下一個磁道號 移動距離(磁道數(shù))移動距離(磁道數(shù))1505016010184249
53、094583255339163811820平均尋道長度:平均尋道長度:27.8問題問題當(dāng)磁頭剛從里向外移動而越過了某一磁道時,恰好又有一進(jìn)程請求訪問此磁道,這時該進(jìn)程必須等待,待磁頭繼續(xù)從里向外,然后再從外向里掃描完所有要訪問的磁道后,才處理該進(jìn)程的請求,致使該進(jìn)程的請求被大大推遲磁盤調(diào)度算法磁盤調(diào)度算法 循環(huán)掃描(循環(huán)掃描(CSCAN)算)算法法 規(guī)定磁頭單向移動 例:磁頭當(dāng)前位置為100號磁道,請求順序?yàn)椋?5、58、39、18、90、160、150、38、184,采用SCAN調(diào)度算法,計(jì)算平均尋道長度操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理78(從(從100號
54、磁道開始,向磁道號增加方向訪問)號磁道開始,向磁道號增加方向訪問)被訪問的下一個磁道號被訪問的下一個磁道號 移動距離(磁道數(shù))移動距離(磁道數(shù))15050160101842418166382039155165839032平均尋道長度:平均尋道長度:35.8磁盤調(diào)度算法磁盤調(diào)度算法 N步掃描步掃描(N-step-SCAN)算法算法把磁盤I/O請求隊(duì)列分成長度為N的段,每次使用掃描算法處理這N個請求。當(dāng)N=1時,該算法退化為FIFO算法該算法的目標(biāo)是改進(jìn)前幾種算法可能在多磁頭系統(tǒng)中出現(xiàn)磁頭靜止在一個磁道上,導(dǎo)致其它進(jìn)程無法及時進(jìn)行磁盤I/O 雙雙隊(duì)列掃描隊(duì)列掃描(FSCAN)算算法法把磁盤I/O請
55、求分成兩個隊(duì)列,交替使用掃描算法處理一個隊(duì)列,新生成的磁盤I/O請求放入另一隊(duì)列中該算法的目標(biāo)與N步掃描算法一致操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理79旋轉(zhuǎn)調(diào)度旋轉(zhuǎn)調(diào)度 根據(jù)延遲時間來決定執(zhí)行次序的調(diào)度稱為根據(jù)延遲時間來決定執(zhí)行次序的調(diào)度稱為“旋轉(zhuǎn)調(diào)度旋轉(zhuǎn)調(diào)度”。即:當(dāng)移動臂定位后,決定同一柱面訪問者的執(zhí)行次即:當(dāng)移動臂定位后,決定同一柱面訪問者的執(zhí)行次序序。從從減少輸入輸出操作總時間為目標(biāo)考慮,應(yīng)優(yōu)先選擇延遲減少輸入輸出操作總時間為目標(biāo)考慮,應(yīng)優(yōu)先選擇延遲時間最短的訪問者進(jìn)行服務(wù)時間最短的訪問者進(jìn)行服務(wù)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管
56、理設(shè)備管理80旋轉(zhuǎn)調(diào)度旋轉(zhuǎn)調(diào)度 旋轉(zhuǎn)調(diào)度應(yīng)考慮如下情況旋轉(zhuǎn)調(diào)度應(yīng)考慮如下情況 若干等待訪問者請求訪問同一磁道上的不同扇區(qū) 若干等待訪問者請求訪問不同磁道上的不同扇區(qū) 若干等待訪問者請求訪問不同磁道上具有相同編號的扇區(qū) 調(diào)度思路調(diào)度思路 對于前兩種情況,旋轉(zhuǎn)調(diào)度總是讓首先到達(dá)讀寫磁頭位置下的扇區(qū)先進(jìn)行傳送操作 對于第三種情況,這些扇區(qū)同時到達(dá)讀寫磁頭位置下,旋轉(zhuǎn)調(diào)度可任意選擇一個讀寫磁頭進(jìn)行傳送操作操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理81旋轉(zhuǎn)調(diào)度旋轉(zhuǎn)調(diào)度 磁磁盤數(shù)據(jù)的存盤數(shù)據(jù)的存取取 磁盤塊內(nèi)部緩沖區(qū)內(nèi)存。當(dāng)數(shù)據(jù)從磁盤塊傳送至內(nèi)存時,后續(xù)扇區(qū)中的數(shù)據(jù)將從磁頭下通過
57、。但控制器一般不能同時進(jìn)行輸入輸出,因在數(shù)據(jù)塊傳輸?shù)倪@段時間里,從磁頭下通過的扇區(qū)的信息丟失。 因此,應(yīng)將數(shù)據(jù)以交叉方式存放,塊間應(yīng)間隔的扇區(qū)數(shù)與數(shù)據(jù)從磁盤傳送到內(nèi)存的速度有關(guān)操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理82旋轉(zhuǎn)調(diào)度舉例旋轉(zhuǎn)調(diào)度舉例 旋轉(zhuǎn)調(diào)度舉例:有一個交叉存放信息的磁盤,信息在其上旋轉(zhuǎn)調(diào)度舉例:有一個交叉存放信息的磁盤,信息在其上的存放方法如圖所的存放方法如圖所示示 每磁道有8個扇區(qū),每扇區(qū)有512字節(jié),旋轉(zhuǎn)速度為3000轉(zhuǎn)/分。 假定磁頭已在要讀取信息的磁道上,0扇區(qū)旋轉(zhuǎn)到磁頭下需要1/2轉(zhuǎn),且設(shè)備對應(yīng)的控制器不能同時進(jìn)行輸入輸出。 在數(shù)據(jù)從控制器傳
58、送到內(nèi)存的這段時間內(nèi),從磁頭下通過的扇區(qū)數(shù)為2。 問:依次讀出一個磁道上的所有扇區(qū)需要多少時間?其數(shù)據(jù)傳輸速度為多少?操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理8303145276旋轉(zhuǎn)調(diào)度舉例旋轉(zhuǎn)調(diào)度舉例 解答解答 從圖中可知,信息塊之間的間隔為2個扇區(qū) 旋轉(zhuǎn)速度:3000轉(zhuǎn)/分,即20ms/轉(zhuǎn) 讀一個扇區(qū)需要時間:20/8=2.5ms 讀一個扇區(qū)并將扇區(qū)數(shù)據(jù)送入內(nèi)存需要時間:2.53=7.5ms 讀出一個磁道上所有扇區(qū)需要時間: 20/2+87.5=70ms=0.07s 每磁道數(shù)據(jù)量:8512=4KB 數(shù)據(jù)傳輸速度為: 4KB/0.07=57.1KB/秒操作系統(tǒng)原理
59、操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理84磁盤緩存置換算法磁盤緩存置換算法 磁盤緩存是磁盤扇區(qū)在內(nèi)存中的緩沖磁盤緩存是磁盤扇區(qū)在內(nèi)存中的緩沖區(qū)區(qū) 磁磁盤緩存的調(diào)度算法很類似虛擬存儲調(diào)度算法,但由于磁盤緩存的調(diào)度算法很類似虛擬存儲調(diào)度算法,但由于磁盤的訪問頻率遠(yuǎn)低于虛擬存儲,它們又存在區(qū)盤的訪問頻率遠(yuǎn)低于虛擬存儲,它們又存在區(qū)別別 通通常磁盤緩存調(diào)度算法會比虛擬存儲復(fù)常磁盤緩存調(diào)度算法會比虛擬存儲復(fù)雜雜操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理85磁盤緩存置換算法磁盤緩存置換算法 訪問頻率置換算法的引入訪問頻率置換算法的引入 它是對LRU(最近最久未使
60、用)算法和LFU(最不常用)算法的改進(jìn);它要解決的主要問題是在LFU算法中的引用計(jì)數(shù)問題 磁盤訪問可能會十分集中,在一段密集使用后,引用計(jì)數(shù)的變化就不能反映當(dāng)前的引用情況。需要考慮磁盤訪問的這種密集特征,對密集引用不計(jì)數(shù) 其基本思想是在短周期中使用LRU算法,而在長周期中使用LFU算法操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理86磁盤緩存置換算法磁盤緩存置換算法 訪問頻率置換算法訪問頻率置換算法 把LRU棧分成三部分,并為每個緩存塊增加計(jì)數(shù)器 新區(qū)域、中間區(qū)域、舊區(qū)域操作系統(tǒng)原理操作系統(tǒng)原理東北大學(xué)東北大學(xué)第第7章章 設(shè)備管理設(shè)備管理87新區(qū)域中間區(qū)域舊區(qū)域引用計(jì)數(shù)不
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度個人心理咨詢與輔導(dǎo)服務(wù)合同3篇
- 2025年度林業(yè)權(quán)屬林權(quán)登記與林業(yè)碳匯項(xiàng)目實(shí)施合同4篇
- 2025年福建貨運(yùn)從業(yè)資格證新政
- 七夕節(jié)趣味活動策劃方案
- 二零二五年度高速鐵路鋁合金門窗安全檢測與安裝合同4篇
- 二零二五年度0號柴油環(huán)保油品居間服務(wù)合同3篇
- 2025年度個人房產(chǎn)交易過戶手續(xù)辦理協(xié)議3篇
- 二零二五年度土地租賃及經(jīng)營權(quán)轉(zhuǎn)讓合同樣本-@-1
- 二零二五年度離婚房產(chǎn)分割與子女醫(yī)療費(fèi)用承擔(dān)合同3篇
- 二零二五年度企業(yè)員工培訓(xùn)課程版權(quán)購買協(xié)議4篇
- 2024年社區(qū)警務(wù)規(guī)范考試題庫
- 2024年食用牛脂項(xiàng)目可行性研究報告
- 2024-2030年中國戶外音箱行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析報告
- 家務(wù)分工與責(zé)任保證書
- 消防安全隱患等級
- (新版)國民經(jīng)濟(jì)行業(yè)分類代碼表(八大行業(yè))
- 北京地鐵13號線
- 2023山東春季高考數(shù)學(xué)真題(含答案)
- 為加入燒火佬協(xié)會致辭(7篇)
- 職業(yè)衛(wèi)生法律法規(guī)和標(biāo)準(zhǔn)培訓(xùn)課件
- 高二下學(xué)期英語閱讀提升練習(xí)(二)
評論
0/150
提交評論