




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第五章第五章 設備管理設備管理調度與死鎖設備管理概述設備管理概述v設備管理的對象設備管理的對象 I/OI/O設備設備 設備控制器設備控制器 I/OI/O通道通道v設備管理的任務設備管理的任務 完成用戶的完成用戶的I/OI/O請求請求 提高設備利用率提高設備利用率v設備管理的主要功能設備管理的主要功能 緩沖區(qū)管理緩沖區(qū)管理 設備分配設備分配調度與死鎖5.1 I/O5.1 I/O系統(tǒng)系統(tǒng)v I/OI/O系統(tǒng)是實現數據輸入、輸出和數據存儲的系統(tǒng)。系統(tǒng)是實現數據輸入、輸出和數據存儲的系統(tǒng)。vI/OI/O設備的類型設備的類型 按設備的按設備的使用特性使用特性分類分類 存儲設備存儲設備 輸入、輸出設備輸入
2、、輸出設備 按按傳輸速率傳輸速率分類分類 低速、中速(打印機等)和高速設備低速、中速(打印機等)和高速設備 按按信息交換的單位信息交換的單位分類分類 塊設備:有結構設備(磁盤可尋址、塊設備:有結構設備(磁盤可尋址、I/OI/O方式采用方式采用DMADMA方式。)方式。) 字符設備:無結構設備(打印機等)不可尋址,中斷驅動。字符設備:無結構設備(打印機等)不可尋址,中斷驅動。調度與死鎖5.1 I/O5.1 I/O系統(tǒng)系統(tǒng) 按設備的按設備的共享屬性共享屬性分類分類 獨占設備獨占設備 共享設備:磁盤共享設備:磁盤 虛擬設備虛擬設備調度與死鎖2. 2. 設備與控制器的接口設備與控制器的接口調度與死鎖5
3、.1.2 5.1.2 設備控制器設備控制器v設備控制器的基本功能設備控制器的基本功能 接收和識別命令(控制寄存器譯碼器)接收和識別命令(控制寄存器譯碼器) 數據交換數據交換 (數據寄存器)(數據寄存器) 標識和報告設備的狀態(tài)(狀態(tài)寄存器)標識和報告設備的狀態(tài)(狀態(tài)寄存器) 地址識別(地址譯碼器)地址識別(地址譯碼器) 每個設備有一個地址每個設備有一個地址 每個寄存器有一個地址每個寄存器有一個地址 數據緩沖(緩沖器)數據緩沖(緩沖器) 差錯控制差錯控制調度與死鎖2. 2. 設備控制器的組成設備控制器的組成調度與死鎖5.1.3 I/O5.1.3 I/O通道通道調度與死鎖1. 1. 通道的引入通道的
4、引入v通道是獨立于通道是獨立于CPUCPU,專門負責數據,專門負責數據I/OI/O傳輸的處傳輸的處理機,有自己的運控部件和指令系統(tǒng)。理機,有自己的運控部件和指令系統(tǒng)。 它對外設實現統(tǒng)一管理它對外設實現統(tǒng)一管理 代替代替CPUCPU對對I/OI/O操作進行控制操作進行控制 使使CPUCPU和外設可以并行工作和外設可以并行工作v通道又稱為通道又稱為I/OI/O處理機,但無專門的內存,因處理機,但無專門的內存,因此,通過周期性的竊用方式與主機共享內存此,通過周期性的竊用方式與主機共享內存v引入通道不僅使數據的傳送獨立于引入通道不僅使數據的傳送獨立于CPUCPU,而用,而用對對I/OI/O操作的組織、
5、管理也獨立于操作的組織、管理也獨立于CPUCPU。調度與死鎖2. 2. 通道的類型通道的類型v字節(jié)多路通道(不適合高速設備)字節(jié)多路通道(不適合高速設備) 以字節(jié)交叉方式工作,連接設備:如以字節(jié)交叉方式工作,連接設備:如打印機。打印機。調度與死鎖2) 2) 數組選擇通道數組選擇通道選擇通道選擇通道獨占通道,利用率低獨占通道,利用率低調度與死鎖 選擇通道是以成組方式工作的,即每次傳送選擇通道是以成組方式工作的,即每次傳送一批數據,故傳送速度很高。選擇通道在一一批數據,故傳送速度很高。選擇通道在一段時間內只能執(zhí)行一個通道程序,只允許一段時間內只能執(zhí)行一個通道程序,只允許一臺設備進行數據傳輸臺設備進
6、行數據傳輸 當這臺設備數據傳輸完成后,再選擇與當這臺設備數據傳輸完成后,再選擇與通道連接的另一臺設備,執(zhí)行它的相應的通通道連接的另一臺設備,執(zhí)行它的相應的通道程序道程序 主要連接磁盤,磁帶等高速主要連接磁盤,磁帶等高速I/OI/O設備設備 2) 2) 數組選擇通道數組選擇通道調度與死鎖 成組多路通道結合了選擇通道傳送速度高和字節(jié)多成組多路通道結合了選擇通道傳送速度高和字節(jié)多路通道能進行分時并行操作的優(yōu)點。含有多個非分配路通道能進行分時并行操作的優(yōu)點。含有多個非分配型子通道。型子通道。 主要連接高速設備主要連接高速設備 這樣,對于連接多臺磁盤機的數組多路通道,它可這樣,對于連接多臺磁盤機的數組多
7、路通道,它可以啟動它們同時執(zhí)行移臂定位操作,然后,按序交叉以啟動它們同時執(zhí)行移臂定位操作,然后,按序交叉地傳輸一批批數據。數據多路通道實際上是對通道程地傳輸一批批數據。數據多路通道實際上是對通道程序采用多道程序設計的硬件實現。序采用多道程序設計的硬件實現。 3) 3) 數組數組多路多路通道通道調度與死鎖通道的類型通道的類型調度與死鎖3. 3. “瓶頸瓶頸”問題問題調度與死鎖3. 3. “瓶頸瓶頸”問題的解決問題的解決增加設備到主機間的通路。提高了可靠性增加設備到主機間的通路。提高了可靠性調度與死鎖5.1.4 5.1.4 總線系統(tǒng)總線系統(tǒng)微型計算機微型計算機總線的種類和發(fā)展總線的種類和發(fā)展ISA
8、總線總線EISA總線總線VESA總線總線 PCI總線總線USB總線總線.1394總線總線調度與死鎖5.2 I/O5.2 I/O控制方式控制方式v程序直接控制方式程序直接控制方式v中斷控制方式中斷控制方式v直接存儲器存取方式直接存儲器存取方式(DMA)(DMA)v通道方式通道方式盡量減少主機對盡量減少主機對I/OI/O控制的干預??刂频母深A。調度與死鎖1. 1. 程序直接控制方式程序直接控制方式也稱為忙也稱為忙等待方式等待方式調度與死鎖1. 1. 程序直接控制方式程序直接控制方式調度與死鎖1. 1. 程序直接控制方式程序直接控制方式v控制者:用戶進程控制者:用戶進程v 又稱為忙等待方式、循環(huán)測試
9、方式、程序又稱為忙等待方式、循環(huán)測試方式、程序I/OI/O方式方式v優(yōu)點:優(yōu)點: 控制簡單,硬件支持少(只需狀態(tài)寄存器)控制簡單,硬件支持少(只需狀態(tài)寄存器)v缺點:缺點: CPUCPU與外設串行工作。與外設串行工作。 CPUCPU在一段時間內只能與一臺外設通信。在一段時間內只能與一臺外設通信。調度與死鎖2. 2. 中斷方式中斷方式調度與死鎖2. 2. 中斷方式中斷方式調度與死鎖2. 2. 中斷方式中斷方式調度與死鎖2. 2. 中斷方式中斷方式v優(yōu)點:優(yōu)點: CPUCPU與外設并行工作。與外設并行工作。v缺點:缺點: 中斷方式以字或字節(jié)為單位進行中斷方式以字或字節(jié)為單位進行I/OI/O操作,操
10、作,每傳送一個字或字節(jié)均要求一次中斷。每傳送一個字或字節(jié)均要求一次中斷。 當有多個外設,如果提高外設速度,當有多個外設,如果提高外設速度,CPUCPU來來不及從緩沖區(qū)取數據,造成數據丟失。不及從緩沖區(qū)取數據,造成數據丟失。調度與死鎖3. DMA3. DMA方式方式v直接存儲器訪問(直接存儲器訪問(DMADMA:Direct Memory Direct Memory AccessAccess)v基本思想:基本思想:外設與內存直接進行數據交換外設與內存直接進行數據交換v特點:特點: 數據傳輸的基本單位是數據塊數據傳輸的基本單位是數據塊 設備與內存間直接進行數據存取設備與內存間直接進行數據存取 僅在
11、傳送一個或多個數據塊的開始和結束時,僅在傳送一個或多個數據塊的開始和結束時,才需才需CPUCPU干預干預調度與死鎖DMADMA控制器的組成控制器的組成數據計數器數據計數器命令命令/狀態(tài)狀態(tài)寄存器寄存器調度與死鎖3. DMA3. DMA方式方式調度與死鎖DMADMA方式方式傳送傳送過程過程調度與死鎖DMADMA方式傳送過程方式傳送過程調度與死鎖3. DMA3. DMA方式方式v特點:特點: 數據傳輸的基本單位是數據塊數據傳輸的基本單位是數據塊 僅在傳送開始和結束時,才需處理機干預僅在傳送開始和結束時,才需處理機干預 開始時:開始時:CPUCPU啟動啟動I/OI/O設備設備 結束時:發(fā)送中斷給結束
12、時:發(fā)送中斷給CPUCPU,處理中斷。,處理中斷。v缺點:缺點: 當需要一次去讀多個數據塊且將它們分別傳當需要一次去讀多個數據塊且將它們分別傳送到不同的內存區(qū)域,或者相反時,須由送到不同的內存區(qū)域,或者相反時,須由CPUCPU分別發(fā)出多條分別發(fā)出多條I/OI/O指令及進行多次中斷處指令及進行多次中斷處理才能完成。理才能完成。調度與死鎖DMADMA方式與中斷的主要區(qū)別方式與中斷的主要區(qū)別v中斷方式是在數據緩沖寄存區(qū)滿后,發(fā)中斷請中斷方式是在數據緩沖寄存區(qū)滿后,發(fā)中斷請求,求,CPUCPU進行中斷處理。進行中斷處理。v DMADMA方式則是在所要求傳送的數據塊全部傳送方式則是在所要求傳送的數據塊全
13、部傳送結束時要求結束時要求CPUCPU進行中斷處理,大大減少了進行中斷處理,大大減少了CPUCPU進行中斷處理的次數進行中斷處理的次數v中斷方式的數據傳送是由中斷方式的數據傳送是由CPUCPU控制完成的,而控制完成的,而DMADMA方式則是在方式則是在DMADMA控制器的控制下不經過控制器的控制下不經過CPUCPU控制完成的控制完成的調度與死鎖4. 4. 通道控制方式通道控制方式v通道是獨立于通道是獨立于CPUCPU,專門負責數據,專門負責數據I/OI/O傳輸的處傳輸的處理機,有自己的運控部件和指令系統(tǒng)。理機,有自己的運控部件和指令系統(tǒng)。v通道又稱為通道又稱為I/OI/O處理機,但無專門的內存
14、,因處理機,但無專門的內存,因此,通過周期性的竊用方式與主機共享內存此,通過周期性的竊用方式與主機共享內存調度與死鎖硬件連接結構硬件連接結構調度與死鎖通道程序通道程序v通道程序是由一系列通道指令所構成通道程序是由一系列通道指令所構成v通道指令通道指令 WriteWrite 0 0 250 1850 0 0 250 1850 Write 1 1 250 720Write 1 1 250 720v常用指令包括下列信息:常用指令包括下列信息: 操作碼操作碼 通道程序結束位通道程序結束位P P 記錄結束標志記錄結束標志R R 計數計數 內存地址內存地址調度與死鎖4. 4. 通道控制方式通道控制方式v傳
15、輸過程:傳輸過程: 進程請求進程請求I/OI/O CPUCPU發(fā)發(fā)I/OI/O指令(指令(I/OI/O操作,設備號,對應的操作,設備號,對應的通道)通道) 對應的通道啟動通道指令程序,設置對應的通道啟動通道指令程序,設置I/OI/O設設備控制的控制狀態(tài)寄存器備控制的控制狀態(tài)寄存器 數據入內存數據入內存 結束,中斷信號給結束,中斷信號給CPUCPU調度與死鎖v緩沖技術引入的原因緩沖技術引入的原因 緩和緩和CPUCPU與與I/OI/O設備間速度不匹配的矛盾。設備間速度不匹配的矛盾。 減少對減少對CPUCPU的的中斷頻率中斷頻率 提高提高CPUCPU和和I/OI/O設備之間的并行性設備之間的并行性
16、解決解決DMADMA與通道方式的瓶頸問題。與通道方式的瓶頸問題。 要求數據的進程不能即時獲得內存而長期要求數據的進程不能即時獲得內存而長期占有通道或占有通道或DMADMA的現象。的現象。 5.3 5.3 緩沖管理緩沖管理調度與死鎖調度與死鎖v單緩沖單緩沖( (系統(tǒng)對數據的處理時間為系統(tǒng)對數據的處理時間為:Max(C,T)+M):Max(C,T)+M)5.3.2 5.3.2 緩沖的種類緩沖的種類調度與死鎖v雙緩沖5.3.2 5.3.2 緩沖的種類緩沖的種類調度與死鎖v雙緩沖(系統(tǒng)對數據的處理時間為:Max(C,T)5.3.2 5.3.2 緩沖的種類緩沖的種類調度與死鎖v雙緩沖5.3.2 5.3.
17、2 緩沖的種類緩沖的種類調度與死鎖v多個緩沖區(qū)組織成循環(huán)緩沖的形式。多個緩沖區(qū)組織成循環(huán)緩沖的形式。v R:R:空空bufferbuffer;G G:裝滿數據的:裝滿數據的buffer;Cbuffer;C: :工作工作bufferbufferv 指針:指針:5.3.3 5.3.3 循環(huán)緩沖循環(huán)緩沖作為輸入的緩沖區(qū)作為輸入的緩沖區(qū)調度與死鎖v多緩沖存在同步的問題。5.3.3 5.3.3 循環(huán)緩沖循環(huán)緩沖調度與死鎖v緩沖池緩沖池把多個緩沖區(qū)連接起來統(tǒng)一管理,既把多個緩沖區(qū)連接起來統(tǒng)一管理,既可用于輸入又可用于輸出的緩沖區(qū)。可用于輸入又可用于輸出的緩沖區(qū)。若干進程可以共享。若干進程可以共享。5.3.
18、4 5.3.4 緩沖池緩沖池調度與死鎖v類型:類型: 空閑緩沖區(qū)空閑緩沖區(qū) 裝滿輸入數據的緩沖區(qū)裝滿輸入數據的緩沖區(qū) 裝滿輸出數據的緩沖區(qū)裝滿輸出數據的緩沖區(qū)5.3.4 5.3.4 緩沖池的管理緩沖池的管理v三種隊列:三種隊列:調度與死鎖v工作緩沖區(qū)工作緩沖區(qū) 收容輸入緩沖區(qū)收容輸入緩沖區(qū)hinhin 提取輸入緩沖區(qū)提取輸入緩沖區(qū)sinsin 收容輸出緩沖區(qū)收容輸出緩沖區(qū)houthout 提取輸出緩沖區(qū)提取輸出緩沖區(qū)soutsout5.3.4 5.3.4 緩沖池管理緩沖池管理emhininget_bufput_bufget_bufinsinemget_bufput_bufemhoutoutge
19、t_bufput_bufoutsoutemget_bufput_buf調度與死鎖v管理管理 take_buf(type,number) add_buf(type,number) get_buf(type,number) put_buf(type,number)v參數:參數:type緩沖區(qū)類型,緩沖區(qū)類型,number緩沖區(qū)號緩沖區(qū)號v get_buf()和和put_buf()分別調用分別調用add_buf()和和take_buf().5.3.4 5.3.4 緩沖池管理緩沖池管理調度與死鎖過程過程get_bufget_buf和和put_bufput_buf的描述的描述互斥信號量互斥信號量MS(t
20、ype),其初值為,其初值為1資源信號量資源信號量RS(type),其初值為,其初值為n(n為為type隊列長度隊列長度)get_buf(type,number):beginP(RS(type)P(MS(type)B(number) = take_buf(type,number)V(MS(type)end調度與死鎖過程過程get_bufget_buf和和put_bufput_buf的描述的描述互斥信號量互斥信號量MS(type),其初值為,其初值為1資源信號量資源信號量RS(type),其初值為,其初值為n(n為為type隊列長度隊列長度)put_buf(type,number):beginP
21、(MS(type)add_buf(type,number)V(MS(type)V(RS(type)end調度與死鎖緩沖區(qū)的工作方式緩沖區(qū)的工作方式調度與死鎖5.4 I/O5.4 I/O軟件軟件v總目標:高效率、通用性總目標:高效率、通用性vI/OI/O軟件的設計目標軟件的設計目標 設備無關性(設備的獨立性)設備無關性(設備的獨立性) 應用程序獨立于具體使用的物理設備。為了實應用程序獨立于具體使用的物理設備。為了實現設備獨立性而引入了現設備獨立性而引入了邏輯設備邏輯設備和和物理設備物理設備這兩這兩個概念。(即插即用)。個概念。(即插即用)。 統(tǒng)一命名統(tǒng)一命名 系統(tǒng)中各類設備均以統(tǒng)一的系統(tǒng)中各類設
22、備均以統(tǒng)一的邏輯名稱邏輯名稱命名,應命名,應用程序以邏輯名稱訪問設備,統(tǒng)一命名與具體設用程序以邏輯名稱訪問設備,統(tǒng)一命名與具體設備無關。備無關。 調度與死鎖5.4 I/O5.4 I/O軟件軟件vI/OI/O軟件的設計目標軟件的設計目標 對錯誤的處理對錯誤的處理 錯誤的處理盡量在低層解決錯誤的處理盡量在低層解決 緩沖技術緩沖技術 I/OI/O軟件屏蔽緩沖區(qū)大小的差異。軟件屏蔽緩沖區(qū)大小的差異。 設備的分配與釋放設備的分配與釋放: :獨占、共享獨占、共享 I/OI/O控制方式控制方式調度與死鎖設備管理的分層模型設備管理的分層模型用戶進程用戶進程設備硬件無關層設備硬件無關層設備硬件相關層設備硬件相關
23、層設備硬件設備硬件邏輯設備邏輯設備設備驅動程序設備驅動程序調度與死鎖5.4 I/O5.4 I/O軟件的層次結構軟件的層次結構調度與死鎖5.4.2 5.4.2 中斷處理程序中斷處理程序調度與死鎖5.4.2 5.4.2 中斷處理過程中斷處理過程v喚醒被阻塞的驅動(程序)進程喚醒被阻塞的驅動(程序)進程v保護被中斷進程的保護被中斷進程的CPUCPU環(huán)境環(huán)境調度與死鎖5.4.2 5.4.2 中斷處理過程中斷處理過程v 轉入相應的設備處理程序轉入相應的設備處理程序v 中斷處理中斷處理 正常完成中斷正常完成中斷 異常結束中斷異常結束中斷v 恢復被中斷進程的現場恢復被中斷進程的現場v 中斷總控程序中斷總控程
24、序調度與死鎖5.4.2 5.4.2 中斷處理過程中斷處理過程調度與死鎖5.4.3 5.4.3 設備驅動程序設備驅動程序v設備驅動程序的功能設備驅動程序的功能 接收接收設備獨立性軟件設備獨立性軟件發(fā)來的命令和參數,并將命令發(fā)來的命令和參數,并將命令中的抽象要求轉換為具體要求,例如,將磁盤塊號中的抽象要求轉換為具體要求,例如,將磁盤塊號轉換為磁盤的盤面、轉換為磁盤的盤面、 磁道號及扇區(qū)號。磁道號及扇區(qū)號。 檢查用戶檢查用戶I/OI/O請求的合法性,了解請求的合法性,了解I/OI/O設備的狀態(tài),設備的狀態(tài),傳遞有關參數,設置設備的工作方式。傳遞有關參數,設置設備的工作方式。 發(fā)出發(fā)出I/OI/O命令
25、命令 忙忙/ /等等 及時響應由及時響應由控制器控制器或或通道通道發(fā)來的中斷請求,并根據發(fā)來的中斷請求,并根據其中斷類型調用相應的其中斷類型調用相應的中斷處理程序中斷處理程序進行處理。進行處理。 對于設置有通道的計算機系統(tǒng),自動地構成通道程對于設置有通道的計算機系統(tǒng),自動地構成通道程序。序。 調度與死鎖5.4.3 5.4.3 設備驅動程序設備驅動程序v設備驅動方式設備驅動方式 為每一類設備設置一個進程,專門用于執(zhí)行為每一類設備設置一個進程,專門用于執(zhí)行這類設備的這類設備的I/OI/O操作。操作。 在整個系統(tǒng)中設置一個在整個系統(tǒng)中設置一個I/OI/O進程,專門用于進程,專門用于執(zhí)行系統(tǒng)中所有各類
26、設備的執(zhí)行系統(tǒng)中所有各類設備的I/OI/O操作。操作。 不設置專門的設備處理進程,而只為各類設不設置專門的設備處理進程,而只為各類設備設置相應的備設置相應的設備處理程序設備處理程序( (模塊模塊) ),供用戶,供用戶進程或系統(tǒng)進程調用。進程或系統(tǒng)進程調用。調度與死鎖5.4.3 5.4.3 設備驅動程序設備驅動程序v設備驅動程序的特點設備驅動程序的特點 在請求在請求I/OI/O的進程與設備控制器之間提供一的進程與設備控制器之間提供一個通信和轉換程序。個通信和轉換程序。 不同類型的設備應配置不同的驅動程序。不同類型的設備應配置不同的驅動程序。 驅動程序與驅動程序與I/OI/O設備所采用的設備所采用
27、的I/OI/O控制方式相控制方式相關。關。 驅動程序是由匯編與驅動程序是由匯編與C C語言構成。或固化在語言構成?;蚬袒赗OMROM中。中。 驅動程序允許可重入。驅動程序允許可重入。 驅動程序不允許驅動程序不允許系統(tǒng)調用系統(tǒng)調用。調度與死鎖v處理過程:處理過程: 抽象要求轉為具體要求(塊號抽象要求轉為具體要求(塊號- -扇區(qū))扇區(qū)) 檢查檢查I/OI/O的合法性。的合法性。 讀出和檢查設備的狀態(tài)讀出和檢查設備的狀態(tài) 傳送必要的參數傳送必要的參數 工作方式的設置工作方式的設置 啟動設備,控制器控制基本啟動設備,控制器控制基本I/OI/O操作操作5.4.3 5.4.3 設備驅動程序設備驅動程序調
28、度與死鎖5.4.4 5.4.4 設備獨立性軟件設備獨立性軟件 概念:應用程序獨立于具體使用的設備概念:應用程序獨立于具體使用的設備 好處:好處:設備分配的靈活性設備分配的靈活性易于實現易于實現I/OI/O重定向重定向調度與死鎖5.4.4 5.4.4 設備獨立性軟件設備獨立性軟件v 主要功能:主要功能: 執(zhí)行所有設備的公有操作執(zhí)行所有設備的公有操作對獨立設備的分配與回收對獨立設備的分配與回收將邏輯設備名映射為物理設備名,進而找到設將邏輯設備名映射為物理設備名,進而找到設備驅動程序備驅動程序對設備進行保護,禁止用戶直接訪問設備對設備進行保護,禁止用戶直接訪問設備緩沖管理緩沖管理差錯控制差錯控制提供
29、獨立于設備的邏輯塊提供獨立于設備的邏輯塊 向用戶層軟件提供統(tǒng)一的接口向用戶層軟件提供統(tǒng)一的接口調度與死鎖邏輯設備名到物理設備名的映射邏輯設備名到物理設備名的映射v 邏輯設備表邏輯設備表LUTLUTv LUTLUT的設置問題的設置問題 整個系統(tǒng)一張整個系統(tǒng)一張LUTLUT:單用戶系統(tǒng)中:單用戶系統(tǒng)中 每個用戶一張每個用戶一張LUTLUT:多用戶系統(tǒng)中:多用戶系統(tǒng)中調度與死鎖5.4.5 5.4.5 用戶層用戶層I/OI/O軟件軟件v 用戶層用戶層I/OI/O軟件軟件 通過系統(tǒng)調用取得通過系統(tǒng)調用取得osos的服務。的服務。 用戶程序用戶程序庫函數庫函數系統(tǒng)調用系統(tǒng)調用調度與死鎖v設備分配程序按一定
30、的策略統(tǒng)一分配設備分配程序按一定的策略統(tǒng)一分配設備給進程設備給進程v分配用的數據結構:分配用的數據結構: 設備控制表設備控制表DCTDCT 系統(tǒng)設備表系統(tǒng)設備表SDTSDT 控制器控制表控制器控制表COCTCOCT 通道控制表通道控制表CHCTCHCT5.5 5.5 設備分配設備分配調度與死鎖5.5.1 5.5.1 設備控制表設備控制表DCTDCT調度與死鎖5.5.1 5.5.1 設備控制表設備控制表DCTDCT調度與死鎖5.5.1 5.5.1 設備控制表設備控制表DCTDCT調度與死鎖v設備的固有屬性設備的固有屬性 獨占設備:獨占設備:死鎖問題死鎖問題 共享設備:共享設備:調度順序調度順序
31、虛擬設備:虛擬設備:調度順序調度順序v設備分配算法設備分配算法 先來先服務先來先服務 優(yōu)先級高者優(yōu)先優(yōu)先級高者優(yōu)先v設備分配的安全性設備分配的安全性 安全分配方式:進程安全分配方式:進程 進展緩慢進展緩慢 不安全分配方式:不安全分配方式: 進程推進迅速、可能死進程推進迅速、可能死鎖。需要安全性檢查鎖。需要安全性檢查5.5.2 5.5.2 設備分配時應考慮的因素設備分配時應考慮的因素調度與死鎖基基本本設設備備分分配配流流程程5.5.3 5.5.3 獨占設備的分配程序獨占設備的分配程序調度與死鎖v基本的設備分配程序基本的設備分配程序 進程以物理設備名來提出進程以物理設備名來提出I/OI/O請求請求
32、 采用單通路的采用單通路的I/OI/O系統(tǒng)結構系統(tǒng)結構v設備分配程序的改進設備分配程序的改進 增加設備的獨立性增加設備的獨立性 進程以邏輯設備名請求進程以邏輯設備名請求I/O.I/O. 考慮多通路情況考慮多通路情況5.5.3 5.5.3 獨占設備的分配程序獨占設備的分配程序為進程為進程P P分配所需的分配所需的I/OI/O設備設備從從SDTSDT表查該類設備的控制表表查該類設備的控制表DCTDCT由由DCTDCT檢查該設備忙否檢查該設備忙否? ?不忙不忙檢查分配此設備的安全性檢查分配此設備的安全性? ?不安全不安全分配此設備給進程分配此設備給進程P P查此設備連接的查此設備連接的COCTCOC
33、T忙否忙否? ?不忙不忙不忙不忙分配此控制器給進程分配此控制器給進程P P查此控制器連接的查此控制器連接的CHCTCHCT忙否忙否? ?最后一個最后一個DCT?DCT?分配此通道給進程分配此通道給進程P P啟動啟動I/O,I/O,進行具體的進行具體的I/OI/O操作操作忙忙進程進程P的的PCB放入放入此設備的等待隊列此設備的等待隊列YN忙忙最后一個最后一個COCT?COCT?最后一個最后一個DCT?DCT?進程進程 P 的的 PCB 放入放入此控制器的等待隊列此控制器的等待隊列YNY忙忙最后一個最后一個CHCT?CHCT?Y最后一個最后一個COCT?COCT?進程進程 P 的的 PCB 放入放
34、入此通道的等待隊列此通道的等待隊列NYNN多通路設備分配流程示意圖多通路設備分配流程示意圖調度與死鎖v什么是什么是SPOOLingSPOOLing 脫機輸入與脫機輸出技術脫機輸入與脫機輸出技術 SPOOLing (Simultaneaus Periphernal SPOOLing (Simultaneaus Periphernal Operating On Line)Operating On Line),又稱假脫機技術。,又稱假脫機技術。 適用于多道程序系統(tǒng)。適用于多道程序系統(tǒng)。5.5.4 SPOOLing5.5.4 SPOOLing技術技術調度與死鎖v 輸入井和輸出井輸入井和輸出井 輸入井:
35、模擬脫機輸入時的磁盤設備輸入井:模擬脫機輸入時的磁盤設備 輸出井:模擬脫機輸出時的磁盤設備輸出井:模擬脫機輸出時的磁盤設備v 輸入緩沖區(qū)和輸出緩沖區(qū)輸入緩沖區(qū)和輸出緩沖區(qū)v 輸入進程與輸出進程輸入進程與輸出進程 輸入進程:模擬脫機輸入進程:模擬脫機I/OI/O時的外圍控制機時的外圍控制機 輸出進程:模擬脫機輸出進程:模擬脫機I/OI/O時的外圍控制機時的外圍控制機2. SPOOLing2. SPOOLing系統(tǒng)的組成系統(tǒng)的組成調度與死鎖v 當用戶進程請求打印輸出時,當用戶進程請求打印輸出時,SPOOLingSPOOLing系統(tǒng)并不立即系統(tǒng)并不立即把打印機分配給該用戶進程,而只為它做兩件事:把打
36、印機分配給該用戶進程,而只為它做兩件事: 由輸出進程在輸出井中為之申請一個空閑磁盤塊區(qū),由輸出進程在輸出井中為之申請一個空閑磁盤塊區(qū),并將要打印的數據送入其中;并將要打印的數據送入其中; 輸出進程再為用戶進程申請一張空白的輸出進程再為用戶進程申請一張空白的用戶請求打用戶請求打印表印表,并將用戶的打印要求填入其中,再將該表掛,并將用戶的打印要求填入其中,再將該表掛到請求打印隊列上。到請求打印隊列上。v 當打印機空閑時,輸出進程取出打印表,將數據從輸當打印機空閑時,輸出進程取出打印表,將數據從輸出井傳入內存緩沖區(qū),再由打印機進行打印。出井傳入內存緩沖區(qū),再由打印機進行打印。3. 3. 共享打印機共
37、享打印機調度與死鎖v提高了提高了I/OI/O的速度的速度 從低速設備的操作變?yōu)閷斎刖洼敵鼍畯牡退僭O備的操作變?yōu)閷斎刖洼敵鼍牟僮鞯牟僮鱲將獨占設備改造為共享設備將獨占設備改造為共享設備v可以將一臺物理設備虛擬為多臺邏輯設備,允可以將一臺物理設備虛擬為多臺邏輯設備,允許多個用戶共享一臺物理設備。許多個用戶共享一臺物理設備。4. 4. SPOOLingSPOOLing系統(tǒng)的特點系統(tǒng)的特點調度與死鎖5.6 5.6 磁盤存儲器的管理磁盤存儲器的管理調度與死鎖v 磁盤的組織與格式磁盤的組織與格式5.6 5.6 磁盤存儲器的管理磁盤存儲器的管理調度與死鎖v固定頭磁盤固定頭磁盤 每條磁道上都有一個讀
38、每條磁道上都有一個讀/ /寫磁頭寫磁頭 并行讀并行讀/ /寫寫 適用于大容量磁盤適用于大容量磁盤v移動頭磁盤移動頭磁盤 每個盤面僅有一個磁頭每個盤面僅有一個磁頭 串行方式讀串行方式讀/ /寫寫 適用于中小型磁盤適用于中小型磁盤2 2 磁盤的類型磁盤的類型調度與死鎖v尋道時間尋道時間: :T Ts s= =m mn n+ +s s 大約是大約是5-30ms5-30ms n n:移動磁道數,:移動磁道數,s s:啟動磁臂的時間,:啟動磁臂的時間,m m:常數。:常數。v旋轉延遲時間旋轉延遲時間T Tr: r: 平均旋轉延遲時間為:平均旋轉延遲時間為:1/2r 1/2r v傳輸時間傳輸時間 b b為
39、每次讀為每次讀/ /寫的字節(jié)數,寫的字節(jié)數,r r為磁盤每秒的轉數,為磁盤每秒的轉數,N N為一條磁道上的字節(jié)數。為一條磁道上的字節(jié)數。 可將訪問時間可將訪問時間T Ta a表示為表示為: : 旋轉和尋道時間占訪問時間中的大頭旋轉和尋道時間占訪問時間中的大頭3. 3. 磁盤訪問時間磁盤訪問時間調度與死鎖v目標:平均尋道時間最少目標:平均尋道時間最少v算法:先來先服務、最短尋道時間優(yōu)先及掃描等算法:先來先服務、最短尋道時間優(yōu)先及掃描等5.6.2 5.6.2 磁盤調度磁盤調度調度與死鎖v 先來先服務先來先服務FCFS (First Come First Served)FCFS (First Com
40、e First Served)v 優(yōu)點:優(yōu)點: 公平,簡單公平,簡單v 缺點:缺點: 平均尋道距離大平均尋道距離大v 適用范圍:適用范圍: 請求磁盤請求磁盤I/OI/O的進程較少的場合的進程較少的場合5.6.2 5.6.2 磁盤調度磁盤調度調度與死鎖v優(yōu)點:優(yōu)點: 平均尋道距離最短平均尋道距離最短v缺點:缺點: 不公平不公平 產生進程產生進程“饑餓饑餓”2. 2. 最短尋道時間優(yōu)先最短尋道時間優(yōu)先(SSTFSSTF:Shortest Seek Time First)Shortest Seek Time First)調度與死鎖在在SSTFSSTF算法中,只要不斷有新進程的請求到算法中,只要不斷有
41、新進程的請求到達,且其所要訪問的磁道與磁頭當前所在磁達,且其所要訪問的磁道與磁頭當前所在磁道的距離較近,這種新進程的道的距離較近,這種新進程的I/OI/O請求必須請求必須優(yōu)先滿足。優(yōu)先滿足??赡艹霈F情況:有的老進程總也得不到執(zhí)行可能出現情況:有的老進程總也得不到執(zhí)行進程進程“饑餓饑餓”現象現象調度與死鎖v 又稱又稱“電梯調度電梯調度”算法算法v 優(yōu)先考慮磁頭當前的移優(yōu)先考慮磁頭當前的移動方向動方向v 存在問題:要求訪問磁存在問題:要求訪問磁頭剛經過的磁道。頭剛經過的磁道。3. SCAN3. SCAN算法算法調度與死鎖4. 4. 循環(huán)掃描(循環(huán)掃描(CSCANCSCAN)算法)算法規(guī)定磁頭單向移
42、動規(guī)定磁頭單向移動調度與死鎖v SSTFSSTF、 SCANSCAN及及CSCANCSCAN幾種調度算法可能產生幾種調度算法可能產生“磁盤粘著磁盤粘著”現現象。象。v 一個或幾個進程反復請求對某一磁道的一個或幾個進程反復請求對某一磁道的I/OI/O操作,從而壟斷了操作,從而壟斷了整個磁盤設備。這一現象稱為磁臂粘著。整個磁盤設備。這一現象稱為磁臂粘著。vNStepSCANNStepSCAN掃描算法掃描算法 將磁盤請求隊列分成若干個長度為將磁盤請求隊列分成若干個長度為N N的子隊列,磁盤調度的子隊列,磁盤調度將按將按FCFSFCFS算法依次處理這些子隊列。而每處理一個隊列時算法依次處理這些子隊列。
43、而每處理一個隊列時又是按又是按SCANSCAN算法,對一個隊列處理完后,再處理其他隊列。算法,對一個隊列處理完后,再處理其他隊列。 當當N N很大時,很大時,NStepSCANNStepSCAN蛻化為蛻化為SCANSCAN。 當當N N1 1時,時, NStepSCANNStepSCAN蛻化為蛻化為FCFSFCFS。5. 5. NStepSCANNStepSCAN算法算法調度與死鎖 FSCANFSCAN算法實質上是算法實質上是N N步步SCANSCAN算法的簡化。算法的簡化。 FSCANFSCAN只將磁盤請求隊列分成只將磁盤請求隊列分成兩個子隊列兩個子隊列。一個是由。一個是由當前所有請求磁盤當
44、前所有請求磁盤I/OI/O的進程形成的隊列,由磁盤調的進程形成的隊列,由磁盤調度按度按SCANSCAN算法進行處理。在掃描期間,將新出現的所算法進行處理。在掃描期間,將新出現的所有請求磁盤有請求磁盤I/OI/O的進程,放入另一個等待處理的請求的進程,放入另一個等待處理的請求隊列。所有新請求都被推遲到下一次掃描時處理。隊列。所有新請求都被推遲到下一次掃描時處理。6. FSCAN6. FSCAN算法算法調度與死鎖5.6.3 5.6.3 磁盤高速緩存(磁盤高速緩存(Disk CacheDisk Cache)調度與死鎖 高速緩存是一組在邏輯上屬于磁盤,而物理上是駐留在內高速緩存是一組在邏輯上屬于磁盤,而物理上是駐留在內存中的盤塊。存中的盤塊。 高速緩存存在的形式高速緩存存在的形式在內在中開辟大小固定,獨立的存儲空間。在內在中開辟大小固定,獨立的存儲空間。把所有未利用的內存空間變?yōu)橐粋€緩沖池,供請求分把所有未利用的內存空間變?yōu)橐粋€緩沖池,供請求分頁系統(tǒng)和磁盤頁系統(tǒng)和磁盤I/OI/O時時( (作為磁盤高速緩存作為磁盤高速緩存) )共享。共享。1. 1. 磁盤高速緩存的形式磁盤高速緩存的形式調度與死鎖 將磁盤高速緩
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 軟件技術轉讓及服務合同
- 選民行為及其影響試題及答案
- 基礎網絡安全防護措施試題及答案
- 軟件設計師考試2025年常見問題解析試題及答案
- 軟件設計師考試的深刻見解試題與答案
- 比較西方政治制度下的中央與地方關系試題及答案
- 西方國家的國際援助政策試題及答案
- 智能科技對公共政策的變革性影響試題及答案
- 公共政策執(zhí)行中的溝通策略試題及答案
- 西方政治文化的構成要素試題及答案
- 2023年廣西高考歷史真題(含答案)
- 四川建筑施工資料表格(施工單位用表)全套
- 工作作風不嚴謹的表現及改進措施范文(通用5篇)
- 過濾器檢驗報告
- DB11-T 675-2014 清潔生產評價指標體系 醫(yī)藥制造業(yè)
- 2023家具采購合同范本專業(yè)版-1
- GB/T 29319-2012光伏發(fā)電系統(tǒng)接入配電網技術規(guī)定
- GB/T 11264-2012熱軋輕軌
- 國學導論·巴蜀文化課件
- 《事業(yè)單位人事管理條例》及其配套制度講義課件
- 試卷交接簽字單
評論
0/150
提交評論