輸入輸出系統(tǒng)學(xué)習(xí)教案_第1頁
輸入輸出系統(tǒng)學(xué)習(xí)教案_第2頁
輸入輸出系統(tǒng)學(xué)習(xí)教案_第3頁
輸入輸出系統(tǒng)學(xué)習(xí)教案_第4頁
輸入輸出系統(tǒng)學(xué)習(xí)教案_第5頁
已閱讀5頁,還剩103頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、會計學(xué)1輸入輸出系統(tǒng)輸入輸出系統(tǒng)(xtng)第一頁,共108頁。第1頁/共108頁第二頁,共108頁。第2頁/共108頁第三頁,共108頁。第3頁/共108頁第四頁,共108頁。第4頁/共108頁第五頁,共108頁?;蚧騃/O處理機。處理機。第5頁/共108頁第六頁,共108頁。一、一、I/O設(shè)備的類型設(shè)備的類型 1按操作特性分類按操作特性分類 (1) 存儲設(shè)備(輔存)存儲設(shè)備(輔存) (2) 輸入輸入/輸出輸出(I/O)設(shè)備設(shè)備 2按信息交換的單位分類按信息交換的單位分類 (1) 字符設(shè)備字符設(shè)備(慢慢) (2) 塊設(shè)備塊設(shè)備(快快) 3按設(shè)備的共享屬性分類按設(shè)備的共享屬性分類 (1) 獨占

2、獨占(dzhn)設(shè)備設(shè)備 (2) 共享設(shè)備共享設(shè)備 (3) 虛擬設(shè)虛擬設(shè)備備 4按設(shè)備的傳輸速率分類按設(shè)備的傳輸速率分類 (1) 低速設(shè)備低速設(shè)備 (2) 中速設(shè)備中速設(shè)備 (3) 高速設(shè)備高速設(shè)備指通過虛擬技術(shù)將一臺獨占設(shè)備變指通過虛擬技術(shù)將一臺獨占設(shè)備變換換(binhun)(binhun)為若干臺邏輯設(shè)備,為若干臺邏輯設(shè)備,供若干個用戶供若干個用戶( (進程進程) )同時使用同時使用第6頁/共108頁第七頁,共108頁。緩沖轉(zhuǎn)換器控制邏輯信號數(shù)據(jù)數(shù)據(jù)信號線狀態(tài)信號線控制信號線至設(shè)備控制器I/O設(shè)備第7頁/共108頁第八頁,共108頁。1/3/20226.2.2 6.2.2 設(shè)備設(shè)備(shb

3、i)(shbi)控制控制器器第8頁/共108頁第九頁,共108頁。第9頁/共108頁第十頁,共108頁。I/O邏輯邏輯控制器控制器與設(shè)備與設(shè)備接口接口1控制器控制器與設(shè)備與設(shè)備接口接口i數(shù)據(jù)寄存器數(shù)據(jù)寄存器控制控制/狀態(tài)狀態(tài)寄存器寄存器數(shù)據(jù)線數(shù)據(jù)線地址線地址線控制線控制線CPU與控制器接口與控制器接口控制器與設(shè)備接口控制器與設(shè)備接口數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)狀態(tài)狀態(tài)控制控制狀態(tài)狀態(tài)控制控制設(shè)備控制器與處理機的接口設(shè)備控制器與處理機的接口該接口用于實現(xiàn)該接口用于實現(xiàn)CPU與設(shè)備控制與設(shè)備控制器之間的通信。共有三類信號器之間的通信。共有三類信號線:線:數(shù)據(jù)線、地址線和控制線數(shù)據(jù)線、地址線和控制線。設(shè)備控制器

4、與設(shè)備的接口設(shè)備控制器與設(shè)備的接口在一個設(shè)備控制器上,可以連接一在一個設(shè)備控制器上,可以連接一個或多個設(shè)備。相應(yīng)地,在控制器個或多個設(shè)備。相應(yīng)地,在控制器中便有一個或多個設(shè)備接口,一個中便有一個或多個設(shè)備接口,一個接口連接一個設(shè)備。在每個接口中接口連接一個設(shè)備。在每個接口中都存在數(shù)據(jù)、控制和狀態(tài)三種類型都存在數(shù)據(jù)、控制和狀態(tài)三種類型的信號。的信號。I/O邏輯邏輯:用于實現(xiàn)對設(shè)備的控制。它通過一組控制線與處理機交互,處理機用于實現(xiàn)對設(shè)備的控制。它通過一組控制線與處理機交互,處理機利用該邏輯向控制器發(fā)送利用該邏輯向控制器發(fā)送I/O命令,命令,I/O邏輯對收到的命令進行譯碼。每當(dāng)邏輯對收到的命令進行

5、譯碼。每當(dāng)CPU要啟要啟動一個設(shè)備時,一方面將啟動命令發(fā)送給控制器;另一方面又同時通過地址線把地址發(fā)送給動一個設(shè)備時,一方面將啟動命令發(fā)送給控制器;另一方面又同時通過地址線把地址發(fā)送給控制器,由控制器的控制器,由控制器的I/O邏輯對收到的地址進行譯碼,再根據(jù)所譯出的命令對所選設(shè)備進邏輯對收到的地址進行譯碼,再根據(jù)所譯出的命令對所選設(shè)備進行控制。行控制。第10頁/共108頁第十一頁,共108頁。第11頁/共108頁第十二頁,共108頁。第12頁/共108頁第十三頁,共108頁。二、二、 通道通道(tngdo)類型類型 字節(jié)多路通道(tngdo)的工作原理 控制器A控制器B控制器C控制器D控制器N

6、A1A2A3子通道AB1B2B3子通道BC1C2C3子通道CN1N2N3子通道NA1B1C1A2B2C2設(shè)備第13頁/共108頁第十四頁,共108頁。選擇通道選擇通道第14頁/共108頁第十五頁,共108頁。選擇通道選擇通道磁盤磁盤字節(jié)多路通道字節(jié)多路通道打印機打印機輸入機輸入機內(nèi)存儲器內(nèi)存儲器處理機處理機磁帶磁帶數(shù)組多路通道數(shù)組多路通道第15頁/共108頁第十六頁,共108頁。硬件硬件(yn jin)連接結(jié)構(gòu)連接結(jié)構(gòu)第16頁/共108頁第十七頁,共108頁。三、三、“瓶頸瓶頸(pn jn)”問題問題 單通路I/O系統(tǒng)(xtng) 存儲器I/O通道1I/O通道2控制器1控制器2控制器3控制器4

7、設(shè)備1設(shè)備2設(shè)備3設(shè)備4設(shè)備5設(shè)備6設(shè)備7設(shè)備8CPU總線第17頁/共108頁第十八頁,共108頁。 多通路(tngl)I/O系統(tǒng) I/O通道(tngdo)1I/O通道2控制器控制器控制器控制器設(shè)備1設(shè)備2設(shè)備3設(shè)備4設(shè)備5設(shè)備6設(shè)備7設(shè)備8存儲器CPU總線第18頁/共108頁第十九頁,共108頁。個個I/O系統(tǒng)的基礎(chǔ)系統(tǒng)的基礎(chǔ)第19頁/共108頁第二十頁,共108頁。第20頁/共108頁第二十一頁,共108頁。第21頁/共108頁第二十二頁,共108頁。第22頁/共108頁第二十三頁,共108頁。6.3.26.3.2中斷處理程序處理過程中斷處理程序處理過程: :1 1測定是否有未響應(yīng)的中斷信

8、號測定是否有未響應(yīng)的中斷信號 2 2保護被中斷進程的保護被中斷進程的CPUCPU環(huán)境環(huán)境 3 3轉(zhuǎn)入相應(yīng)的設(shè)備處理程序轉(zhuǎn)入相應(yīng)的設(shè)備處理程序 4 4中斷處理中斷處理 5. 5. 恢復(fù)恢復(fù)(huf)(huf)被中斷進程的現(xiàn)場被中斷進程的現(xiàn)場第23頁/共108頁第二十四頁,共108頁。第24頁/共108頁第二十五頁,共108頁。第25頁/共108頁第二十六頁,共108頁。進行處理。進行處理。n(5) (5) 自動地構(gòu)成通道程序。自動地構(gòu)成通道程序。第26頁/共108頁第二十七頁,共108頁。第27頁/共108頁第二十八頁,共108頁。第28頁/共108頁第二十九頁,共108頁。1) 將抽象要求轉(zhuǎn)換

9、(zhunhun)為具體要求2) 檢查(jinch)I/O請求的合法性3) 讀出和檢查設(shè)備的狀態(tài)4) 傳送必要的參數(shù):字節(jié)數(shù),內(nèi)存地址5) 工作方式的設(shè)置:波特率,校驗方式6) 啟動I/O設(shè)備:阻塞自己第29頁/共108頁第三十頁,共108頁。第30頁/共108頁第三十一頁,共108頁。向I/O控制器發(fā)讀命令(mng lng)CPUI/O讀I/O控制器的狀態(tài)(zhungti)I/OCPU檢查狀態(tài)出錯從I/O控制器中讀入字I/OCPU未就緒向存儲器中寫字CPU內(nèi)存?zhèn)魉屯瓿桑课赐瓿上聴l指令1. 程序I/O方式注:程序注:程序I/O方式也稱作程序查詢方式或輪詢方式。方式也稱作程序查詢方式或輪詢方式。

10、第31頁/共108頁第三十二頁,共108頁。第32頁/共108頁第三十三頁,共108頁。CPU計算計算啟動啟動(qdng)設(shè)設(shè)備備計算計算計算計算中斷處理中斷處理計算計算設(shè)備設(shè)備(shbi):工工作作(gngzu)特點特點: CPU與設(shè)備并行工作與設(shè)備并行工作 設(shè)備多時對設(shè)備多時對CPU打擾多打擾多第33頁/共108頁第三十四頁,共108頁。向I/O控制器發(fā)讀命令(mng lng)CPUI/O讀I/O控制器的狀態(tài)(zhungti)I/OCPU檢查狀態(tài)出錯從I/O控制器中讀入字I/OCPU向存儲器中寫字CPU內(nèi)存?zhèn)魉屯瓿桑课赐瓿上聴l指令2. 中斷驅(qū)動中斷驅(qū)動I/O控制方式控制方式CPU做其它事中

11、斷第34頁/共108頁第三十五頁,共108頁。第35頁/共108頁第三十六頁,共108頁。第36頁/共108頁第三十七頁,共108頁。countI/O控控制制邏邏輯輯DRMARDCCRCPU內(nèi)存內(nèi)存主機主機控制器控制器接口接口控制器與控制器與塊設(shè)備接口塊設(shè)備接口系統(tǒng)總線系統(tǒng)總線DMA控制器控制器命令命令命令命令/狀態(tài)寄存器狀態(tài)寄存器CR:接:接收收(jishu)從從CPU發(fā)來的發(fā)來的I/O命令或有關(guān)控制和狀態(tài)命令或有關(guān)控制和狀態(tài)信息信息數(shù)據(jù)數(shù)據(jù)(shj)寄存器寄存器DR:用于暫:用于暫存設(shè)備到內(nèi)存或從內(nèi)存到設(shè)備存設(shè)備到內(nèi)存或從內(nèi)存到設(shè)備的數(shù)據(jù)的數(shù)據(jù)(shj)內(nèi)存地址寄存器內(nèi)存地址寄存器MAR:

12、存放:存放(cnfng)把數(shù)據(jù)從設(shè)備傳送把數(shù)據(jù)從設(shè)備傳送到內(nèi)存的起始目標(biāo)地址或內(nèi)到內(nèi)存的起始目標(biāo)地址或內(nèi)存原地址存原地址數(shù)據(jù)計數(shù)器數(shù)據(jù)計數(shù)器DC:存放本次:存放本次CPU要讀或?qū)懙淖郑ü?jié))數(shù)要讀或?qū)懙淖郑ü?jié))數(shù)第37頁/共108頁第三十八頁,共108頁。 數(shù)據(jù)傳輸數(shù)據(jù)傳輸CPUDMA控制器控制器內(nèi)存內(nèi)存(ni cn)地地 址址計計 數(shù)數(shù)控控 制制緩沖緩沖(hunchng)磁盤磁盤 中斷中斷 DMA請求請求總線總線磁盤磁盤控制器控制器 回答回答 DMA編程編程1.CPU設(shè)置設(shè)置DMA控制器實現(xiàn)控制器實現(xiàn)DMA編程,同時啟動磁盤控制器由磁盤讀入數(shù)據(jù)到內(nèi)部緩編程,同時啟動磁盤控制器由磁盤讀入數(shù)據(jù)到內(nèi)

13、部緩沖區(qū);沖區(qū);2.DMA控制器向磁盤控制器發(fā)出讀請求;控制器向磁盤控制器發(fā)出讀請求;3.磁盤控制器將字節(jié)傳到內(nèi)存指定單元;磁盤控制器將字節(jié)傳到內(nèi)存指定單元;4.磁盤控制器向磁盤控制器向DMA控制器發(fā)送回答;控制器發(fā)送回答;5.DMA控制器將控制器將MAR加加1,DC減減1,重復(fù)上述過程直至,重復(fù)上述過程直至DC為為0,DMA控制器向控制器向CPU發(fā)出中發(fā)出中斷請求。斷請求。第38頁/共108頁第三十九頁,共108頁。向I/O控制器發(fā)讀命令(mng lng)CPUDMA讀I/O控制器的狀態(tài)(zhungti)DMACPU下條指令直接存儲器訪問直接存儲器訪問DMA控制方式控制方式CPU做其它事中斷

14、該方式的特點是:該方式的特點是:數(shù)據(jù)傳輸?shù)幕締挝皇菙?shù)據(jù)數(shù)據(jù)傳輸?shù)幕締挝皇菙?shù)據(jù)塊;塊;所傳送的數(shù)據(jù)是從設(shè)備直接送入內(nèi)所傳送的數(shù)據(jù)是從設(shè)備直接送入內(nèi)存的,或者相反;存的,或者相反;僅在傳送一個或多個數(shù)據(jù)塊的開始僅在傳送一個或多個數(shù)據(jù)塊的開始和結(jié)束時,才需和結(jié)束時,才需CPU干預(yù),整塊干預(yù),整塊數(shù)據(jù)的傳送是在控制器的控制數(shù)據(jù)的傳送是在控制器的控制下完成的。下完成的。第39頁/共108頁第四十頁,共108頁。三三. DMA工作工作(gngzu)過程過程 DMA方式(fngsh)的工作流程 設(shè)置MAR和DC初值啟動DMA傳送命令傳送數(shù)據(jù)字MAR=MAR+1DC=DC-1DC=0?請求中斷在繼續(xù)執(zhí)行用

15、戶程序的同時,準(zhǔn)備又一次傳送第40頁/共108頁第四十一頁,共108頁。第41頁/共108頁第四十二頁,共108頁。第42頁/共108頁第四十三頁,共108頁。操作 PR計數(shù)內(nèi)存地址WRITE 0080813WRITE001401034WRITE01605830WRITE013002000WRITE002501650WRITE112502720優(yōu)點:執(zhí)行一個通道程序可以完成優(yōu)點:執(zhí)行一個通道程序可以完成(wn chng)幾批幾批I/O操作。操作。第43頁/共108頁第四十四頁,共108頁。第44頁/共108頁第四十五頁,共108頁。主設(shè)備號主設(shè)備號邏輯設(shè)備名邏輯設(shè)備名驅(qū)動程序入口地址驅(qū)動程序入

16、口地址3 3/dev/tty1 (/dev/tty1 (鍵盤輸入設(shè)備鍵盤輸入設(shè)備1)1)300030003 3/dev/tty2/dev/tty2(鍵盤輸入設(shè)備(鍵盤輸入設(shè)備2 2)300030005(5(針式打印機針式打印機) )/dev/lp/dev/lp(打印機)(打印機)500050006 6/dev/ethN/dev/ethN(網(wǎng)卡)(網(wǎng)卡)40004000 用激光打印機替換(t hun)針式打印機后的LUT表:主設(shè)備號主設(shè)備號邏輯設(shè)備名邏輯設(shè)備名驅(qū)動程序入口地址驅(qū)動程序入口地址3 3/dev/tty1 (/dev/tty1 (鍵盤輸入設(shè)備鍵盤輸入設(shè)備1)1)300030003 3/

17、dev/tty2/dev/tty2(鍵盤輸入設(shè)備(鍵盤輸入設(shè)備2 2)300030007 7(激光打印(激光打印機)機)/dev/lp/dev/lp(打印機)(打印機)700070006 6/dev/ethN/dev/ethN(網(wǎng)卡)(網(wǎng)卡)40004000第45頁/共108頁第四十六頁,共108頁。 有利用設(shè)備分配時的靈活性有利用設(shè)備分配時的靈活性 易于實現(xiàn)易于實現(xiàn)I/O重定向重定向 I/O重定向指用于重定向指用于I/O操作的設(shè)備可以操作的設(shè)備可以(ky)更換(重定向),而不必改變更換(重定向),而不必改變應(yīng)用程序。應(yīng)用程序。 設(shè)備設(shè)備(shbi)獨立性的優(yōu)點獨立性的優(yōu)點第46頁/共108頁

18、第四十七頁,共108頁。v包括:對設(shè)備、設(shè)備控制器、通道(tngdo)的分配系統(tǒng)為每一設(shè)備都配置了一張設(shè)備控制表,用于記錄本設(shè)備的系統(tǒng)為每一設(shè)備都配置了一張設(shè)備控制表,用于記錄本設(shè)備的情況情況DCT 1DCT 2DCT n設(shè)備類型設(shè)備類型 type設(shè)備標(biāo)識符設(shè)備標(biāo)識符deviceid設(shè)備狀態(tài):等待設(shè)備狀態(tài):等待/不等待不等待 忙忙/閑閑指向控制器表的指針指向控制器表的指針重復(fù)執(zhí)行次數(shù)或時間重復(fù)執(zhí)行次數(shù)或時間設(shè)備隊列的隊首指針設(shè)備隊列的隊首指針設(shè)設(shè)備備控控制制表表集集合合第47頁/共108頁第四十八頁,共108頁。I/O通道(tngdo)1I/O通道(tngdo)2控制器控制器設(shè)備(shbi)1

19、設(shè)備2設(shè)備3設(shè)備4控制器控制表COCT控制器標(biāo)識符控制器狀態(tài):等待/不等待與控制器相連的通道表指針控制器隊列的隊首指針控制器隊列的隊尾指針存儲器CPU總線通道控制表CHCT通道標(biāo)識符通道狀態(tài):忙/閑與通道相連的控制器表指針通道隊列的隊首指針通道隊列的隊尾指針第48頁/共108頁第四十九頁,共108頁。系統(tǒng)系統(tǒng)(xtng)設(shè)備表設(shè)備表SDT。如圖所示:。如圖所示:表目表目 1表目表目 i設(shè)備類型設(shè)備類型 設(shè)備標(biāo)識符設(shè)備標(biāo)識符DCT驅(qū)動程序入口驅(qū)動程序入口系統(tǒng)系統(tǒng)(xtng)設(shè)備表設(shè)備表第49頁/共108頁第五十頁,共108頁。2. 設(shè)備分配設(shè)備分配(fnpi)時應(yīng)考慮的因素時應(yīng)考慮的因素 1.設(shè)

20、備的固有屬性設(shè)備的固有屬性2.設(shè)備分配設(shè)備分配(fnpi)算法算法3.設(shè)備分配設(shè)備分配(fnpi)中的安全性中的安全性4.設(shè)備獨立性設(shè)備獨立性(1)(1)獨占獨占(dzhn)(dzhn)設(shè)設(shè)備備(2)(2)共享設(shè)備共享設(shè)備(3)(3)(3)(3)虛擬設(shè)虛擬設(shè)備備(1)(1)先來先服務(wù)先來先服務(wù)(2)(2)優(yōu)先級高者優(yōu)先優(yōu)先級高者優(yōu)先(1)安全分配方式安全分配方式(2)不安全分配方式不安全分配方式第50頁/共108頁第五十一頁,共108頁。基本設(shè)備分配程序存在的問題基本設(shè)備分配程序存在的問題進程以物理設(shè)備名提出進程以物理設(shè)備名提出I/O請求請求(qngqi)采用單通路的采用單通路的I/O系統(tǒng)結(jié)構(gòu)

21、,產(chǎn)生系統(tǒng)結(jié)構(gòu),產(chǎn)生“瓶頸瓶頸”設(shè)備分配程序的改進設(shè)備分配程序的改進1.增加設(shè)備的獨立性增加設(shè)備的獨立性2.考慮多通路情況考慮多通路情況第51頁/共108頁第五十二頁,共108頁。第52頁/共108頁第五十三頁,共108頁。第53頁/共108頁第五十四頁,共108頁。引入:在多道程序系統(tǒng)中,專門利用一道程序(引入:在多道程序系統(tǒng)中,專門利用一道程序(SPOOLing程序)來完成對設(shè)備的程序)來完成對設(shè)備的I/O操作。無操作。無需需(wx)使用外圍使用外圍I/O處理機。處理機。Application AApplication BSPOOLingProgramDeviceVirtual I/OAc

22、tual I/O1.SPOOLing技術(shù)技術(shù)(jsh)第54頁/共108頁第五十五頁,共108頁。第55頁/共108頁第五十六頁,共108頁。第56頁/共108頁第五十七頁,共108頁。輸入進程輸入進程SPi 輸出進程輸出進程SP0輸入緩沖區(qū)輸入緩沖區(qū)Bi輸出緩沖區(qū)輸出緩沖區(qū)B0輸入井輸入井輸出井輸出井輸入設(shè)備輸入設(shè)備輸出設(shè)備輸出設(shè)備磁盤磁盤內(nèi)存內(nèi)存第57頁/共108頁第五十八頁,共108頁。第58頁/共108頁第五十九頁,共108頁。第59頁/共108頁第六十頁,共108頁。6.7.1 緩沖緩沖(hunchng)的引入的引入 引入緩沖區(qū)的主要原因歸結(jié)為以下幾點:引入緩沖區(qū)的主要原因歸結(jié)為以下

23、幾點:1. 緩和緩和CPU與與I/O設(shè)備間速度不匹配的矛盾。設(shè)備間速度不匹配的矛盾。2. 減少對減少對CPU的中斷頻率,放寬對的中斷頻率,放寬對CPU中斷響應(yīng)中斷響應(yīng)(xingyng)時間的限制。時間的限制。3. 提高提高CPU和和I/O設(shè)備之間的并行性。設(shè)備之間的并行性。第60頁/共108頁第六十一頁,共108頁。6.7.2 單緩沖單緩沖(hunchng)和雙緩沖和雙緩沖(hunchng) 1. 單緩沖單緩沖(hunchng)(Single Buffer) I/O設(shè)備設(shè)備(shbi)系統(tǒng)單緩沖系統(tǒng)單緩沖buf用戶用戶buf用戶進程用戶進程輸入輸入(T)傳送傳送(M)計算計算(C)工工作作示示

24、意意圖圖TMCTMCTMCTMCt一個緩沖區(qū),一個緩沖區(qū),CPUCPU和外設(shè)輪流和外設(shè)輪流使用,一方處理使用,一方處理完之后接著等待完之后接著等待對方處理。對方處理。C C和和T T可并行,可并行,M M和和C C或或M M和和T T不能并行不能并行,因,因此此處理一塊數(shù)據(jù)時間:處理一塊數(shù)據(jù)時間:Max(C,T)+MMax(C,T)+M第61頁/共108頁第六十二頁,共108頁。效率有所提高,且進一步平滑了傳輸效率有所提高,且進一步平滑了傳輸(chun (chun sh)sh)峰值。峰值。系統(tǒng)處理一塊數(shù)據(jù)的時間約為:系統(tǒng)處理一塊數(shù)據(jù)的時間約為:MAX(C,T)MAX(C,T)收發(fā)可雙向同時傳送

25、。收發(fā)可雙向同時傳送。兩個緩沖區(qū),兩個緩沖區(qū),CPUCPU和外設(shè)都可以連續(xù)處理而無需等待對方。要和外設(shè)都可以連續(xù)處理而無需等待對方。要求求CPUCPU和外設(shè)的速度相近。和外設(shè)的速度相近。第62頁/共108頁第六十三頁,共108頁。緩沖區(qū)緩沖區(qū)A機機緩沖區(qū)緩沖區(qū)B機機單緩沖單緩沖發(fā)送發(fā)送 緩沖區(qū)緩沖區(qū) 接收接收 緩沖區(qū)緩沖區(qū) A機機 接收接收 緩沖區(qū)緩沖區(qū) 發(fā)送發(fā)送 緩沖區(qū)緩沖區(qū)B機機雙緩沖雙緩沖第63頁/共108頁第六十四頁,共108頁。6.7.3 循環(huán)循環(huán)(xnhun)緩沖緩沖 1. 循環(huán)循環(huán)(xnhun)緩沖的組成緩沖的組成 RGGGRG165423NextiNextgRGGGRC1654

26、23NextiNextgcurrent輸入(shr)進程下一個可用空緩沖區(qū)R計算進程下一個可用緩沖區(qū)C計算進程當(dāng)前正在使計算進程當(dāng)前正在使用緩沖區(qū)用緩沖區(qū)C指針指針current類型:類型:R:R:空緩沖;空緩沖;G:G:滿緩沖;滿緩沖;C:C:當(dāng)前緩沖當(dāng)前緩沖第64頁/共108頁第六十五頁,共108頁。2. 循環(huán)循環(huán)(xnhun)緩沖區(qū)的使用緩沖區(qū)的使用(1) (1)Getbuf過程。(2)輸入進程(jnchng)(3)計算進程(jnchng) nextiRGGGRG165423NextiNextgRGGGRC165423NextiNextgcurrentnextinextgcurrentn

27、extgCG第65頁/共108頁第六十六頁,共108頁。2. 循環(huán)循環(huán)(xnhun)緩沖區(qū)的使用緩沖區(qū)的使用(2) (2) Releasebuf過程。 輸入進程(jnchng)計算進程(jnchng) RGGGRG165423NextiNextgRGGGRC165423NextiNextgcurrentnexticurrentnextgCRG第66頁/共108頁第六十七頁,共108頁。3. 進程同步進程同步 (1)Nexti指針(zhzhn)追趕上Nextg指針(zhzhn)。(2)(2) Nextg指針(zhzhn)追趕上Nexti指針(zhzhn)。 nextinextgGGGGRR165

28、423nextinextiGG第67頁/共108頁第六十八頁,共108頁。6.7.4 緩沖緩沖(hunchng)池池(Buffer Pool) 1. 緩沖緩沖(hunchng)池的組成池的組成 1. 緩沖(hunchng)池的組成緩沖池EmEmEmEmEmInInInInOutOutOutOutin queueempty queueout queueBuffer PoolDeviceCPU第68頁/共108頁第六十九頁,共108頁。1/3/2022701.1.收容輸入收容輸入(shr)hin(shr)hin; 2. 2.提取輸入提取輸入(shr)sin(shr)sin3.3.收容輸出;收容輸出

29、; 4. 4.提取輸出提取輸出hin=getbuf(emq);hin=getbuf(emq);putbuf(inq,hin) putbuf(inq,hin) sin=getbuf(inq)sin=getbuf(inq); ;putbuf(emq,sin)putbuf(emq,sin) sout=getbuf(outq)pusout=getbuf(outq)putbuf(emq,sout) tbuf(emq,sout) hout=getbuf(emq)hout=getbuf(emq)putbuf(outq,houtputbuf(outq,hout) ) 第69頁/共108頁第七十頁,共108頁。

30、 1.hin=getbuf(emq); putbuf(inq,hin) 1.hin=getbuf(emq); putbuf(inq,hin)2.sin=getbuf(inq);2.sin=getbuf(inq);計算計算(j sun)(j sun); putbuf(emq,sin)putbuf(emq,sin)3.hout=getbuf(emq); putbuf(outq, hout)3.hout=getbuf(emq); putbuf(outq, hout)4.sout=getbuf(outq);4.sout=getbuf(outq);輸出;輸出;putbuf(emq,sout)putbuf

31、(emq,sout)Getbuf(type)Begin wait(RS(type); wait(MS(type); B(number):=takebuf(type); signal(MS(type);endPutbuf(type)Begin wait(MS(type); addbuf(type,number); signal(MS(type); signal(RS(type);end第70頁/共108頁第七十一頁,共108頁。第71頁/共108頁第七十二頁,共108頁。第72頁/共108頁第七十三頁,共108頁。第73頁/共108頁第七十四頁,共108頁。第74頁/共108頁第七十五頁,共10

32、8頁。第75頁/共108頁第七十六頁,共108頁。第76頁/共108頁第七十七頁,共108頁。1/500=0.002s=2ms第77頁/共108頁第七十八頁,共108頁。塊號塊號1234記錄號記錄號ABCD第78頁/共108頁第七十九頁,共108頁。第79頁/共108頁第八十頁,共108頁。第80頁/共108頁第八十一頁,共108頁。先來先服務(wù)先來先服務(wù)FCFS最短尋道時間優(yōu)先最短尋道時間優(yōu)先SSTF掃描掃描(somio)算法算法SCAN單向掃描單向掃描(somio)調(diào)度算法調(diào)度算法CSCAN第81頁/共108頁第八十二頁,共108頁。先來先來(xin li)先服務(wù)先服務(wù)FCFS第82頁/共1

33、08頁第八十三頁,共108頁。先來先來(xin li)先服務(wù)先服務(wù)FCFS第83頁/共108頁第八十四頁,共108頁。磁盤訪問磁盤訪問(fngwn)序列:序列:98,183,37,122,14,124,65,67先來(xin li)先服務(wù)FCFS143753656798122 124183458514685108110592磁頭走過的總道數(shù):磁頭走過的總道數(shù):640平均尋道長度:平均尋道長度:8098,183,37,122,14,124,65,67第84頁/共108頁第八十五頁,共108頁。最短尋道時間(shjin)優(yōu)先SSTF第85頁/共108頁第八十六頁,共108頁。磁盤訪問磁盤訪問(fn

34、gwn)(fngwn)序列:序列: 65 65,6767,3737,1414,9898,122122,124124,183183最短尋道時間(shjin)優(yōu)先SSTF143753656798122 12418312230238424259磁頭走過的總道數(shù):磁頭走過的總道數(shù):236平均尋道長度:平均尋道長度:29.598,183,37,122,14,124,65,67第86頁/共108頁第八十七頁,共108頁。掃描(somio)算法(電梯算法)SCAN第87頁/共108頁第八十八頁,共108頁。磁盤磁盤(c pn)(c pn)訪問序列:訪問序列: 37 37,1414,6565,6767,989

35、8,122122,124124,183183掃描算法(sun f)(電梯算法(sun f)SCAN143753656798122 12418351216233124259磁頭走過的總道數(shù):磁頭走過的總道數(shù):208平均尋道長度:平均尋道長度:2698,183,37,122,14,124,65,67假設(shè)此時磁頭向內(nèi)移動第88頁/共108頁第八十九頁,共108頁。單向掃描(somio)調(diào)度算法CSCAN第89頁/共108頁第九十頁,共108頁。磁盤訪問磁盤訪問(fngwn)(fngwn)序列:序列: 65 65,6767,9898,122122,124124,183183,1414,3737單向(d

36、n xin)掃描算法CSCAN143753656798122 124183122169233124259磁頭走過的總道數(shù):磁頭走過的總道數(shù):352平均尋道長度:平均尋道長度:4498,183,37,122,14,124,65,67第90頁/共108頁第九十一頁,共108頁。第91頁/共108頁第九十二頁,共108頁。序號序號 柱面號柱面號 磁頭號磁頭號 扇區(qū)號扇區(qū)號1963275631520649445209567152n26 4 1 3 5第92頁/共108頁第九十三頁,共108頁。例例 題題例例1:簡述設(shè)備分配的過程。:簡述設(shè)備分配的過程。答:設(shè)備分配程序要用到系統(tǒng)設(shè)備表、設(shè)備控制表、控制

37、器控制答:設(shè)備分配程序要用到系統(tǒng)設(shè)備表、設(shè)備控制表、控制器控制表和通道控制表。其主要過程是:表和通道控制表。其主要過程是:按指定方式掃描按指定方式掃描SDT,找出該類設(shè)備,找出該類設(shè)備DCT鏈的起始地址。鏈的起始地址。依依DCT開始掃描,找出可以工作的設(shè)備,檢查設(shè)備分配的合理開始掃描,找出可以工作的設(shè)備,檢查設(shè)備分配的合理(hl)性,從而進行設(shè)備的預(yù)分配。性,從而進行設(shè)備的預(yù)分配。根據(jù)預(yù)分配設(shè)備的根據(jù)預(yù)分配設(shè)備的DCT,找出與之相連的,找出與之相連的COCT表,從所有相連表,從所有相連的控制器中找出一個可以分配而且分配合理的控制器中找出一個可以分配而且分配合理(hl)的控制器。的控制器。從所分

38、配的從所分配的COCT出發(fā),根據(jù)出發(fā),根據(jù)CHCT鏈,找出一個可用的通道。鏈,找出一個可用的通道。當(dāng)找到一個可用的通路后,才實施真正的分配,把設(shè)備、控制器、當(dāng)找到一個可用的通路后,才實施真正的分配,把設(shè)備、控制器、通道一并分配給申請設(shè)備的進程。通道一并分配給申請設(shè)備的進程。第93頁/共108頁第九十四頁,共108頁。例例2:DMA方式和中斷方式有什么不同?方式和中斷方式有什么不同?答:答:DMA方式和中斷方式的主要不同點是:中斷方式在每個數(shù)據(jù)方式和中斷方式的主要不同點是:中斷方式在每個數(shù)據(jù)傳送完成后中斷傳送完成后中斷CPU,而,而DMA方式則是在所要求傳送的一批方式則是在所要求傳送的一批數(shù)據(jù)全

39、部傳送結(jié)束數(shù)據(jù)全部傳送結(jié)束(jish)時中斷時中斷CPU;中斷方式的數(shù)據(jù)傳;中斷方式的數(shù)據(jù)傳送是在中斷處理時由送是在中斷處理時由CPU控制完成,而控制完成,而DMA方式則是在方式則是在DMA控制器的控制下完成。不過,控制器的控制下完成。不過,DMA方式仍存在一定局方式仍存在一定局限性。如數(shù)據(jù)傳送的方向、存放數(shù)據(jù)的內(nèi)存始址及傳送數(shù)據(jù)限性。如數(shù)據(jù)傳送的方向、存放數(shù)據(jù)的內(nèi)存始址及傳送數(shù)據(jù)的長度等都由的長度等都由CPU控制,并且每臺設(shè)備需一個控制,并且每臺設(shè)備需一個DMA控制器,控制器,當(dāng)設(shè)備增加時,多個當(dāng)設(shè)備增加時,多個DMA控制器的使用也不經(jīng)濟。控制器的使用也不經(jīng)濟。第94頁/共108頁第九十五頁

40、,共108頁。例例3:DMA方式和通道方式有什么不同?方式和通道方式有什么不同?答:答:DMA方式中,在方式中,在DMA控制器控制下,設(shè)備和主存控制器控制下,設(shè)備和主存之間可成批地進行數(shù)據(jù)交換,而不用之間可成批地進行數(shù)據(jù)交換,而不用CPU干預(yù),這干預(yù),這種方式應(yīng)用于塊設(shè)備的數(shù)據(jù)傳輸。通道控制方式與種方式應(yīng)用于塊設(shè)備的數(shù)據(jù)傳輸。通道控制方式與DMA方式類似,也是一種以內(nèi)存為中心,實現(xiàn)設(shè)備方式類似,也是一種以內(nèi)存為中心,實現(xiàn)設(shè)備與內(nèi)存直接交換數(shù)據(jù)的控制方式。在通道控制方式與內(nèi)存直接交換數(shù)據(jù)的控制方式。在通道控制方式中,中,CPU只需發(fā)出啟動只需發(fā)出啟動(qdng)指令,指出通道相指令,指出通道相應(yīng)

41、的操作和應(yīng)的操作和I/O設(shè)備,該指令就可啟動設(shè)備,該指令就可啟動(qdng)通道通道并使該通道從內(nèi)存中調(diào)出相應(yīng)的通道指令執(zhí)行。并使該通道從內(nèi)存中調(diào)出相應(yīng)的通道指令執(zhí)行。與與DMA方式相比,通道方式所需的方式相比,通道方式所需的CPU干預(yù)更少,且可干預(yù)更少,且可以做到一個通道控制多臺設(shè)備,從而更進一步減輕以做到一個通道控制多臺設(shè)備,從而更進一步減輕了了CPU的負(fù)擔(dān)。的負(fù)擔(dān)。第95頁/共108頁第九十六頁,共108頁。例例4:在某計算機系統(tǒng)中,其屏幕顯示分辨率為:在某計算機系統(tǒng)中,其屏幕顯示分辨率為640*480,若要,若要存儲一屏存儲一屏256彩色的圖像,需要多少字節(jié)存儲空間?彩色的圖像,需要多

42、少字節(jié)存儲空間?解:屏幕信息的顯示是以像素為單位進行的。由于屏幕顯示分辨解:屏幕信息的顯示是以像素為單位進行的。由于屏幕顯示分辨率為率為640*480,故屏幕上有像素:,故屏幕上有像素: 640*480=300*210個個當(dāng)用當(dāng)用256彩色顯示時,每個像素需要彩色顯示時,每個像素需要8位二進制數(shù)(位二進制數(shù)(28=256)表)表示,因此示,因此(ync)一屏信息需要存儲空間:一屏信息需要存儲空間: 8*300* 210位位=300* 210字節(jié)字節(jié) =300K字節(jié)字節(jié)所以需要所以需要300K字節(jié)存儲空間。字節(jié)存儲空間。第96頁/共108頁第九十七頁,共108頁。例例5:某軟盤有:某軟盤有40個

43、磁道,磁頭從一個磁道移至另一磁道需要個磁道,磁頭從一個磁道移至另一磁道需要6ms。文件在磁盤上非連續(xù)存放,邏輯上相鄰數(shù)據(jù)塊的平均。文件在磁盤上非連續(xù)存放,邏輯上相鄰數(shù)據(jù)塊的平均(pngjn)距離為距離為13磁道,每塊的旋轉(zhuǎn)延遲時間及傳輸時間磁道,每塊的旋轉(zhuǎn)延遲時間及傳輸時間分別為分別為100ms、25ms,問讀取一個,問讀取一個100塊的文件需要多少塊的文件需要多少時間?如果系統(tǒng)對磁盤進行了整理,讓同一個文件的磁盤塊時間?如果系統(tǒng)對磁盤進行了整理,讓同一個文件的磁盤塊盡可能靠攏,從而使邏輯上相鄰數(shù)據(jù)塊的平均盡可能靠攏,從而使邏輯上相鄰數(shù)據(jù)塊的平均(pngjn)距距離降為離降為2磁道,這時讀取一

44、個磁道,這時讀取一個100塊的文件需要多少時間?塊的文件需要多少時間?解:磁盤整理前,邏輯上相鄰數(shù)據(jù)塊的平均解:磁盤整理前,邏輯上相鄰數(shù)據(jù)塊的平均(pngjn)距離為距離為13磁道,讀一塊數(shù)據(jù)需要的時間為:磁道,讀一塊數(shù)據(jù)需要的時間為:13*6+100+25=203ms因此,讀取一個因此,讀取一個100塊的文件需要時間:塊的文件需要時間:203*100=20300ms磁盤整理后,邏輯上相鄰數(shù)據(jù)塊的平均磁盤整理后,邏輯上相鄰數(shù)據(jù)塊的平均(pngjn)距離為距離為2磁道,磁道,讀一塊數(shù)據(jù)需要的時間為:讀一塊數(shù)據(jù)需要的時間為:2*6+100+25=137ms因此,讀取一個因此,讀取一個100塊的文件

45、需要時間:塊的文件需要時間:137*100=13700ms第97頁/共108頁第九十八頁,共108頁。例例6:若磁頭的當(dāng)前位置為:若磁頭的當(dāng)前位置為100磁道,磁頭正向磁道號增加方向移磁道,磁頭正向磁道號增加方向移動。現(xiàn)有一磁盤讀寫請求隊列:動?,F(xiàn)有一磁盤讀寫請求隊列:23,376,205,132,19,61,190,398,29,4,18,40。若采用先來先服務(wù)、最短。若采用先來先服務(wù)、最短尋道時間優(yōu)先和掃描算法,試計算出平均尋道時間優(yōu)先和掃描算法,試計算出平均(pngjn)尋道長度尋道長度各為多少?各為多少?解:解:(1)先來先服務(wù):從先來先服務(wù):從100磁道開始,磁盤調(diào)度順序為:磁道開始

46、,磁盤調(diào)度順序為:23 -376 -205 -132 -19 -61 -190 -398 -29 -4 -18 -40。移動磁道數(shù)總數(shù)為移動磁道數(shù)總數(shù)為1596,平均,平均(pngjn)尋道長度為:尋道長度為:133。(2)最短尋道時間優(yōu)先:從最短尋道時間優(yōu)先:從100磁道開始,磁盤調(diào)度順序為:磁道開始,磁盤調(diào)度順序為:132-190 -205 -61 -40 -29 -23 -19 -18 -4 -376 -398。移動磁道數(shù)總數(shù)為移動磁道數(shù)總數(shù)為700,平均,平均(pngjn)尋道長度為:尋道長度為:58.3。(3)掃描算法:從掃描算法:從100磁道開始,磁盤調(diào)度順序為:磁道開始,磁盤調(diào)度

47、順序為:132 -190 -205 -376 -398 -61 -40 -29 -23 -19 -18 -4。移動磁道數(shù)總數(shù)為移動磁道數(shù)總數(shù)為692,平均,平均(pngjn)尋道長度為:尋道長度為:57.7。第98頁/共108頁第九十九頁,共108頁。通過虛擬技術(shù)將一臺獨占設(shè)備改造通過虛擬技術(shù)將一臺獨占設(shè)備改造(gizo)成若干成若干臺邏輯設(shè)備,供若干個用戶進程同時使用。臺邏輯設(shè)備,供若干個用戶進程同時使用。2.按信息按信息(xnx)交換單位分類,可將設(shè)備分為:交換單位分類,可將設(shè)備分為:塊設(shè)備和字符設(shè)備。塊設(shè)備和字符設(shè)備。3.通道是:通道是:負(fù)責(zé)負(fù)責(zé)I/O的處理機。的處理機。4.字節(jié)多路通道

48、主要用作:字節(jié)多路通道主要用作:連接大量的低速連接大量的低速I/O設(shè)備。設(shè)備。第99頁/共108頁第一百頁,共108頁。5.從資源分配的角度看,操作系統(tǒng)從資源分配的角度看,操作系統(tǒng)(co zu x tn)將外部設(shè)備將外部設(shè)備分為:分為:獨占獨占(dzhn)型設(shè)備、共享型設(shè)備、虛擬設(shè)備型設(shè)備、共享型設(shè)備、虛擬設(shè)備。6.根據(jù)信息交換根據(jù)信息交換(jiohun)方式的不同,可以將通道分為:方式的不同,可以將通道分為:字節(jié)多路通道、數(shù)據(jù)選擇通道、數(shù)據(jù)多路通道。字節(jié)多路通道、數(shù)據(jù)選擇通道、數(shù)據(jù)多路通道。7.設(shè)備獨占性是指:設(shè)備獨占性是指:應(yīng)用程序獨立于具體使用的物理設(shè)備。應(yīng)用程序獨立于具體使用的物理設(shè)備

49、。第100頁/共108頁第一百零一頁,共108頁。9.進行設(shè)備分配進行設(shè)備分配(fnpi)時所需要的數(shù)據(jù)表格主要有:時所需要的數(shù)據(jù)表格主要有:設(shè)備控制設(shè)備控制(kngzh)表、設(shè)備控制表、設(shè)備控制(kngzh)器控制器控制(kngzh)表、通道控制表、通道控制(kngzh)表和系統(tǒng)設(shè)備表。表和系統(tǒng)設(shè)備表。10.如果有多個中斷同時發(fā)生,系統(tǒng)將根據(jù)如果有多個中斷同時發(fā)生,系統(tǒng)將根據(jù)(gnj)中斷優(yōu)中斷優(yōu)先級響應(yīng)優(yōu)先級最高的中斷請求。若要調(diào)整中斷事件先級響應(yīng)優(yōu)先級最高的中斷請求。若要調(diào)整中斷事件的響應(yīng)次序,可以利用:的響應(yīng)次序,可以利用:中斷屏蔽。中斷屏蔽。11.在操作系統(tǒng)中,一種用空間換取時間的資

50、源轉(zhuǎn)換技術(shù)是:在操作系統(tǒng)中,一種用空間換取時間的資源轉(zhuǎn)換技術(shù)是:Spooling。12.大多數(shù)低速設(shè)備都屬于:大多數(shù)低速設(shè)備都屬于:獨享設(shè)備。獨享設(shè)備。第101頁/共108頁第一百零二頁,共108頁。13.為了實現(xiàn)為了實現(xiàn)CPU與外設(shè)的并行與外設(shè)的并行(bngxng)工作,系統(tǒng)引入了工作,系統(tǒng)引入了 、 、 控制方式?控制方式?中斷中斷(zhngdun)、DMA和通道。和通道。14.在操作系統(tǒng)中,用戶在使用在操作系統(tǒng)中,用戶在使用I/O設(shè)備設(shè)備(shbi)時,通常采用時,通常采用:邏輯設(shè)備名。邏輯設(shè)備名。15.Spooling系統(tǒng)是由系統(tǒng)是由 組成。組成。 磁盤中的輸入井和輸出井、內(nèi)存中的輸入緩沖區(qū)磁盤中的輸入井和輸出井、內(nèi)存中的輸入緩沖區(qū)和輸出緩沖區(qū)以及輸入進程和輸出進程組成。和輸出緩沖區(qū)以及輸入

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論