版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第7章輸入/輸出管理本章目標(biāo)掌握I/O管理的基本原理、算法及處理機(jī)制能夠識別I/O管理功能實(shí)現(xiàn)的關(guān)鍵環(huán)節(jié)和影響因素能夠認(rèn)識到I/O管理功能實(shí)現(xiàn)有多種方案可選擇,能夠通過文獻(xiàn)研究,在多種方案中,尋求一種更合適的解決方案能夠遵循系統(tǒng)化的基本要求,確定解決I/O管理的設(shè)計目標(biāo)和技術(shù)方案能夠運(yùn)用所學(xué)知識解決I/O管理設(shè)計與實(shí)現(xiàn)問題,能在設(shè)計實(shí)現(xiàn)中體現(xiàn)創(chuàng)新意識能夠?qū)?shí)驗(yàn)結(jié)果進(jìn)行輸入條件關(guān)聯(lián)分析和解釋,并能綜合應(yīng)用場景和技術(shù)需求,得出結(jié)論的有效性第7章輸入/輸出管理
7.1
I/O管理概述
7.2
I/O控制方式
7.3
I/O緩沖
7.4
設(shè)備驅(qū)動程序
7.5
設(shè)備分配
7.6
磁盤存儲器的管理
7.7
時鐘管理和電源管理
7.8
輸入/輸出管理實(shí)例通常將處理器和主存以外的設(shè)備稱為外部設(shè)備(或I/O設(shè)備)。I/O設(shè)備種類繁多,操作系統(tǒng)必須提供相應(yīng)的設(shè)備管理程序,簡單、方便、高效、統(tǒng)一使用各類設(shè)備。7.1I/O
管理概述7.1.1I/O管理目標(biāo)與功能
7.1.2I/O系統(tǒng)組成7.1.1
I/O管理目標(biāo)與功能I/O子系統(tǒng)概述I/O子系統(tǒng)指對設(shè)備進(jìn)行管理的那部分操作系統(tǒng)。I/O管理目標(biāo)為用戶提供方便、統(tǒng)一的界面。提高資源的利用率。I/O管理功能設(shè)備控制設(shè)備分配與回收。其它功能建立統(tǒng)一的獨(dú)立于I/O設(shè)備的應(yīng)用接口;完成設(shè)備驅(qū)動程序,實(shí)現(xiàn)真正的I/O操作;處理I/O設(shè)備的中斷處理;管理I/O緩沖區(qū);實(shí)現(xiàn)設(shè)備的虛擬性和獨(dú)立性
7.1.2
I/O系統(tǒng)組成5.1.2I/O子系統(tǒng)設(shè)計目標(biāo)7.1.2.1I/O設(shè)備7.1.2.2
設(shè)備控制器7.1.2.3
通道
7.1.2.4I/O統(tǒng)一接口7.1.2
I/O系統(tǒng)組成5.1.2I/O子系統(tǒng)設(shè)計目標(biāo)系統(tǒng)組成I/O設(shè)備:用于完成數(shù)據(jù)的輸入與輸出;控制器:用于控制對應(yīng)的I/O設(shè)備;通路:用于數(shù)據(jù)傳輸(總線型或通道型)
;應(yīng)用接口:為不同設(shè)備的使用提供統(tǒng)一的接口。7.1.2
I/O系統(tǒng)組成5.1.2I/O子系統(tǒng)設(shè)計目標(biāo)系統(tǒng)總線主機(jī)(CPU、存儲器)磁盤控制器磁盤顯示器控制器顯示器其它控制器其它設(shè)備存儲器通道A控制器A設(shè)備1設(shè)備2設(shè)備3設(shè)備4通道B控制器B總線型系統(tǒng)通道型系統(tǒng)7.1.2
I/O系統(tǒng)組成5.1.2I/O子系統(tǒng)設(shè)計目標(biāo)關(guān)鍵技術(shù)I/O調(diào)度技術(shù):緩沖區(qū)管理技術(shù)。設(shè)備分配與回收技術(shù)。虛擬設(shè)備技術(shù)。7.1.2.1
I/O設(shè)備
按設(shè)備的從屬關(guān)系分類:系統(tǒng)設(shè)備:如鍵盤,顯示器等,OS安裝時就進(jìn)行管理。用戶設(shè)備:如網(wǎng)卡,掃描儀,打印機(jī)等,用戶安裝驅(qū)動程序。按設(shè)備的共享屬性分類:共享設(shè)備:同一時間段允許多個進(jìn)程使用。如硬盤,光盤等。獨(dú)占設(shè)備:同一時間段只許一個進(jìn)程使用。如鍵盤,打印機(jī)等。虛擬設(shè)備:將獨(dú)占設(shè)備轉(zhuǎn)化為共享設(shè)備。按傳輸速率分類:低速設(shè)備:傳輸率:幾個B-幾百B/S。如鍵盤,鼠標(biāo)。中速設(shè)備:傳輸率:幾個KB-幾十KB/S。如打印機(jī)。高速設(shè)備:傳輸率:幾十KB-幾個MB/S。如磁盤、光盤機(jī)。按信息交換單位分類:字符設(shè)備:以字符為單位組織處理信息。如打印機(jī)。塊設(shè)備:以數(shù)據(jù)塊為單位組織處理信息。如磁盤,光盤。I/O設(shè)備的分類7.1.2.2
設(shè)備控制器1.設(shè)備控制器的功能接收和識別命令數(shù)據(jù)交換獲取設(shè)備的狀態(tài)地址識別2.設(shè)備控制器的組成設(shè)備控制器與處理機(jī)的接口I/O控制邏輯設(shè)備控制器與設(shè)備的接口7.1.2.3通道1.什么是通道通道指專門用來處理輸入/輸出工作的處理器(簡稱I/O處理器)。2.通道的種類字節(jié)多路通道數(shù)據(jù)選擇通道數(shù)組多路通道3.通道程序操作碼內(nèi)存地址傳送字節(jié)數(shù)特征位7.1.2.4I/O統(tǒng)一接口設(shè)備硬件級設(shè)備驅(qū)動程序……設(shè)備驅(qū)動程序設(shè)備驅(qū)動程序接口邏輯I/O系統(tǒng)調(diào)用接口內(nèi)核內(nèi)核級用戶級用戶進(jìn)程庫函數(shù)用戶進(jìn)程7.2I/O控制方式7.2.1
程序直接控制方式7.2.2
中斷控制方式7.2.3
DMA控制方式7.2.4
通道控制方式程序直接控制方式:用詢問指令測試設(shè)備狀態(tài),決定主存與設(shè)備交換一個字。早期計算機(jī)采用之。
優(yōu)點(diǎn):工作過程簡單
缺點(diǎn):CPU的利用率很低
7.2.1
程序直接控制方式中斷控制方式:I/O正常/異常結(jié)束中斷CPU要求處理。I/O操作直接由CPU控制。優(yōu)點(diǎn):提高了CPU的利用率,并且支持CPU與設(shè)備的并行工作。
缺點(diǎn):數(shù)據(jù)傳輸中,中斷發(fā)生次數(shù)較多,耗費(fèi)大量CPU時間。7.2.2
中斷控制方式直接存儲器存?。―MA)控制方式
在外圍設(shè)備和內(nèi)存之間開辟直接的數(shù)據(jù)交換通路。該方法一般用于塊設(shè)備的數(shù)據(jù)傳輸。
優(yōu)點(diǎn):不用CPU干預(yù),減輕了CPU的負(fù)擔(dān);
I/O數(shù)據(jù)傳送速度大大提高;
特點(diǎn):1)數(shù)據(jù)傳輸?shù)幕締挝皇菙?shù)據(jù)塊2)傳輸數(shù)據(jù)直接從設(shè)備送入內(nèi)存或相反3)數(shù)據(jù)傳輸在DMA控制器控制下完成4)硬件線路比較復(fù)雜7.2.3DMA控制方式DMA控制器的組成主機(jī)與DMA控制器的接口
DMA控制器與塊設(shè)備的接口
I/O控制邏輯主機(jī)與控制器的接口由四類寄存器實(shí)現(xiàn)。命令/狀態(tài)寄存器內(nèi)存地址寄存器數(shù)據(jù)寄存器數(shù)據(jù)計數(shù)器DirectMemoryAccess(DMA)OperationofaDMAtransferDMA工作過程參數(shù)準(zhǔn)備階段DMA工作階段中斷處理階段交換數(shù)據(jù)的字節(jié)數(shù),主存地址,輔存地址,交換類型等DMA發(fā)傳輸請求,CPU應(yīng)答,DMA控制器接管對總線的控制,主存尋址,啟動數(shù)據(jù)傳輸利用中斷向CPU報告DMA操作結(jié)束7.2.4
通道方式和輸入輸出處理器DMA輸入輸出控制方法只解決了外存與主存的快速數(shù)據(jù)傳輸,CPU的效率不高,為提高CPU與I/O設(shè)備的并行性,引入了通道結(jié)構(gòu)。通道
獨(dú)立于CPU的專門用來處理輸入輸出控制的處理器(簡稱I/O處理器),它控制設(shè)備與內(nèi)存直接進(jìn)行數(shù)據(jù)交換。有自己的通道指令,指令受CPU啟動,操作結(jié)束向CPU發(fā)中斷信號。舉例:通道方式下的數(shù)據(jù)輸入過程:1)CPU發(fā)啟動指令,指明I/O操作,設(shè)備號和對應(yīng)通道。2)通道接收CPU指令,讀出內(nèi)存中的通道指令,執(zhí)行通道程序,控制設(shè)備將數(shù)據(jù)傳輸?shù)街付▋?nèi)存區(qū)域。3)數(shù)據(jù)傳輸結(jié)束后,向CPU發(fā)中斷請求,CPU轉(zhuǎn)中斷處理程序。通道控制方式與DMA方式的比較相似處:都以內(nèi)存為中心,實(shí)現(xiàn)設(shè)備和內(nèi)存直接交換數(shù)據(jù)。不同處:
1)DMA方式中,數(shù)據(jù)傳輸方向,內(nèi)存始址,數(shù)據(jù)塊長度都由CPU控制;通道方式中,這些由通道控制。2)通道控制方式可以做到一個通道控制多臺設(shè)備與內(nèi)存進(jìn)行數(shù)據(jù)交換,DMA方式時每臺設(shè)備至少有一個DMA控制器。2.通道的類型字節(jié)多路通道選擇通道數(shù)組多路通道以字節(jié)為單位分時傳送以成組方式傳送分時傳輸一個數(shù)據(jù)塊主要用于低速或中速設(shè)備主要用于高速設(shè)備用于中速設(shè)備分時并行操作通道利用率低傳輸速率高,通道利用率高3.通道程序
1)通道程序:由通道命令按照一定的控制要求組織起來的,它規(guī)定I/O設(shè)備所應(yīng)執(zhí)行的操作及順序。2)通道命令(CCW):規(guī)定了對設(shè)備操作的指令。包含信息:l
操作碼:規(guī)定了指令所執(zhí)行的操作,有數(shù)據(jù)傳輸類、通道轉(zhuǎn)移類、設(shè)備控制類三類。l
內(nèi)存地址:標(biāo)明了數(shù)據(jù)送入內(nèi)存或從內(nèi)存取出時的內(nèi)存首址。l
傳送字節(jié)數(shù):表明本指令所要讀或?qū)懙淖止?jié)數(shù)。l
特征位:程序結(jié)束位、記錄結(jié)束標(biāo)志位。3)通道程序的組織形成通道程序放在主存;將通道程序的首地址送入通道地址字(CAW)。即通知通道;通道程序在執(zhí)行過程中也把信息匯集在主存的另一個固定單元中,該單元稱為通道狀態(tài)字CSW;CSW指出包括下一條通道命令的主存地址、通道及與之相連的控制器和設(shè)備的狀態(tài),以及數(shù)據(jù)傳輸?shù)那闆r。4)一次的I/O執(zhí)行過程(1)根據(jù)要求組織好通道程序,且把通道程序的首地址放在通道地址字中。(2)CPU執(zhí)行“啟動I/O”指令啟動通道工作,通道逐條執(zhí)行通道命令,控制設(shè)備實(shí)現(xiàn)輸入輸出操作。(3)通道完成輸入輸出操作后,向CPU報告執(zhí)行情況,CPU處理來自通道的信息。7.3I/O緩沖7.3.1
單緩沖
7.3.2
雙緩沖
7.3.3
循環(huán)緩沖
7.3.4緩沖池
7.3.5
緩沖的作用
緩沖技術(shù)是為了緩解快速的主機(jī)和慢速的I/O設(shè)備速度不相匹配的矛盾。引入緩沖的主要原因:緩解CPU與I/O設(shè)備間速度不匹配的矛盾,提高CPU與I/O設(shè)備之間的并行性減少對CPU的中斷頻率,放寬對中斷響應(yīng)時間的限制7.3.1
單緩沖在內(nèi)存開辟一個緩沖區(qū)預(yù)輸入或緩輸出減少對磁盤的操作優(yōu)點(diǎn):緩解設(shè)備與處理機(jī)的處理速度矛盾缺點(diǎn):設(shè)備和設(shè)備之間不能通過單緩沖達(dá)到并行操作傳輸傳輸操作系統(tǒng)用戶進(jìn)程I/O設(shè)備7.3.2
雙緩沖兩個系統(tǒng)緩沖區(qū)一個用于緩沖輸入、一個用于緩沖輸出或者兩個都用于輸入或輸出優(yōu)點(diǎn):提高了CPU與設(shè)備,設(shè)備與設(shè)備之間的并行性缺點(diǎn):難以滿足多進(jìn)程和多設(shè)備之間并行操作的需要傳輸傳輸操作系統(tǒng)用戶進(jìn)程I/O設(shè)備7.3.3
循環(huán)緩沖多個緩沖區(qū)形成循環(huán)緩沖鏈一部分用于緩沖輸入、一部分用于緩沖輸出優(yōu)點(diǎn):提高了CPU與設(shè)備及設(shè)備與設(shè)備之間的并行能力缺點(diǎn):消耗大量的內(nèi)存空間,并且利用率也不高傳輸傳輸操作系統(tǒng)用戶進(jìn)程I/O設(shè)備緩沖區(qū)1……緩沖區(qū)n7.3.4
緩沖池緩沖池:把多個緩沖區(qū)連接起來統(tǒng)一管理,既可用于輸入又可用于輸出的緩沖結(jié)構(gòu)。1.緩沖池結(jié)構(gòu)每個緩沖區(qū)由兩部分組成:緩沖區(qū)首部和緩沖體。三種隊(duì)列:空白緩沖隊(duì)列em:隊(duì)首指針為F(em)和隊(duì)尾指針為L(em)輸入緩沖隊(duì)列in:隊(duì)首指針為F(in)和隊(duì)尾指針為L(in)輸出緩沖隊(duì)列out:隊(duì)首指針為F(out
)和隊(duì)尾指針為L(out
)7.3.4
緩沖池工作緩沖狀態(tài):收容輸入緩沖區(qū)(hin)、提取輸入緩沖區(qū)(sin)、收容輸出緩沖區(qū)(hout)、提取輸出緩沖區(qū)(sout)。收容輸入提取輸入緩沖池用戶進(jìn)程輸入設(shè)備hinsoutsinhout收容輸出提取輸出輸出設(shè)備輸入緩沖隊(duì)列in輸出緩沖隊(duì)列out空白緩沖隊(duì)列em7.3.4
緩沖池2.管理(1)take_buf(type):取出一個緩沖區(qū)(2)add_buf(type,number):插入緩沖區(qū)(3)get_buf(type,number):申請緩沖區(qū)(4)put_buf(type,work_buf):放入相應(yīng)緩沖區(qū)3.工作過程(1)收容輸入。(2)收容輸出。(3)提取輸入。(4)提取輸出。7.3.5
緩沖的作用緩沖是用來平滑I/O需求峰值的一種技術(shù)。提高操作系統(tǒng)效率和單個進(jìn)程性能的一種方法7.4設(shè)備驅(qū)動程序1設(shè)備驅(qū)動程序的模式2設(shè)備驅(qū)動程序的功能3設(shè)備驅(qū)動程序的特點(diǎn)4設(shè)備驅(qū)動程序的處理過程1設(shè)備驅(qū)動程序的模式設(shè)備驅(qū)動程序(DeviceDriver):控制設(shè)備直接進(jìn)行各種操作的內(nèi)核模塊。特點(diǎn):與設(shè)備類型一一對應(yīng),設(shè)備不同,驅(qū)動程序也不相同;一個設(shè)備驅(qū)動程序也可控制一種給定類型的多種設(shè)備。好處:方便用戶操作使用物理設(shè)備,降低操作系統(tǒng)設(shè)計復(fù)雜性。驅(qū)動程序的兩種實(shí)現(xiàn)模式:(1)驅(qū)動程序作為內(nèi)核過程操作系統(tǒng)中使用的主要模式。
優(yōu)點(diǎn):便于實(shí)現(xiàn)I/O子系統(tǒng)的層次模型,將其作為特殊文件處理,提供統(tǒng)一的界面,管理和使用。(2)驅(qū)動程序作為獨(dú)立的進(jìn)程(I/O進(jìn)程)
缺點(diǎn):不便于I/O子系統(tǒng)的層次實(shí)現(xiàn);系統(tǒng)開銷大;不能將其與文件統(tǒng)一地處理2設(shè)備驅(qū)動程序的功能將接收到的上層軟件的抽象要求轉(zhuǎn)換為具體要求。檢查用戶I/O請求的合法性,了解I/O設(shè)備狀態(tài),傳遞參數(shù),設(shè)置設(shè)備工作方式。發(fā)出I/O命令,啟動設(shè)備,完成指定I/O操作。
及時響應(yīng)處理控制器或通道發(fā)出的中斷請求。對有通道的系統(tǒng),根據(jù)用戶I/O請求,自動構(gòu)成通道程序。3設(shè)備驅(qū)動程序的特點(diǎn)設(shè)備驅(qū)動程序是請求I/O的進(jìn)程與設(shè)備控制器之間的一個通信程序。設(shè)備驅(qū)動程序與I/O設(shè)備的特性緊密相關(guān)。設(shè)備驅(qū)動程序與I/O控制方式緊密相關(guān)。設(shè)備驅(qū)動程序與硬件緊密相關(guān)。4設(shè)備驅(qū)動程序的處理過程設(shè)備驅(qū)動程序所做的工作:l
執(zhí)行進(jìn)程提出的I/O請求。l完成I/O后要用中斷向CPU報告完成情況,并準(zhǔn)備好執(zhí)行下一個請求。l
按某種優(yōu)化策略維護(hù)I/O請求隊(duì)列,以優(yōu)化系統(tǒng)性能。4設(shè)備驅(qū)動程序的處理過程執(zhí)行I/O請求的驅(qū)動程序一般處理過程:1)將用戶及上層軟件對設(shè)備控制器的抽象要求轉(zhuǎn)為具體要求;(相對地址物理地址)2)檢查I/O請求的合法性;3)讀出和檢查設(shè)備的狀態(tài);4)傳送必要的參數(shù)(如傳送字節(jié)數(shù)、主存始址送入相應(yīng)的控制寄存器);5)設(shè)置工作方式;6)啟動I/O設(shè)備;(向命令寄存器發(fā)控制命令)7.5設(shè)備分配7.5.1
設(shè)備分配原則與分配方式
7.5.2設(shè)備分配時應(yīng)該考慮的因素
7.5.3
設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)7.5.4
I/O設(shè)備分配的基本流程7.5.5
SPOOLing技術(shù)7.5.1
設(shè)備分配原則與分配方式
1.設(shè)備分配原則提高設(shè)備利用率并避免死鎖方便用戶使用設(shè)備2.設(shè)備分配方式靜態(tài)分配動態(tài)分配7.5.2
設(shè)備分配時應(yīng)考慮的因素1.I/O設(shè)備的固有屬性獨(dú)占設(shè)備的分配共享設(shè)備分配虛擬設(shè)備分配
2.I/O設(shè)備的分配算法(1)先來先服務(wù)(2)優(yōu)先級高者優(yōu)先
3.設(shè)備分配的安全性⑴安全分配方式⑵不安全分配方式
4.設(shè)備無關(guān)性將用戶程序和具體物理設(shè)備隔離開來,即實(shí)現(xiàn)設(shè)備無關(guān)性(獨(dú)立性)
邏輯設(shè)備與物理設(shè)備好處:設(shè)備分配時的靈活性易于實(shí)現(xiàn)I/O重定向獨(dú)占設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu):
設(shè)備控制表(DCT)
系統(tǒng)為每一個設(shè)備都設(shè)置一張設(shè)備控制表,用于記錄本設(shè)備的情況。包括:設(shè)備標(biāo)識符,設(shè)備類型,設(shè)備狀態(tài),重執(zhí)行次數(shù)或時間,控制器控制表指針,設(shè)備隊(duì)列指針。
控制器控制表(COCT)和通道控制表(CHCT)
每個控制器設(shè)置一張控制器控制表,每個通道配有一張通道控制表。COCT包括控制器標(biāo)識符,控制器狀態(tài),與控制器連接的通道表指針,控制器隊(duì)列隊(duì)首,隊(duì)尾指針。
CHCT包括通道標(biāo)識符,通道狀態(tài),與通道連接的控制器表指針,
通道隊(duì)列隊(duì)首,隊(duì)尾指針。
系統(tǒng)設(shè)備表(SDT)
記錄系統(tǒng)中所有設(shè)備信息,每個設(shè)備占一個表目。包括設(shè)備類型,標(biāo)識符,DCT和設(shè)備驅(qū)動程序的地址。7.5.3
設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)SDT、DCT、COCT和CHCT的關(guān)系SDT表目1…表目i設(shè)備類型設(shè)備標(biāo)識獲得設(shè)備的進(jìn)程DCT指針…DCT設(shè)備類型設(shè)備標(biāo)識設(shè)備忙/閑標(biāo)識COCT指針設(shè)備等待隊(duì)首設(shè)備等待隊(duì)尾…COCT控制器標(biāo)識控制忙/閑標(biāo)識CHCT指針控制器等待隊(duì)首控制器等待隊(duì)尾…CHCT通道標(biāo)識通道忙/閑標(biāo)識通道等待隊(duì)首通道等待隊(duì)尾…分配步驟:1)分配設(shè)備。查找系統(tǒng)設(shè)備表,若找到好的空設(shè)備,并滿足安全性要求,則將該空設(shè)備分配給請求進(jìn)程,然后轉(zhuǎn)分配控制器,若不能分配,將進(jìn)程PCB插入設(shè)備的等待隊(duì)列。2)分配控制器。在DCT中查找與該設(shè)備連接的COCT,檢查控制器是否空閑,若空閑,則將控制器分配給請求進(jìn)程,然后轉(zhuǎn)分配通道,否則請求進(jìn)程PCB進(jìn)入該控制器的等待隊(duì)列。
3)分配通道。在COCT中查找與該控制器連接的CHCT,檢查通道是否空閑,若是空閑,則將通道分配給該請求進(jìn)程,然后啟動I/O設(shè)備進(jìn)行數(shù)據(jù)傳送,否則該進(jìn)程PCB進(jìn)入該通道的等待隊(duì)列上。
7.5.4
設(shè)備分配的基本流程7.5.5
Spooling技術(shù)問題的提出:系統(tǒng)中獨(dú)占設(shè)備數(shù)目有限,不能滿足多進(jìn)程的需要設(shè)備的靜態(tài)分配可導(dǎo)致等待進(jìn)程被阻塞獨(dú)占設(shè)備的利用率不高為此現(xiàn)代操作系統(tǒng)提供虛擬設(shè)備來解決這些問題。1.什么是SPOOLing脫機(jī)工作模式7.5.5
Spooling技術(shù)1.什么是SPOOLing假脫機(jī)操作SPOOLing(SimultancausPeriphernalOperationOn-Line)技術(shù)在一臺共享設(shè)備(如高速、大容量的磁盤設(shè)備)上模擬若干臺獨(dú)占設(shè)備的操作,使每一臺獨(dú)占設(shè)備成為若干臺可并行操作的虛擬設(shè)備,即把獨(dú)占設(shè)備變成邏輯上的共享設(shè)備,從而提高了設(shè)備利用率和系統(tǒng)的效率,這種技術(shù)被稱為虛擬設(shè)備技術(shù)。實(shí)現(xiàn)這種技術(shù)的硬件和軟件系統(tǒng)被稱為Spooling(simultaneousperipheraloperationonline)系統(tǒng),或稱為假脫機(jī)系統(tǒng)。使用Spooling技術(shù)所提供的設(shè)備就稱為虛擬設(shè)備。7.5.5
Spooling技術(shù)2.SPOOLing的組成(1)輸入井和輸出井(2)輸入緩沖區(qū)和輸出緩沖區(qū)(3)輸入進(jìn)程和輸出進(jìn)程3.SPOOLing系統(tǒng)的工作原理磁盤輸入設(shè)備輸入緩沖區(qū)輸出緩沖區(qū)輸出設(shè)備輸入井輸出井輸入進(jìn)程輸出進(jìn)程7.5.5
Spooling技術(shù)4.SPOOLing系統(tǒng)的特點(diǎn)(1)提高了I/O速度(2)將獨(dú)占設(shè)備改造為共享設(shè)備(3)實(shí)現(xiàn)了虛擬設(shè)備的功能7.6
磁盤調(diào)度7.6.0
概述7.6.1
磁盤性能參數(shù)7.6.2
磁盤調(diào)度7.6.3
磁盤陣列概述磁盤數(shù)據(jù)的組織磁盤每面上一系列記錄信息的同心圓稱為磁道,磁道間有空隙,把它們從0開始由外向內(nèi)順序編號。不同盤面上具有相同編號的磁道形成一個個柱面。每個磁道一般都劃分若干個相等的扇形弧段,每個弧段稱為一個扇區(qū)或物理紀(jì)錄,各扇區(qū)實(shí)際物理長度不同。每個扇區(qū)對應(yīng)的磁道弧長雖然不一,但存儲的信息量是相同的。每個扇區(qū)一般包括兩個字段:標(biāo)識符字段和數(shù)據(jù)字段。每個物理記錄參數(shù):柱面號,磁頭號和扇區(qū)號。概述2.磁盤的類型固定頭磁盤
活動頭磁盤柱面號
磁頭號扇區(qū)號
7.6.1磁盤性能參數(shù)
尋道時間:活動磁頭將讀、寫磁頭移動到相應(yīng)的磁道所花費(fèi)的時間。
旋轉(zhuǎn)時間:讀、寫定位于某一磁道的扇區(qū)所需要的時間。
傳送時間:數(shù)據(jù)寫入磁盤,或從此磁盤讀出的時間。磁盤I/O請求服務(wù)的時間為以上三部分之和,其中尋道時間所花費(fèi)的時間最長。7.6.2磁盤調(diào)度磁盤調(diào)度包括“移動調(diào)度”和“旋轉(zhuǎn)調(diào)度”,分別針對減少尋道時間和旋轉(zhuǎn)時間。我們主要介紹“移動調(diào)度”,即根據(jù)用戶作業(yè)發(fā)出的磁盤I/O請求的柱面位置,來決定請求執(zhí)行順序的調(diào)度。其目的是盡可能的減少移動臂的移動距離。常用的算法有以下幾種:
先來先服務(wù)算法
最短尋道時間優(yōu)先算法
掃描算法
循環(huán)掃描法
對隊(duì)列多步掃描法
先來先服務(wù)算法
(First-Come-First-Served,FCFS)
根據(jù)進(jìn)程請求訪問磁盤的先后順序進(jìn)行調(diào)度,而不管進(jìn)程的優(yōu)先級。
舉例
優(yōu)點(diǎn):公平,處理簡單,每個進(jìn)程的請求都會得到處理。
缺點(diǎn):未對尋道進(jìn)行優(yōu)化,致使平均尋道時間可能較長。舉例:一個磁盤請求序列的磁道號為55,58,39,18,90,160,150,38,184。假定開始時,磁頭位于100號磁道。184160150905855393818磁頭移動方向磁頭總移動量=(100-55)+(58-55)+(58-39)+(39-18)+(90-18)+(160-90)+(160-150)+(150-38)+(184-38)=498平均尋道時間=498/9=55.3最短尋道時間優(yōu)先算法
(Shortest-Seek-Time-First,SSTF)
以申請者要求磁頭移動距離大小作為優(yōu)先的因素,磁道距離磁頭當(dāng)前位置愈近者優(yōu)先。
舉例
優(yōu)點(diǎn):平均等待時間得到改善,可以獲得較好的尋道性能。
缺點(diǎn):對用戶進(jìn)程請求的響應(yīng)機(jī)會不是均等的,可能導(dǎo)致某些進(jìn)程發(fā)生“餓死”現(xiàn)象。舉例:一個磁盤請求序列的磁道號為55,58,39,18,90,160,150,38,184。假定開始時,磁頭位于100號磁道。184160150905855393818磁頭總移動量=(100-90)+(90-58)+(58-55)+(55-39)+(39-38)+(38-18)+(150-18)+(160-150)+(184-160)=248平均尋道時間=248/9=27.5磁頭移動方向掃描算法
(SCAN,又稱電梯調(diào)度)
不僅考慮申請者要求磁頭移動方向,又考慮要求磁頭移動距離,而且首先是方向一致,其次才是距離最短。
舉例
優(yōu)點(diǎn):避免了饑餓現(xiàn)象。
缺點(diǎn):優(yōu)待了中間磁道的請求(因?yàn)楸环?wù)者無方向需求),有“磁臂粘著”現(xiàn)象。舉例:一個磁盤請求序列的磁道號為55,58,39,18,90,160,150,38,184。假定開始時,磁頭位于100號磁道。184160150905855393818磁頭移動方向磁頭總移動量=(150-100)+(160-150)+(184-160)+(184-90)+(90-58)+(58-55)+(55-39)+(39-38)+(38-18)=260平均尋道時間=260/9=28.9循環(huán)掃描法
(C-SCAN)規(guī)定磁頭單向移動。將各磁道視作一個環(huán)形緩沖區(qū)結(jié)構(gòu),最大磁道號和最小磁道號構(gòu)成循環(huán)。
舉例
優(yōu)點(diǎn):等待時間較均衡。
缺點(diǎn):有“磁臂粘著”現(xiàn)象。舉例:一個磁盤請求序列的磁道號為55,58,39,18,90,160,150,38,184。假定開始時,磁頭位于100號磁道。184160150905855393818磁頭移動方向磁頭總移動量=(150-100)+(160-150)+(184-160)+(184-18)+(38-18)+(39-38)+(55-39)+(58-55)+(90-58)=322平均尋道時間=322/9=35.8思想:把磁盤請求隊(duì)列分成長度為N的子隊(duì)列;按FCFS策略依次處理這些子隊(duì)列,而每處理一個隊(duì)列,又是用SCAN策略;在處理某一個隊(duì)列時,新請求必須添加到其他某個隊(duì)列中。
好處:可避免出現(xiàn)“磁臂粘著”現(xiàn)象。
多隊(duì)列多步掃描(N-STEP-SCAN)策略
旋轉(zhuǎn)調(diào)度當(dāng)同一柱面有多個記錄塊的I/O請求時,對該柱面的服務(wù)應(yīng)考慮旋轉(zhuǎn)優(yōu)化調(diào)度。如設(shè)每個磁道有9個記錄塊,當(dāng)前I/O請求:(10,1,8),(10,0,5),(10,0,2),(10,1,1)旋轉(zhuǎn)優(yōu)化調(diào)度:按次序:(10,1,1),(10,0,2),(10,0,5),(10,1,8)來響應(yīng)這些I/O請求,在磁盤旋轉(zhuǎn)一周,即可完成這些I/O。若按I/O請求次序響應(yīng):(10,1,8),(10,0,5),(10,0,2),(10,1,1),磁盤應(yīng)旋轉(zhuǎn)2.5周才可完成這些I/O。7.7時鐘管理和電源管理7.7.1時鐘管理1)時鐘硬件簡單的時鐘被連接到110V或220V的電源線上,每個電壓周期產(chǎn)生一個中斷,來計時。另一種類型的時鐘由三個部件構(gòu)成:晶體振蕩器、計數(shù)器和存儲寄存器。大多數(shù)計算機(jī)具有一個由電池供電的備份時鐘。對于一個連入網(wǎng)絡(luò)的系統(tǒng)可以從遠(yuǎn)程主機(jī)獲取當(dāng)前時間。7.7時鐘管理和電源管理時鐘軟件涉及時間的其他所有工作都必須由軟件—時鐘驅(qū)動程序完成。通常用于:1)維護(hù)日常時間;2)防止進(jìn)程超時運(yùn)行;3)CPU的使用情況記賬;4)處理用戶進(jìn)程提出的報警系統(tǒng)調(diào)用;5)為系統(tǒng)本身的各個部分提供監(jiān)視定時器;6)完成概要剖析、監(jiān)視和統(tǒng)計信息收集。軟定時器:是可編程時鐘,可以設(shè)置它以程序需要的任何速率引發(fā)定時器中斷。7.7時鐘管理和電源管理7.7.2電源管理目的是實(shí)現(xiàn)更好的節(jié)能與環(huán)保。1)硬件問題大多數(shù)計算機(jī)廠商對于電源節(jié)約采取的一般措施是將CPU、內(nèi)存以及I/O設(shè)備設(shè)計成具有多種狀態(tài):工作、睡眠、休眠和關(guān)閉。某些計算機(jī)具有兩個甚至三個電源按鈕來實(shí)現(xiàn)不同狀態(tài)下的節(jié)能。
7.7時鐘管理和電源管理2)操作系統(tǒng)問題
操作系統(tǒng)必須考慮若干問題來有效管理電源。必須決定關(guān)閉什么設(shè)備、何時關(guān)閉以及以什么狀態(tài)關(guān)閉。采用智能算法或啟發(fā)式方法做決定更好。顯示器:可通過當(dāng)幾分鐘的時間沒有活動時關(guān)閉顯示器或部分區(qū)域而節(jié)省能量(睡眠狀態(tài))。硬盤:往往是在幾分鐘不活動之后停止磁盤(讓磁盤休眠),并采用緩存和狀態(tài)反饋機(jī)制,實(shí)現(xiàn)重啟后的存取。
CPU:CPU變?yōu)榭臻e時,可以進(jìn)入睡眠狀態(tài)。注意:CPU在電壓、時鐘周期和電能消耗之間存在著一定的關(guān)系,該因素也可用于做調(diào)節(jié)電壓或睡眠的決定。內(nèi)存:2種方案可合理選擇實(shí)現(xiàn):1)關(guān)閉高速緩存是進(jìn)入睡眠狀態(tài):2)將主存的內(nèi)容寫到磁盤上,然后關(guān)閉主存(休眠)。
7.8
I/O管理實(shí)例:UNIXI/O管理在UNIX中,I/O設(shè)備分為塊設(shè)備和字符設(shè)備兩類
1.緩沖區(qū)管理UNIX采用緩沖池對塊設(shè)備的緩沖區(qū)進(jìn)行集中管理。緩沖控制塊主要包括以下方面信息:邏輯設(shè)備號;邏輯磁盤數(shù)據(jù)塊號;當(dāng)前所處的狀態(tài)緩沖數(shù)據(jù)區(qū)的指針;空閑緩沖區(qū)隊(duì)列的向前指針、向后指針;指向設(shè)備緩沖區(qū)隊(duì)列的向前指針、向后指針緩沖池結(jié)構(gòu)由多個緩沖區(qū)隊(duì)列組成,它們包括:空閑緩沖區(qū)隊(duì)列、設(shè)備緩沖區(qū)隊(duì)列和設(shè)備I/O請求隊(duì)列等7.8
I/O管理實(shí)例:UNIXI/O管理1.緩沖區(qū)管理空閑緩沖區(qū)隊(duì)列又稱空閑av鏈,它指向系統(tǒng)所擁有的所有空閑緩沖區(qū)資源設(shè)備緩沖區(qū)隊(duì)列又稱為設(shè)備b鏈,它鏈接所有分配給各類設(shè)備使用的緩沖區(qū),這些緩沖區(qū)表示已被設(shè)備使用過或正在被設(shè)備使用設(shè)備I/O請求隊(duì)列又稱設(shè)備av鏈,每個塊設(shè)備都有一個I/O請求隊(duì)列,設(shè)備I/O請求隊(duì)列中的緩沖區(qū)屬于設(shè)備b鏈,但不屬于空閑av鏈字符設(shè)備緩沖區(qū)是由若干個字符緩沖塊鏈在一起的單向鏈表。7.8
I/O管理實(shí)例:UNIXI/O管理2.設(shè)備驅(qū)動程序的接口設(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版(2024)一年級數(shù)學(xué)上冊期末復(fù)習(xí)專項(xiàng)拔高卷(含答案)
- 河南省許昌市育才學(xué)校2025-2026學(xué)年七年級上學(xué)期期末歷史試卷(含答案)
- 化工企業(yè)消防培訓(xùn)
- 2026年石化行業(yè)策略報告:上游油價觸底、下游供給側(cè)優(yōu)化加速產(chǎn)業(yè)鏈有望迎來共振周期
- 鋼網(wǎng)架結(jié)構(gòu)安裝技術(shù)要點(diǎn)
- 鋼結(jié)構(gòu)工程技術(shù)(35個)
- 2026山東聊城市市屬事業(yè)單位招聘初級綜合類崗位人員87人考試備考試題及答案解析
- 2026廣東廣州市中山大學(xué)腫瘤防治中心中心鼻咽科陳秋燕教授課題組自聘技術(shù)員招聘2人備考考試題庫及答案解析
- 三明林校2025-2026學(xué)年第二學(xué)期外聘教師招聘備考考試題庫及答案解析
- 2026新疆烏市第126中學(xué)慈湖初中部急聘初中物理老師備考考試試題及答案解析
- 湖北中煙2024年招聘考試真題(含答案解析)
- 2026年常州機(jī)電職業(yè)技術(shù)學(xué)院單招綜合素質(zhì)考試題庫及答案1套
- 2026年稅務(wù)師執(zhí)業(yè)規(guī)范考試題目含答案
- 2026年江蘇農(nóng)林職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試模擬測試卷必考題
- 廣東省廣州市八區(qū)聯(lián)考2024-2025學(xué)年高一上學(xué)期期末教學(xué)質(zhì)量監(jiān)測數(shù)學(xué)試卷(含答案)
- 選舉法知識課件
- 蒸汽管道安裝現(xiàn)場施工方案
- 2024年中考英語真題分類匯編-記敘文閱讀理解(含答案)
- 2026年開封職業(yè)學(xué)院單招職業(yè)傾向性測試題庫及完整答案詳解1套
- 雨課堂學(xué)堂在線學(xué)堂云《美國社會與文化(浙理)》單元測試考核答案
- 風(fēng)險和機(jī)遇識別及應(yīng)對措施-氣侯變化
評論
0/150
提交評論