




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第六章輸入輸出系統(tǒng)6.1I/O系統(tǒng)的功能、模型和接口6.2I/O設(shè)備和設(shè)備控制器6.3中斷機(jī)構(gòu)和中斷處理程序6.4設(shè)備驅(qū)動(dòng)程序6.5與設(shè)備無關(guān)的I/O軟件6.6用戶層的I/O軟件6.7緩沖區(qū)管理6.8磁盤存儲(chǔ)器的性能和調(diào)度基本任務(wù):完成用戶提出的I/O請(qǐng)求,提高I/O速率以及改善I/O設(shè)備的利用率主要功能:緩沖區(qū)管理、設(shè)備分配、設(shè)備處理、虛擬設(shè)備及設(shè)備獨(dú)立性等
6.1I/O系統(tǒng)的功能、模型和接口6.1.1I/O系統(tǒng)的基本功能隱藏物理設(shè)備的細(xì)節(jié)與設(shè)備的無關(guān)性(設(shè)備獨(dú)立性)提高處理機(jī)和I/O設(shè)備的利用率
對(duì)I/O設(shè)備進(jìn)行控制
確保對(duì)設(shè)備的正確共享錯(cuò)誤處理6.1.2I/O系統(tǒng)的層次結(jié)構(gòu)和模型
1.?I/O軟件的層次結(jié)構(gòu)
I/O系統(tǒng)中各種模塊之間的層次視圖
1)?I/O系統(tǒng)的上、下接口
2)?I/O系統(tǒng)的分層6.1.3I/O系統(tǒng)接口
在I/O系統(tǒng)與高層之間的接口中,根據(jù)設(shè)備類型的不同,又進(jìn)一步分為若干個(gè)接口:塊設(shè)備接口、流設(shè)備接口和網(wǎng)絡(luò)接口。
1.塊設(shè)備接口
2.流設(shè)備接口(字符設(shè)備接口)
3.網(wǎng)絡(luò)通信接口
6.2I/O設(shè)備和設(shè)備控制器I/O設(shè)備:執(zhí)行I/O操作的機(jī)械部分,執(zhí)行控制I/O的電子部件執(zhí)行I/O操作的機(jī)械部分——一般的I/O設(shè)備執(zhí)行控制I/O的電子部件則稱為設(shè)備控制器或適配器在微型機(jī)和小型機(jī)中的控制器常做成印刷電路卡形式,因而也常稱為控制卡、接口卡或網(wǎng)卡大、中型計(jì)算機(jī)系統(tǒng)中,還配置了I/O通道或I/O處理機(jī)。6.2.1I/O設(shè)備一、I/O設(shè)備的類型
1.按操作特性分類
(1)存儲(chǔ)設(shè)備(輔存)(2)輸入/輸出(I/O)設(shè)備
2.按信息交換的單位分類
(1)字符設(shè)備(慢)(2)塊設(shè)備(快)3.按設(shè)備的共享屬性分類
(1)獨(dú)占設(shè)備(2)共享設(shè)備(3)虛擬設(shè)備
4.按設(shè)備的傳輸速率分類
(1)低速設(shè)備(2)中速設(shè)備(3)高速設(shè)備指通過虛擬技術(shù)將一臺(tái)獨(dú)占設(shè)備變換為若干臺(tái)邏輯設(shè)備,供若干個(gè)用戶(進(jìn)程)同時(shí)使用2.設(shè)備與控制器之間的接口
通常,設(shè)備并不是直接與CPU進(jìn)行通信,而是與設(shè)備控制器通信,因此,在I/O設(shè)備中應(yīng)含有與設(shè)備控制器間的接口,在該接口中有三種類型的信號(hào)(
圖
所示),各對(duì)應(yīng)一條信號(hào)線。
11/20/20236.2.2設(shè)備控制器設(shè)備控制器職責(zé):控制一個(gè)或者多個(gè)I/O設(shè)備,以實(shí)現(xiàn)I/O設(shè)備和計(jì)算機(jī)之間的數(shù)據(jù)交換。
CPU–控制器-設(shè)備微機(jī)小型機(jī)中控制器——接口卡一、設(shè)備控制器的基本功能接收和識(shí)別命令數(shù)據(jù)交換標(biāo)識(shí)和報(bào)告設(shè)備的狀態(tài)地址識(shí)別數(shù)據(jù)緩沖差錯(cuò)控制I/O系統(tǒng)I/O系統(tǒng)二、設(shè)備控制器的組成設(shè)備控制器與處理機(jī)的接口設(shè)備控制器與設(shè)備的接口I/O邏輯I/O邏輯控制器與設(shè)備接口1控制器與設(shè)備接口i數(shù)據(jù)寄存器控制/狀態(tài)寄存器數(shù)據(jù)線地址線控制線CPU與控制器接口控制器與設(shè)備接口數(shù)據(jù)數(shù)據(jù)狀態(tài)控制狀態(tài)控制設(shè)備控制器與處理機(jī)的接口該接口用于實(shí)現(xiàn)CPU與設(shè)備控制器之間的通信。共有三類信號(hào)線:數(shù)據(jù)線、地址線和控制線。設(shè)備控制器與設(shè)備的接口在一個(gè)設(shè)備控制器上,可以連接一個(gè)或多個(gè)設(shè)備。相應(yīng)地,在控制器中便有一個(gè)或多個(gè)設(shè)備接口,一個(gè)接口連接一個(gè)設(shè)備。在每個(gè)接口中都存在數(shù)據(jù)、控制和狀態(tài)三種類型的信號(hào)。I/O邏輯:用于實(shí)現(xiàn)對(duì)設(shè)備的控制。它通過一組控制線與處理機(jī)交互,處理機(jī)利用該邏輯向控制器發(fā)送I/O命令,I/O邏輯對(duì)收到的命令進(jìn)行譯碼。每當(dāng)CPU要啟動(dòng)一個(gè)設(shè)備時(shí),一方面將啟動(dòng)命令發(fā)送給控制器;另一方面又同時(shí)通過地址線把地址發(fā)送給控制器,由控制器的I/O邏輯對(duì)收到的地址進(jìn)行譯碼,再根據(jù)所譯出的命令對(duì)所選設(shè)備進(jìn)行控制。6.2.3內(nèi)存映像I/O在早期的計(jì)算機(jī)中,包括大型計(jì)算機(jī),為實(shí)現(xiàn)CPU和設(shè)備控制器之間的通信,為每個(gè)控制寄存器分配一個(gè)I/O端口
=編址上不再區(qū)分內(nèi)存單元地址和設(shè)備控制器中的寄存器地址,都采用kk值處于0~n-1范圍時(shí):內(nèi)存地址k大于等于n時(shí):某個(gè)控制器的寄存器地址。6.2.4I/O通道一、I/O通道設(shè)備的引入實(shí)際上I/O通道是一種特殊的處理機(jī),它具有執(zhí)行I/O指令的能力,并通過執(zhí)行通道程序來控制I/O操作。與一般處理機(jī)不同于兩方面:
1.指令類型單一,只用于I/O操作;
2.通道沒有內(nèi)存,它與CPU共享內(nèi)存。引入目的 解脫CPU對(duì)I/O的組織、管理。
CPU只需發(fā)送I/O命令給通道,通道通過調(diào)用內(nèi)存中的相應(yīng)通道程序完成任務(wù)。I/O系統(tǒng)I/O系統(tǒng)二、
通道類型
字節(jié)多路通道的工作原理1.字節(jié)多路通道:各子通道以時(shí)間片輪轉(zhuǎn)方式共享通道,適用于低、中速設(shè)備。2.數(shù)組選擇通道:無子通道,僅一主通道,某時(shí)間由某設(shè)備獨(dú)占,適于高速設(shè)備。但通道未共享,利用率低。3.數(shù)組多路通道:多子通道不是以時(shí)間片方式,而是“按需分配”,綜合了前面2種通道類型的優(yōu)點(diǎn)。選擇通道I/O系統(tǒng)選擇通道磁盤字節(jié)多路通道打印機(jī)輸入機(jī)內(nèi)存儲(chǔ)器處理機(jī)磁帶數(shù)組多路通道硬件連接結(jié)構(gòu)三、“瓶頸”問題單通路I/O系統(tǒng)I/O系統(tǒng)存儲(chǔ)器I/O通道1I/O通道2控制器1控制器2控制器3控制器4設(shè)備1設(shè)備2設(shè)備3設(shè)備4設(shè)備5設(shè)備6設(shè)備7設(shè)備8CPU總線
多通路I/O系統(tǒng)I/O系統(tǒng)I/O通道1I/O通道2控制器控制器控制器控制器設(shè)備1設(shè)備2設(shè)備3設(shè)備4設(shè)備5設(shè)備6設(shè)備7設(shè)備8存儲(chǔ)器CPU總線
6.3中斷機(jī)構(gòu)和中斷處理程序中斷在操作系統(tǒng)中有著特殊重要的地位:是多道程序得以實(shí)現(xiàn)的基礎(chǔ):進(jìn)程之間的切換是通過中斷來完成的中斷也是設(shè)備管理的基礎(chǔ),為了提高處理機(jī)的利用率和實(shí)現(xiàn)CPU與I/O設(shè)備并行執(zhí)行,也必需有中斷的支持中斷處理程序:I/O系統(tǒng)中最低的一層,整個(gè)I/O系統(tǒng)的基礎(chǔ)6.3.1中斷簡(jiǎn)介
1.中斷和陷入
1)中斷
CPU對(duì)I/O設(shè)備發(fā)來的中斷信號(hào)的一種響應(yīng)。
2)陷入
CPU內(nèi)部事件引起中斷:非法指令,地址越界,運(yùn)算上溢或下溢
2.中斷向量表和中斷優(yōu)先級(jí)1)中斷向量表
記錄中斷程序的入口地址、中斷號(hào)(每一個(gè)設(shè)備的中斷請(qǐng)求規(guī)定一個(gè))
2)中斷優(yōu)先級(jí)
多個(gè)中斷信號(hào)源,不同的優(yōu)先級(jí)
3.對(duì)多中斷源的處理方式
1)屏蔽(禁止)中斷
處理一個(gè)中斷時(shí),屏蔽所有中斷
順序處理中斷簡(jiǎn)單不能用于實(shí)時(shí)性要求高
2)嵌套中斷優(yōu)先響應(yīng)最高優(yōu)先級(jí)高優(yōu)先級(jí)搶占低優(yōu)先級(jí)6.3.2中斷處理程序處理過程:
1.測(cè)定是否有未響應(yīng)的中斷信號(hào)
2.保護(hù)被中斷進(jìn)程的CPU環(huán)境
3.轉(zhuǎn)入相應(yīng)的設(shè)備處理程序
4.中斷處理
5.恢復(fù)被中斷進(jìn)程的現(xiàn)場(chǎng)
6.4設(shè)備驅(qū)動(dòng)程序設(shè)備驅(qū)動(dòng)程序通常又稱為設(shè)備處理程序。
主要任務(wù):接收上層軟件發(fā)來的抽象I/O要求(read或write)轉(zhuǎn)換為具體要求后,發(fā)送給設(shè)備控制器,啟動(dòng)設(shè)備去執(zhí)行也將由設(shè)備控制器發(fā)來的信號(hào)傳送給上層軟件由于驅(qū)動(dòng)程序與硬件密切相關(guān),故應(yīng)為每一類設(shè)備配置一種驅(qū)動(dòng)程序6.4.1設(shè)備驅(qū)動(dòng)程序概述1.設(shè)備驅(qū)動(dòng)程序的功能
(1)接收由設(shè)備獨(dú)立性軟件發(fā)來的命令和參數(shù),并將命令中的抽象要求轉(zhuǎn)換為具體要求,例如,將磁盤塊號(hào)轉(zhuǎn)換為磁盤的盤面、磁道號(hào)及扇區(qū)號(hào)。
(2)檢查用戶I/O請(qǐng)求的合法性,了解I/O設(shè)備的狀態(tài),傳遞有關(guān)參數(shù),設(shè)置設(shè)備的工作方式。
(3)發(fā)出I/O命令。如果設(shè)備空閑,便立即啟動(dòng)I/O設(shè)備去完成指定的I/O操作;如設(shè)備,則將請(qǐng)求者的請(qǐng)求塊掛在設(shè)備隊(duì)列上等待。
(4)及時(shí)響應(yīng)由控制器或通道發(fā)來的中斷請(qǐng)求,并根據(jù)其中斷類型調(diào)用相應(yīng)的中斷處理程序進(jìn)行處理。
(5)自動(dòng)地構(gòu)成通道程序。
2.設(shè)備驅(qū)動(dòng)程序的特點(diǎn)(1)驅(qū)動(dòng)程序主要是指在請(qǐng)求I/O的進(jìn)程與設(shè)備控制器之間的一個(gè)通信和轉(zhuǎn)換程序。(2)不同類型的設(shè)備應(yīng)配置不同的驅(qū)動(dòng)程序。(3)驅(qū)動(dòng)程序與I/O設(shè)備所采用的I/O控制方式緊密相關(guān)(中斷驅(qū)動(dòng)和DMA方式)(4)由于驅(qū)動(dòng)程序與硬件緊密相關(guān),因而其中的一部分必須用匯編語(yǔ)言書寫。目前有很多驅(qū)動(dòng)程序的基本部分,已經(jīng)固化在ROM中。(5)驅(qū)動(dòng)程序應(yīng)允許可重入。一個(gè)正在運(yùn)行的驅(qū)動(dòng)程序常會(huì)在一次調(diào)用完成前被再次調(diào)用。
3.設(shè)備處理方式
為每一類設(shè)備設(shè)置一個(gè)進(jìn)程,專門用于執(zhí)行此類設(shè)備的I/O操作整個(gè)系統(tǒng)設(shè)置一個(gè)I/O進(jìn)程,用于執(zhí)行所有I/O操作不設(shè)備專門的設(shè)備處理進(jìn)程,只為各類設(shè)備設(shè)置相應(yīng)的設(shè)備驅(qū)動(dòng)程序,供用戶或系統(tǒng)進(jìn)程調(diào)用(應(yīng)用最廣)6.4.2設(shè)備驅(qū)動(dòng)程序的處理過程1)將抽象要求轉(zhuǎn)換為具體要求2)檢查I/O請(qǐng)求的合法性3)讀出和檢查設(shè)備的狀態(tài)4)傳送必要的參數(shù):字節(jié)數(shù),內(nèi)存地址
5)工作方式的設(shè)置:波特率,校驗(yàn)方式
6)啟動(dòng)I/O設(shè)備:阻塞自己6.4.3對(duì)I/O設(shè)備的控制方式程序I/O方式(programmedI/O)(使用輪詢)CPUandDevicecannotworkinparallel中斷方式(interrupt)CPUanddevicecanworkinparallel,toomanyinterruptsforCPU通道方式(channel)specialprocessorfordealingwithi/ooperations直接存儲(chǔ)器訪問方式(DMA)DMAcontrollerinchargeofblocki/oI/O控制方式向I/O控制器發(fā)讀命令CPU→I/O讀I/O控制器的狀態(tài)I/O→CPU檢查狀態(tài)出錯(cuò)從I/O控制器中讀入字I/O→CPU未就緒向存儲(chǔ)器中寫字CPU→內(nèi)存?zhèn)魉屯瓿??未完成下條指令1.程序I/O方式查詢方式:CPU需花代價(jià)不斷查詢I/O狀態(tài)。CPU資源浪費(fèi)極大。注:程序I/O方式也稱作程序查詢方式或輪詢方式。2.中斷驅(qū)動(dòng)I/O方式向I/O發(fā)命令——返回——執(zhí)行其它任務(wù)。I/O中斷產(chǎn)生——CPU轉(zhuǎn)相應(yīng)中斷處理程序。如:讀數(shù)據(jù),讀完后以中斷方式通知CPU,CPU完成數(shù)據(jù)從I/O——內(nèi)存I/O控制方式CPU計(jì)算啟動(dòng)設(shè)備計(jì)算…計(jì)算中斷處理計(jì)算設(shè)備:工作特點(diǎn):CPU與設(shè)備并行工作設(shè)備多時(shí)對(duì)CPU打擾多I/O控制方式向I/O控制器發(fā)讀命令CPU→I/O讀I/O控制器的狀態(tài)I/O→CPU檢查狀態(tài)出錯(cuò)從I/O控制器中讀入字I/O→CPU向存儲(chǔ)器中寫字CPU→內(nèi)存?zhèn)魉屯瓿桑课赐瓿上聴l指令2.中斷驅(qū)動(dòng)I/O控制方式CPU做其它事中斷3.直接存儲(chǔ)器訪問DMAI/O控制方式一、引入中斷I/O,CPU“字節(jié)”干預(yù)一次,即每“字節(jié)”傳送產(chǎn)生一次中斷。DMA:由DMA控制器直接控制總線傳遞數(shù)據(jù)塊。DMA控制器完成從I/O——內(nèi)存。二、組成一組寄存器+控制邏輯。CR(命令/狀態(tài));DR(數(shù)據(jù));MAR(內(nèi)存地址);DC(計(jì)數(shù))I/O控制方式二、DMA控制器的組成DMA控制器由三部分組成:主機(jī)與DMA控制器的接口;DMA控制器與塊設(shè)備的接口;I/O控制邏輯。
I/O控制方式DMA控制器的示意圖countI/O控制邏輯DRMARDCCRCPU內(nèi)存主機(jī)—控制器接口控制器與塊設(shè)備接口系統(tǒng)總線DMA控制器命令命令/狀態(tài)寄存器CR:接收從CPU發(fā)來的I/O命令或有關(guān)控制和狀態(tài)信息數(shù)據(jù)寄存器DR:用于暫存設(shè)備到內(nèi)存或從內(nèi)存到設(shè)備的數(shù)據(jù)內(nèi)存地址寄存器MAR:存放把數(shù)據(jù)從設(shè)備傳送到內(nèi)存的起始目標(biāo)地址或內(nèi)存原地址數(shù)據(jù)計(jì)數(shù)器DC:存放本次CPU要讀或?qū)懙淖郑ü?jié))數(shù)I/O控制方式I/O控制方式③數(shù)據(jù)傳輸CPUDMA控制器內(nèi)存地址計(jì)數(shù)控制緩沖磁盤⑤中斷②DMA請(qǐng)求總線磁盤控制器④回答①DMA編程CPU設(shè)置DMA控制器實(shí)現(xiàn)DMA編程,同時(shí)啟動(dòng)磁盤控制器由磁盤讀入數(shù)據(jù)到內(nèi)部緩沖區(qū);DMA控制器向磁盤控制器發(fā)出讀請(qǐng)求;磁盤控制器將字節(jié)傳到內(nèi)存指定單元;磁盤控制器向DMA控制器發(fā)送回答;DMA控制器將MAR加1,DC減1,重復(fù)上述過程直至DC為0,DMA控制器向CPU發(fā)出中斷請(qǐng)求。I/O控制方式向I/O控制器發(fā)讀命令CPU→DMA讀I/O控制器的狀態(tài)DMA→CPU下條指令直接存儲(chǔ)器訪問DMA控制方式CPU做其它事中斷該方式的特點(diǎn)是:數(shù)據(jù)傳輸?shù)幕締挝皇菙?shù)據(jù)塊;所傳送的數(shù)據(jù)是從設(shè)備直接送入內(nèi)存的,或者相反;僅在傳送一個(gè)或多個(gè)數(shù)據(jù)塊的開始和結(jié)束時(shí),才需CPU干預(yù),整塊數(shù)據(jù)的傳送是在控制器的控制下完成的。三.DMA工作過程DMA方式的工作流程I/O控制方式設(shè)置MAR和DC初值啟動(dòng)DMA傳送命令傳送數(shù)據(jù)字MAR=MAR+1DC=DC-1DC=0?請(qǐng)求中斷在繼續(xù)執(zhí)行用戶程序的同時(shí),準(zhǔn)備又一次傳送4.I/O通道控制方式DMA方式:對(duì)需多個(gè)離散塊的讀取仍需要多次中斷。通道方式:CPU只需給出(1)通道程序首址。(2)要訪問I/O設(shè)備I/O控制方式I/O控制方式通道程序
通道是通過執(zhí)行通道程序,并與設(shè)備控制器共同實(shí)現(xiàn)對(duì)I/O設(shè)備的控制的。通道程序由一系列通道指令所構(gòu)成的。道指令一般包含下列信息:操作碼。規(guī)定指令所執(zhí)行的操作。內(nèi)存地址。計(jì)數(shù)。表示本指令所要操作的字節(jié)數(shù)。通道程序結(jié)束位P。用以表示程序是否結(jié)束。記錄結(jié)束標(biāo)志R。表示該指令是否與下條指令有關(guān)。操作PR計(jì)數(shù)內(nèi)存地址WRITE0080813WRITE001401034WRITE01605830WRITE013002000WRITE002501650WRITE112502720I/O控制方式優(yōu)點(diǎn):執(zhí)行一個(gè)通道程序可以完成幾批I/O操作。
6.5與設(shè)備無關(guān)的I/O軟件
提高OS的可適應(yīng)性和可擴(kuò)展性,在現(xiàn)代OS中都毫無例外地實(shí)現(xiàn)了設(shè)備獨(dú)立性(DeviceIndependence),也稱為設(shè)備無關(guān)性基本含義:應(yīng)用程序獨(dú)立于具體使用的物理設(shè)備邏輯設(shè)備和物理設(shè)備類似于物理地址和邏輯地址的概念。使用邏輯設(shè)備名稱來請(qǐng)求使用某類設(shè)備;系統(tǒng)實(shí)際執(zhí)行時(shí),必須使用物理設(shè)備名稱。為了實(shí)現(xiàn)應(yīng)用程序中所使用的設(shè)備與系統(tǒng)的設(shè)備變換無關(guān),設(shè)置一張邏輯設(shè)備表LUT主設(shè)備號(hào)邏輯設(shè)備名驅(qū)動(dòng)程序入口地址3/dev/tty1(鍵盤輸入設(shè)備1)30003/dev/tty2(鍵盤輸入設(shè)備2)30005(針式打印機(jī))/dev/lp(打印機(jī))50006/dev/ethN(網(wǎng)卡)4000
用激光打印機(jī)替換針式打印機(jī)后的LUT表:主設(shè)備號(hào)邏輯設(shè)備名驅(qū)動(dòng)程序入口地址3/dev/tty1(鍵盤輸入設(shè)備1)30003/dev/tty2(鍵盤輸入設(shè)備2)30007(激光打印機(jī))/dev/lp(打印機(jī))70006/dev/ethN(網(wǎng)卡)4000有利用設(shè)備分配時(shí)的靈活性易于實(shí)現(xiàn)I/O重定向I/O重定向指用于I/O操作的設(shè)備可以更換(重定向),而不必改變應(yīng)用程序。設(shè)備獨(dú)立性的優(yōu)點(diǎn)6.5.3設(shè)備分配
1.設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)
包括:對(duì)設(shè)備、設(shè)備控制器、通道的分配系統(tǒng)為每一設(shè)備都配置了一張?jiān)O(shè)備控制表,用于記錄本設(shè)備的情況DCT1DCT2DCTn設(shè)備類型type設(shè)備標(biāo)識(shí)符deviceid設(shè)備狀態(tài):等待/不等待忙/閑指向控制器表的指針重復(fù)執(zhí)行次數(shù)或時(shí)間設(shè)備隊(duì)列的隊(duì)首指針設(shè)備控制表集合I/O通道1I/O通道2控制器控制器設(shè)備1設(shè)備2設(shè)備3設(shè)備4控制器控制表COCT控制器標(biāo)識(shí)符控制器狀態(tài):等待/不等待與控制器相連的通道表指針控制器隊(duì)列的隊(duì)首指針控制器隊(duì)列的隊(duì)尾指針存儲(chǔ)器CPU總線通道控制表CHCT通道標(biāo)識(shí)符通道狀態(tài):忙/閑與通道相連的控制器表指針通道隊(duì)列的隊(duì)首指針通道隊(duì)列的隊(duì)尾指針系統(tǒng)設(shè)備表SDT。如圖所示:表目1表目i設(shè)備類型設(shè)備標(biāo)識(shí)符DCT驅(qū)動(dòng)程序入口系統(tǒng)設(shè)備表設(shè)備分配2.設(shè)備分配時(shí)應(yīng)考慮的因素設(shè)備的固有屬性設(shè)備分配算法設(shè)備分配中的安全性設(shè)備獨(dú)立性獨(dú)占設(shè)備共享設(shè)備(3)虛擬設(shè)備設(shè)備分配(1)先來先服務(wù)(2)優(yōu)先級(jí)高者優(yōu)先安全分配方式不安全分配方式3.獨(dú)占設(shè)備的分配程序基本的設(shè)備分配程序分配設(shè)備分配控制器分配通道基本設(shè)備分配程序存在的問題進(jìn)程以物理設(shè)備名提出I/O請(qǐng)求采用單通路的I/O系統(tǒng)結(jié)構(gòu),產(chǎn)生“瓶頸”設(shè)備分配設(shè)備分配程序的改進(jìn)增加設(shè)備的獨(dú)立性考慮多通路情況
6.6用戶層的I/O軟件大部分的I/O軟件都在操作系統(tǒng)內(nèi)部
有一小部分在用戶層(與用戶程序鏈接在一起的庫(kù)函數(shù)等)用戶層軟件必須通過一組系統(tǒng)調(diào)用來取得操作系統(tǒng)服務(wù)在現(xiàn)代的高級(jí)語(yǔ)言以及C語(yǔ)言中,通常提供了與各系統(tǒng)調(diào)用一一對(duì)應(yīng)的庫(kù)函數(shù),用戶程序通過調(diào)用對(duì)應(yīng)的庫(kù)函數(shù)使用系統(tǒng)調(diào)用(如C語(yǔ)言中的庫(kù)函數(shù)write等)
Spooling系統(tǒng)及網(wǎng)絡(luò)傳輸文件時(shí)使用的守護(hù)進(jìn)程等,運(yùn)行在內(nèi)核之外,歸屬于I/O系統(tǒng)6.6.2假脫機(jī)(Spooling)系統(tǒng)如前所述,虛擬性是OS的四大特征之一通過多道程序技術(shù)將一臺(tái)物理CPU虛擬為多臺(tái)邏輯CPU,從而允許多個(gè)用戶共享一臺(tái)主機(jī)通過SPOOLing技術(shù)便可將一臺(tái)物理I/O設(shè)備虛擬為多臺(tái)邏輯I/O設(shè)備,同樣允許多個(gè)用戶共享一臺(tái)物理I/O設(shè)備。引入:在多道程序系統(tǒng)中,專門利用一道程序(SPOOLing程序)來完成對(duì)設(shè)備的I/O操作。無需使用外圍I/O處理機(jī)。1.SPOOLing技術(shù)設(shè)備分配什么是SPOOLing通過共享設(shè)備來模擬獨(dú)占設(shè)備,將獨(dú)占設(shè)備改造成共享設(shè)備,從而提高了設(shè)備利用率和系統(tǒng)效率,這種技術(shù)被稱為Spooling技術(shù)。同時(shí)外圍聯(lián)機(jī)操作(SimultaneousPeripheralOperatingOn—Line),或稱為假脫機(jī)操作。設(shè)備分配2.SPOOLing系統(tǒng)的組成主要有三大部分:輸入井和輸出井:是磁盤上開辟的兩個(gè)大存儲(chǔ)空間。輸入井模擬脫機(jī)輸入的磁盤設(shè)備,輸出井模擬脫機(jī)輸出時(shí)的磁盤。輸入緩沖區(qū)和輸出緩沖區(qū):輸入緩沖區(qū)暫存由輸入設(shè)備送來的數(shù)據(jù),后送輸入井;輸出緩沖區(qū)暫存從輸出井送來的數(shù)據(jù),后送輸出設(shè)備輸入進(jìn)程和輸出進(jìn)程:利用兩個(gè)進(jìn)程模擬脫機(jī)I/O時(shí)的外圍處理機(jī)。設(shè)備分配SPOOLing系統(tǒng)的組成輸入進(jìn)程SPi
輸出進(jìn)程SP0輸入緩沖區(qū)Bi輸出緩沖區(qū)B0輸入井輸出井輸入設(shè)備輸出設(shè)備磁盤內(nèi)存設(shè)備分配SPOOLing系統(tǒng)的處理過程設(shè)備分配用進(jìn)程Spi模擬脫機(jī)輸入時(shí)的外圍控制機(jī),將用戶要求的數(shù)據(jù)從輸入機(jī)通過輸入緩沖區(qū)再送到輸入井。當(dāng)CPU需要輸入數(shù)據(jù)時(shí),直接從輸入井讀入內(nèi)存用SPO進(jìn)程模擬脫機(jī)輸出時(shí)的外圍控制機(jī),把用戶要求輸出的數(shù)據(jù)先從內(nèi)存送到輸出井,待輸出設(shè)備空閑時(shí),再將輸出井中的數(shù)據(jù)經(jīng)過輸出緩沖區(qū)送到輸出設(shè)備上SPOOLing系統(tǒng)的特點(diǎn)
提高了I/O的速度:利用輸入輸出井模擬脫機(jī)輸入輸出,緩和了CPU和I/O設(shè)備速度不匹配的矛盾
將獨(dú)占設(shè)備改造為共享設(shè)備:并沒有為進(jìn)程分配設(shè)備,而是為進(jìn)程分配一存儲(chǔ)區(qū)和建立一張I/O請(qǐng)求表
實(shí)現(xiàn)了虛擬設(shè)備功能:多個(gè)進(jìn)程同時(shí)使用一臺(tái)獨(dú)占設(shè)備設(shè)備分配
6.7緩?沖?區(qū)?管?理6.7.1緩沖的引入引入緩沖區(qū)的主要原因歸結(jié)為以下幾點(diǎn):1.緩和CPU與I/O設(shè)備間速度不匹配的矛盾。2.減少對(duì)CPU的中斷頻率,放寬對(duì)CPU中斷響應(yīng)時(shí)間的限制。3.提高CPU和I/O設(shè)備之間的并行性。6.7.2單緩沖和雙緩沖1.單緩沖(SingleBuffer)I/O設(shè)備系統(tǒng)單緩沖buf用戶buf用戶進(jìn)程輸入(T)傳送(M)計(jì)算(C)工作示意圖TMCTMCTMCTMCt①②③④緩沖管理一個(gè)緩沖區(qū),CPU和外設(shè)輪流使用,一方處理完之后接著等待對(duì)方處理。C和T可并行,M和C或M和T不能并行,因此處理一塊數(shù)據(jù)時(shí)間:Max(C,T)+M2.雙緩沖(DoubleBuffer)效率有所提高,且進(jìn)一步平滑了傳輸峰值。系統(tǒng)處理一塊數(shù)據(jù)的時(shí)間約為:MAX(C,T)收發(fā)可雙向同時(shí)傳送。緩沖管理兩個(gè)緩沖區(qū),CPU和外設(shè)都可以連續(xù)處理而無需等待對(duì)方。要求CPU和外設(shè)的速度相近。雙機(jī)通訊時(shí)緩沖區(qū)的設(shè)置緩沖區(qū)A機(jī)緩沖區(qū)B機(jī)單緩沖發(fā)送緩沖區(qū)接收緩沖區(qū)A機(jī)
接收緩沖區(qū)發(fā)送緩沖區(qū)B機(jī)雙緩沖緩沖管理6.7.3循環(huán)緩沖1.循環(huán)緩沖的組成輸入進(jìn)程下一個(gè)可用空緩沖區(qū)R計(jì)算進(jìn)程下一個(gè)可用緩沖區(qū)C緩沖管理計(jì)算進(jìn)程當(dāng)前正在使用緩沖區(qū)C指針current類型:R:空緩沖;G:滿緩沖;C:當(dāng)前緩沖2.循環(huán)緩沖區(qū)的使用(1)Getbuf過程。輸入進(jìn)程計(jì)算進(jìn)程nextinextinextgcurrentnextgC緩沖管理G2.循環(huán)緩沖區(qū)的使用(2)(2)Releasebuf過程。輸入進(jìn)程計(jì)算進(jìn)程nexticurrentnextgCRG緩沖管理3.進(jìn)程同步Nexti指針追趕上Nextg指針。(2)Nextg指針追趕上Nexti指針。nextinextgGGGGRR165423nextinextiGG緩沖管理6.7.4緩沖池(BufferPool)1.緩沖池的組成
1.緩沖池的組成
緩沖池EmEmEmEmEmInInInInOutOutOutOut緩沖管理11/20/202370緩沖區(qū)的工作方式緩沖區(qū)可以工作在下列四種方式下:收容輸入。輸入進(jìn)程需要輸入時(shí),取得空緩沖區(qū),裝滿后放入輸入隊(duì)列。提取輸入。計(jì)算進(jìn)程需要輸入時(shí),在輸入隊(duì)列取緩沖區(qū),提取數(shù)據(jù)后掛在空緩沖區(qū)隊(duì)列上。收容輸出。計(jì)算進(jìn)程需要輸出時(shí),取空緩沖區(qū),裝滿數(shù)據(jù)后掛在輸出緩沖隊(duì)列上。提取輸出。輸出進(jìn)程從輸出隊(duì)列取緩沖區(qū),提取完數(shù)據(jù)后掛在空緩沖區(qū)上。1.收容輸入hin;2.提取輸入sin3.收容輸出;4.提取輸出緩沖管理hin=getbuf(emq);putbuf(inq,hin)sin=getbuf(inq);putbuf(emq,sin)
sout=getbuf(outq)putbuf(emq,sout)hout=getbuf(emq)putbuf(outq,hout)
1.hin=getbuf(emq);putbuf(inq,hin)2.sin=getbuf(inq); 計(jì)算;putbuf(emq,sin)3.hout=getbuf(emq);putbuf(outq,hout)4.sout=getbuf(outq);輸出;putbuf(emq,sout)Getbuf(type)Beginwait(RS(type));wait(MS(type));B(number):=takebuf(type);signal(MS(type));endPutbuf(type)Beginwait(MS(type));addbuf(type,number);signal(MS(type));signal(RS(type));end緩沖管理
6.8磁盤存儲(chǔ)器的性能和調(diào)度6.8.1磁盤性能簡(jiǎn)述數(shù)據(jù)的組織磁盤的類型訪問時(shí)間磁盤的格式化
2.磁盤的類型1)固定頭磁盤這種磁盤在每條磁道上都有一讀/寫磁頭,所有的磁頭都被裝在一剛性磁臂中。通過這些磁頭可訪問所有各磁道,并進(jìn)行并行讀/寫,有效地提高了磁盤的I/O速度。這種結(jié)構(gòu)的磁盤主要用于大容量磁盤上。
2)移動(dòng)頭磁盤
每一個(gè)盤面僅配有一個(gè)磁頭,也被裝入磁臂中。為能訪問該盤面上的所有磁道,該磁頭必須能移動(dòng)以進(jìn)行尋道。可見,移動(dòng)磁頭僅能以串行方式讀/寫,致使其I/O速度較慢;但由于其結(jié)構(gòu)簡(jiǎn)單,故仍廣泛應(yīng)用于中小型磁盤設(shè)備中。信息記錄在磁道上,多個(gè)盤片,正反兩面都用來記錄信息,每面一個(gè)磁頭所有盤面中處于同一磁道號(hào)上的所有磁道組成一個(gè)柱面每個(gè)扇區(qū)大小為600字節(jié)(數(shù)據(jù)512字節(jié))物理地址形式:柱面號(hào) 磁頭號(hào)扇區(qū)號(hào)柱面、磁頭、扇區(qū)磁盤存儲(chǔ)器管理由三個(gè)動(dòng)作組成:尋道:磁頭移動(dòng)定位到指定磁道旋轉(zhuǎn)延遲:等待指定扇區(qū)從磁頭下旋轉(zhuǎn)經(jīng)過數(shù)據(jù)傳輸:數(shù)據(jù)在磁盤與內(nèi)存之間的實(shí)際傳輸磁盤的訪問過程磁盤存儲(chǔ)器管理尋道時(shí)間Ts:大約幾ms到幾十msTs=啟動(dòng)磁臂時(shí)間S+磁頭移動(dòng)磁道數(shù)n×磁頭移道速度m旋轉(zhuǎn)延遲時(shí)間Tr:對(duì)于7200轉(zhuǎn)/分,平均延遲時(shí)間為4.2ms數(shù)據(jù)傳輸時(shí)間Tt:目前磁盤的傳輸速度一般有幾十M/s,傳輸一個(gè)扇區(qū)的時(shí)間小于0.05ms磁盤的訪問時(shí)間第6章輸入輸出系統(tǒng)思考設(shè)磁盤的轉(zhuǎn)速為3000轉(zhuǎn)/分,盤面劃分成10個(gè)扇區(qū),計(jì)算讀取一個(gè)扇區(qū)的時(shí)間?1分鐘內(nèi),磁盤可以轉(zhuǎn)動(dòng)3000轉(zhuǎn)1秒內(nèi)磁盤轉(zhuǎn)50轉(zhuǎn)1秒磁頭讀取了50×10=500個(gè)扇區(qū)讀取一個(gè)扇區(qū)的時(shí)間:1/500=0.002s=2ms第6章輸入輸出系統(tǒng)磁盤訪問時(shí)間假設(shè)有4個(gè)記錄A、B、C、D存放在磁盤的某個(gè)磁道上,該磁道被劃分為4塊,每塊存放一個(gè)記錄,安排如下表所示:現(xiàn)在要順序處理這些記錄,如果磁盤旋轉(zhuǎn)速度為20ms轉(zhuǎn)一周,處理程序每讀一個(gè)記錄后5ms進(jìn)行處理。試問處理完這個(gè)4個(gè)記錄的總時(shí)間是多少?為了縮短處理時(shí)間應(yīng)進(jìn)行優(yōu)化分布,試問應(yīng)如何安排這些記錄,并計(jì)算機(jī)處理的總時(shí)間。塊號(hào)1234記錄號(hào)ABCD第6章輸入輸出系統(tǒng)思考要提高磁盤的數(shù)據(jù)訪問速度,主要應(yīng)在哪方面下功夫?磁盤存儲(chǔ)器管理第6章輸入輸出系統(tǒng)分析要提高磁盤的訪問速度主要應(yīng)從以下兩方面入手:數(shù)據(jù)的合理組織磁盤的調(diào)度算法磁盤存儲(chǔ)器管理第6章輸入輸出系統(tǒng)5.6.2磁盤調(diào)度算法當(dāng)多個(gè)訪盤請(qǐng)求在等待時(shí),采用一定的策略,對(duì)這些請(qǐng)求的服務(wù)順序調(diào)整安排,旨在降低平均磁盤服務(wù)時(shí)間,達(dá)到公平、高效公平:一個(gè)I/O請(qǐng)求在有限時(shí)間內(nèi)滿足高效:減少設(shè)備機(jī)械運(yùn)動(dòng)所帶來的時(shí)間浪費(fèi)先來先服務(wù)FCFS最短尋道時(shí)間優(yōu)先SSTF掃描算法SCAN單向掃描調(diào)度算法CSCAN磁盤存儲(chǔ)器管理第6章輸入輸出系統(tǒng)按訪問請(qǐng)求到達(dá)的先后次序服務(wù)優(yōu)點(diǎn):簡(jiǎn)單,公平;缺點(diǎn):效率不高,相鄰兩次請(qǐng)求可能會(huì)造成最內(nèi)到最外的柱面尋道,使磁頭反復(fù)移動(dòng),增加了服務(wù)時(shí)間,對(duì)機(jī)械也不利先來先服務(wù)FCFS磁盤存儲(chǔ)器管理第6章輸入輸出系統(tǒng)假設(shè)磁盤訪問序列:98,183,37,122,14,124,65,67讀寫頭起始位置:53安排磁頭服務(wù)序列計(jì)算磁頭移動(dòng)總距離(道數(shù))先來先服務(wù)FCFS磁盤存儲(chǔ)器管理第6章輸入輸出系統(tǒng)磁盤存儲(chǔ)器管理磁盤訪問序列:98,183,37,122,14,124,65,67先來先服務(wù)FCFS143753656798122124183458514685108110592磁頭走過的總道數(shù):640平均尋道長(zhǎng)度:8098,183,37,122,14,124,65,67第6章輸入輸出系統(tǒng)優(yōu)先選擇距當(dāng)前磁頭最近的訪問請(qǐng)求進(jìn)行服務(wù),主要考慮尋道優(yōu)先優(yōu)點(diǎn):改善了磁盤平均服務(wù)時(shí)間;缺點(diǎn):造成某些訪問請(qǐng)求長(zhǎng)期等待得不到服務(wù)最短尋道時(shí)間優(yōu)先SSTF磁盤存儲(chǔ)器管理第6章輸入輸出系統(tǒng)磁盤存儲(chǔ)器管理磁盤訪問序列:65,67,37,14,98,122,124,183最短尋道時(shí)間優(yōu)先SSTF14375365679812212418312230238424259磁頭走過的總道數(shù):236平均尋道長(zhǎng)度:29.598,183,37,122,14,124,65,67第6章輸入輸出系統(tǒng)克服了最短尋道優(yōu)先的缺點(diǎn),既考慮了距離,同時(shí)又考慮了方向具體做法:當(dāng)設(shè)備無訪問請(qǐng)求時(shí),磁頭不動(dòng);當(dāng)有訪問請(qǐng)求時(shí),磁頭按一個(gè)方向移動(dòng),在移動(dòng)過程中對(duì)遇到的訪問請(qǐng)求進(jìn)行服務(wù),然后判斷該方向上是否還有訪問請(qǐng)求,如果有則繼續(xù)掃描;否則改變移動(dòng)方向,并為經(jīng)過的訪問請(qǐng)求服務(wù),如此反復(fù)掃描算法(電梯算法)SCAN磁盤存儲(chǔ)器管理第6章輸入輸出系統(tǒng)磁盤存儲(chǔ)器管理磁盤訪問序列:37,14,65,67,98,122,124,183掃描算法(電梯算法)SCAN14375365679812212418351216233124259磁頭走過的總道數(shù):208平均尋道長(zhǎng)度:2698,183,37,122,14,124,65,67假設(shè)此時(shí)磁頭向內(nèi)移動(dòng)第6章輸入輸出系統(tǒng)也稱循環(huán)掃描算法。電梯算法杜絕了饑餓,但當(dāng)請(qǐng)求對(duì)磁道的分布是均勻時(shí),磁頭回頭,近磁頭端的請(qǐng)求很少(因?yàn)榇蓬^剛經(jīng)過),而遠(yuǎn)端請(qǐng)求較多,這些請(qǐng)求等待時(shí)間要長(zhǎng)一些??偸亲岳锵蛲庖苿?dòng)。移動(dòng)臂到達(dá)最后個(gè)一個(gè)柱面后,立即帶動(dòng)讀寫磁頭快速返回到最里的欲訪問磁道。返回時(shí)不為任何的等待訪問者服務(wù)。返回后可再次進(jìn)行掃描單向掃描調(diào)度算法CSCAN磁盤存儲(chǔ)器管理第6章輸入輸出系統(tǒng)磁盤存儲(chǔ)器管理磁盤訪問序列:65,67,98,122,124,183,14,37單向掃描算法CSCAN143753656798122124183122169233124259磁頭走過的總道數(shù):352平均尋道長(zhǎng)度:4498,183,37,122,14,124,65,67第6章輸入輸出系統(tǒng)調(diào)度算法的選擇實(shí)際系統(tǒng)相當(dāng)普遍采用最短尋道時(shí)間優(yōu)先算法,因?yàn)樗?jiǎn)單有效,性價(jià)比好。掃描算法更適于磁盤負(fù)擔(dān)重的系統(tǒng)。磁盤負(fù)擔(dān)很輕的系統(tǒng)也可以采用先來先服務(wù)算法一般要將磁盤調(diào)度算法作為操作系統(tǒng)的單獨(dú)模塊編寫,利于修改和更換。磁盤存儲(chǔ)器管理第6章輸入輸出系統(tǒng)序號(hào)柱面號(hào)磁頭號(hào)扇區(qū)號(hào)1963275631520649445209567152調(diào)度算法的選擇假定磁盤的存儲(chǔ)臂現(xiàn)在處于8號(hào)柱面上,有如下表所示的6個(gè)請(qǐng)求等待訪問磁盤,試列出最省時(shí)間的響應(yīng)順序。2→6→4→1→3→5磁盤存儲(chǔ)器管理第6章輸入輸出系統(tǒng)例題例1:簡(jiǎn)述設(shè)備分配的過程。答:設(shè)備分配程序要用到系統(tǒng)設(shè)備表、設(shè)備控制表、控制器控制表和通道控制表。其主要過程是:按指定方式掃描SDT,找出該類設(shè)備DCT鏈的起始地址。依DCT開始掃描,找出可以工作的設(shè)備,檢查設(shè)備分配的合理性,從而進(jìn)行設(shè)備的預(yù)分配。根據(jù)預(yù)分配設(shè)備的DCT,找出與之相連的COCT表,從所有相連的控制器中找出一個(gè)可以分配而且分配合理的控制器。從所分配的COCT出發(fā),根據(jù)CHCT鏈,找出一個(gè)可用的通道。當(dāng)找到一個(gè)可用的通路后,才實(shí)施真正的分配,把設(shè)備、控制器、通道一并分配給申請(qǐng)?jiān)O(shè)備的進(jìn)程。第6章輸入輸出系統(tǒng)例2:DMA方式和中斷方式有什么不同?答:DMA方式和中斷方式的主要不同點(diǎn)是:中斷方式在每個(gè)數(shù)據(jù)傳送完成后中斷CPU,而DMA方式則是在所要求傳送的一批數(shù)據(jù)全部傳送結(jié)束時(shí)中斷CPU;中斷方式的數(shù)據(jù)傳送是在中斷處理時(shí)由CPU控制完成,而DMA方式則是在DMA控制器的控制下完成。不過,DMA方式仍存在一定局限性。如數(shù)據(jù)傳送的方向、存放數(shù)據(jù)的內(nèi)存始址及傳送數(shù)據(jù)的長(zhǎng)度等都由CPU控制,并且每臺(tái)設(shè)備需一個(gè)DMA控制器,當(dāng)設(shè)備增加時(shí),多個(gè)DMA控制器的使用也不經(jīng)濟(jì)。第6章輸入輸出系統(tǒng)例3:DMA方式和通道方式有什么不同?答:DMA方式中,在DMA控制器控制下,設(shè)備和主存之間可成批地進(jìn)行數(shù)據(jù)交換,而不用CPU干預(yù),這種方式應(yīng)用于塊設(shè)備的數(shù)據(jù)傳輸。通道控制方式與DMA方式類似,也是一種以內(nèi)存為中心,實(shí)現(xiàn)設(shè)備與內(nèi)存直接交換數(shù)據(jù)的控制方式。在通道控制方式中,CPU只需發(fā)出啟動(dòng)指令,指出通道相應(yīng)的操作和I/O設(shè)備,該指令就可啟動(dòng)通道并使該通道從內(nèi)存中調(diào)出相應(yīng)的通道指令執(zhí)行。與DMA方式相比,通道方式所需的CPU干預(yù)更少,且可以做到一個(gè)通道控制多臺(tái)設(shè)備,從而更進(jìn)一步減輕了CPU的負(fù)擔(dān)。第6章輸入輸出系統(tǒng)例4:在某計(jì)算機(jī)系統(tǒng)中,其屏幕顯示分辨率為640*480,若要存儲(chǔ)一屏256彩色的圖像,需要多少字節(jié)存儲(chǔ)空間?解:屏幕信息的顯示是以像素為單位進(jìn)行的。由于屏幕顯示分辨率為640*480,故屏幕上有像素:
640*480=300*210個(gè)當(dāng)用256彩色顯示時(shí),每個(gè)像素需要8位二進(jìn)制數(shù)(28=256)表示,因此一屏信息需要存儲(chǔ)空間:
8*300*210位=300*210字節(jié)
=300K字節(jié)所以需要300K字節(jié)存儲(chǔ)空間。第6章輸入輸出系統(tǒng)例5:某軟盤有40個(gè)磁道,磁頭從一個(gè)磁道移至另一磁道需要6ms。文件在磁盤上非連續(xù)存放,邏輯上相鄰數(shù)據(jù)塊的平均距離為13磁道,每塊的旋轉(zhuǎn)延遲時(shí)間及傳輸時(shí)間分別為100ms、25ms,問讀取一個(gè)100塊的文件需要多少時(shí)間?如果系統(tǒng)對(duì)磁盤進(jìn)行了整理,讓同一個(gè)文件的磁盤塊盡可能靠攏,從而使邏輯上相鄰數(shù)據(jù)塊的平均距離降為2磁道,這時(shí)讀取一個(gè)100塊的文件需要多少時(shí)間?解:磁盤整理前,邏輯上相鄰數(shù)據(jù)塊的平均距離為13磁道,讀一塊數(shù)據(jù)需要的時(shí)間為:13*6+100+25=203ms因此,讀取一個(gè)100塊的文件需要時(shí)間:203*100=20300ms磁盤整理后,邏輯上相鄰數(shù)據(jù)塊的平均距離為2磁道,讀一塊數(shù)據(jù)需要的時(shí)間為:2*6+100+25=137ms因此,讀取一個(gè)100塊的文件需要時(shí)間:137*100=13700ms第6章輸入輸出系統(tǒng)例6:若磁頭的當(dāng)前位置為100磁道,磁頭正向磁道號(hào)增加方向移動(dòng)?,F(xiàn)有一磁盤讀寫請(qǐng)求隊(duì)列:23,376,205,132,19,61,190,398,29,4,18,40。若采用先來先服務(wù)、最短尋道時(shí)間優(yōu)先和掃描算法,試計(jì)算出平均尋道長(zhǎng)度各為多少?解:(1)先來先服務(wù):從100磁道開始,磁盤調(diào)度順序?yàn)椋?3->376->205->132->19->61->190->398->29->4->18->40。移動(dòng)磁道數(shù)總數(shù)為1596,平均尋道長(zhǎng)度為:133。(2)最短尋道時(shí)間優(yōu)先:從100磁道開始,磁盤調(diào)度順序?yàn)椋?32->190->205->61->40->29->23->19->18->4->376->398。移動(dòng)磁道數(shù)總數(shù)為700,平均尋道長(zhǎng)度為:58.3。(3)掃描算法:從100磁道開始,磁盤調(diào)度順序?yàn)椋?32->190->205->376->398->61->40->29->23->19->18-
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度員工保密及競(jìng)業(yè)禁止協(xié)議補(bǔ)充合同
- 二零二五年度聯(lián)合體合作協(xié)議-海洋資源開發(fā)與保護(hù)
- 2025年度人工智能技術(shù)研發(fā)全新期權(quán)合同
- 二零二五年度精裝修住宅購(gòu)房合同委托書
- 體育館室內(nèi)設(shè)計(jì)委托協(xié)議
- 2025年度商業(yè)地產(chǎn)商用租房租賃及可持續(xù)發(fā)展戰(zhàn)略合同
- 2025年配電箱外殼行業(yè)深度研究分析報(bào)告
- 二零二五年度藥房新零售店員工聘用及培訓(xùn)合同
- 2025年中國(guó)尿路感染用藥行業(yè)發(fā)展監(jiān)測(cè)及發(fā)展戰(zhàn)略規(guī)劃報(bào)告
- 2025年度城市更新項(xiàng)目三方房屋買賣及拆遷補(bǔ)償合同
- 2025年廣東廣州市海珠區(qū)官洲街道辦事處政府雇員招聘5人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 《道路交通安全法》課件完整版
- 《小腸梗阻的診斷與治療中國(guó)專家共識(shí)(2023版)》解讀
- 2024屆廣東省廣州市高三一??荚囉⒄Z(yǔ)試題講評(píng)課件
- 切削加工中的刀具路徑規(guī)劃算法考核試卷
- 《推拿學(xué)》期末考試復(fù)習(xí)題庫(kù)(含答案)
- 2024年經(jīng)濟(jì)師考試工商管理(中級(jí))專業(yè)知識(shí)和實(shí)務(wù)試卷及解答參考
- 10kV配電室工程施工方案設(shè)計(jì)
- 心電圖危急值的識(shí)別和處理知到智慧樹章節(jié)測(cè)試課后答案2024年秋浙江大學(xué)
- 2025年中國(guó)洗衣凝珠行業(yè)市場(chǎng)現(xiàn)狀及投資態(tài)勢(shì)分析報(bào)告(智研咨詢)
- DB41T 2466-2023 浸水電梯使用管理規(guī)范
評(píng)論
0/150
提交評(píng)論