




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 操作系統(tǒng) 第五章 設(shè)備管理1 1第五章 設(shè)備管理5.1 輸入輸出管理概念5.2 數(shù)據(jù)傳送控制方式5.3 中斷技術(shù)5.4 緩沖技術(shù)5.5 設(shè)備分配5.6 I/O進(jìn)程控制5.7 設(shè)備驅(qū)動(dòng)程序5.8 磁盤(pán)的驅(qū)動(dòng)調(diào)度 操作系統(tǒng) 第五章 設(shè)備管理2 25.1 輸入輸出管理概念一、設(shè)備管理的目的:1 1)合理地利用外部設(shè)備)合理地利用外部設(shè)備: :提高設(shè)備的并行性和均衡性提高設(shè)備的并行性和均衡性。2 2)方便用戶(hù):)方便用戶(hù):對(duì)各種不同的設(shè)備都使用同一界面。對(duì)各種不同的設(shè)備都使用同一界面。二、設(shè)備管理的功能 根據(jù)各類(lèi)設(shè)備的特點(diǎn)確定相應(yīng)的分配策略。(根據(jù)各類(lèi)設(shè)備的特點(diǎn)確定相應(yīng)的分配策略。(包括:包括:設(shè)備
2、分配策略,分配的方式,分配技術(shù)和選擇用戶(hù)的設(shè)備分配策略,分配的方式,分配技術(shù)和選擇用戶(hù)的算法算法。)。) 啟動(dòng)設(shè)備完成實(shí)際的輸入輸出操作。啟動(dòng)設(shè)備完成實(shí)際的輸入輸出操作。 向用戶(hù)提供統(tǒng)一、友好的使用界面。(設(shè)備獨(dú)立性)向用戶(hù)提供統(tǒng)一、友好的使用界面。(設(shè)備獨(dú)立性) 優(yōu)化設(shè)備的調(diào)度、提高設(shè)備的利用率。優(yōu)化設(shè)備的調(diào)度、提高設(shè)備的利用率。外部設(shè)備:除除CPUCPU、主存之外的其它設(shè)備。、主存之外的其它設(shè)備。 操作系統(tǒng) 第五章 設(shè)備管理3 3三、設(shè)備的分類(lèi) 計(jì)算機(jī)的計(jì)算機(jī)的I/OI/O設(shè)備種類(lèi)很多,結(jié)構(gòu)也較復(fù)雜,管理起設(shè)備種類(lèi)很多,結(jié)構(gòu)也較復(fù)雜,管理起來(lái)較困難,為了管理上的方便。通常按不同的觀點(diǎn)從不來(lái)
3、較困難,為了管理上的方便。通常按不同的觀點(diǎn)從不同的角度對(duì)設(shè)備進(jìn)行分類(lèi)。同的角度對(duì)設(shè)備進(jìn)行分類(lèi)。1按所屬關(guān)系分類(lèi)1 1)系統(tǒng)設(shè)備。系統(tǒng)設(shè)備。指在操作系統(tǒng)生成時(shí)已登記于系統(tǒng)中的指在操作系統(tǒng)生成時(shí)已登記于系統(tǒng)中的標(biāo)標(biāo)準(zhǔn)設(shè)備準(zhǔn)設(shè)備。如鍵盤(pán)、打印機(jī)、磁盤(pán)等。如鍵盤(pán)、打印機(jī)、磁盤(pán)等。2 2)用戶(hù)設(shè)備。用戶(hù)設(shè)備。指在系統(tǒng)生成時(shí)未登記于系統(tǒng)中的指在系統(tǒng)生成時(shí)未登記于系統(tǒng)中的非標(biāo)準(zhǔn)非標(biāo)準(zhǔn)設(shè)備設(shè)備。用戶(hù)必須用某種方式把這類(lèi)設(shè)備交給系統(tǒng)統(tǒng)一管理,。用戶(hù)必須用某種方式把這類(lèi)設(shè)備交給系統(tǒng)統(tǒng)一管理,如繪圖機(jī)、掃描儀等,如繪圖機(jī)、掃描儀等, 操作系統(tǒng) 第五章 設(shè)備管理4 42從資源分配角度分類(lèi)1 1)獨(dú)占設(shè)備。獨(dú)占設(shè)備。指
4、在系統(tǒng)運(yùn)行過(guò)程中,一經(jīng)分配給某一作業(yè),指在系統(tǒng)運(yùn)行過(guò)程中,一經(jīng)分配給某一作業(yè),就在作業(yè)整個(gè)運(yùn)行期間都為它獨(dú)占的設(shè)備,如就在作業(yè)整個(gè)運(yùn)行期間都為它獨(dú)占的設(shè)備,如打印機(jī)、卡打印機(jī)、卡片輸入機(jī)片輸入機(jī)等。等。2 2)共享設(shè)備。共享設(shè)備。指允許若干個(gè)用戶(hù)同時(shí)共享使用的設(shè)備,如指允許若干個(gè)用戶(hù)同時(shí)共享使用的設(shè)備,如磁盤(pán)、磁帶磁盤(pán)、磁帶等。等。3 3)虛擬設(shè)備。虛擬設(shè)備。為提高設(shè)備的利用率,通過(guò)為提高設(shè)備的利用率,通過(guò)Spooling技術(shù)把技術(shù)把獨(dú)占設(shè)備改造為共享設(shè)備,用來(lái)模擬獨(dú)占設(shè)備的那部分共享獨(dú)占設(shè)備改造為共享設(shè)備,用來(lái)模擬獨(dú)占設(shè)備的那部分共享設(shè)備稱(chēng)為設(shè)備稱(chēng)為虛擬設(shè)備虛擬設(shè)備。 操作系統(tǒng) 第五章 設(shè)備
5、管理5 53從設(shè)備的使用特性分類(lèi)1 1) 存儲(chǔ)設(shè)備。存儲(chǔ)設(shè)備。指計(jì)算機(jī)用來(lái)存儲(chǔ)信息的設(shè)備:如磁盤(pán)、指計(jì)算機(jī)用來(lái)存儲(chǔ)信息的設(shè)備:如磁盤(pán)、磁帶等。磁帶等。2 2) 輸入輸出設(shè)備。輸入輸出設(shè)備。包括輸入設(shè)備和輸出設(shè)備兩大類(lèi)。包括輸入設(shè)備和輸出設(shè)備兩大類(lèi)。輸入設(shè)備輸入設(shè)備:是將外部世界來(lái)的信息輸送給計(jì)算機(jī),如鍵盤(pán)、:是將外部世界來(lái)的信息輸送給計(jì)算機(jī),如鍵盤(pán)、鼠標(biāo)器、掃描儀等。鼠標(biāo)器、掃描儀等。輸出設(shè)備:輸出設(shè)備:是將計(jì)算機(jī)處理或加工好的信息輸出給外部世是將計(jì)算機(jī)處理或加工好的信息輸出給外部世界,如打印機(jī)、顯示器、繪圖機(jī)等。界,如打印機(jī)、顯示器、繪圖機(jī)等。3 3) 終端設(shè)備。終端設(shè)備。 操作系統(tǒng) 第五章
6、 設(shè)備管理6 64按信息交換方式分類(lèi)1 1)塊設(shè)備。)塊設(shè)備。指計(jì)算機(jī)的主存和外設(shè)之間的信息交換是以塊指計(jì)算機(jī)的主存和外設(shè)之間的信息交換是以塊為單位進(jìn)行的設(shè)備。一塊通常是為單位進(jìn)行的設(shè)備。一塊通常是512512個(gè)字節(jié)或個(gè)字節(jié)或1K1K字節(jié),由于字節(jié),由于信息交換以塊為單位進(jìn)行,所以這類(lèi)設(shè)備有較高的存取速信息交換以塊為單位進(jìn)行,所以這類(lèi)設(shè)備有較高的存取速度;如度;如磁盤(pán)、磁帶磁盤(pán)、磁帶等。等。2 2)字符設(shè)備。)字符設(shè)備。指計(jì)算機(jī)的主存與設(shè)備之間的信息交換是以指計(jì)算機(jī)的主存與設(shè)備之間的信息交換是以字符為單位進(jìn)行的設(shè)備,由于每次只能傳送一個(gè)字符的信息,字符為單位進(jìn)行的設(shè)備,由于每次只能傳送一個(gè)字符
7、的信息,所以這類(lèi)設(shè)備的速度較低,如所以這類(lèi)設(shè)備的速度較低,如鍵盤(pán)、顯示器、打印機(jī)、卡片鍵盤(pán)、顯示器、打印機(jī)、卡片輸入機(jī)輸入機(jī)等。等。 操作系統(tǒng) 第五章 設(shè)備管理7 7 計(jì)算機(jī)系統(tǒng)的輸入輸出設(shè)備種類(lèi)、型號(hào)、規(guī)格繁多,所計(jì)算機(jī)系統(tǒng)的輸入輸出設(shè)備種類(lèi)、型號(hào)、規(guī)格繁多,所以必須屏蔽設(shè)備的物理特性,向用戶(hù)提供一個(gè)統(tǒng)一、簡(jiǎn)便的以必須屏蔽設(shè)備的物理特性,向用戶(hù)提供一個(gè)統(tǒng)一、簡(jiǎn)便的使用接口,實(shí)現(xiàn)所謂的與設(shè)備無(wú)關(guān)性(設(shè)備獨(dú)立性)。使用接口,實(shí)現(xiàn)所謂的與設(shè)備無(wú)關(guān)性(設(shè)備獨(dú)立性)。 所謂所謂方便方便,是指用戶(hù)能擺脫具體物理設(shè)備的繁瑣規(guī)定的,是指用戶(hù)能擺脫具體物理設(shè)備的繁瑣規(guī)定的束縛而方便靈活地使用設(shè)備。束縛而方便靈
8、活地使用設(shè)備。 所謂所謂統(tǒng)一統(tǒng)一,是指對(duì)各種不同的設(shè)備都使用同一界面。例是指對(duì)各種不同的設(shè)備都使用同一界面。例如,在如,在UNIXUNIX系統(tǒng)中從各種輸入設(shè)備輸入信息都使用系統(tǒng)調(diào)用系統(tǒng)中從各種輸入設(shè)備輸入信息都使用系統(tǒng)調(diào)用read,read,向各種輸出設(shè)備傳送信息都使用系統(tǒng)調(diào)用向各種輸出設(shè)備傳送信息都使用系統(tǒng)調(diào)用write.write.四、設(shè)備獨(dú)立性(設(shè)備無(wú)關(guān)性)邏輯設(shè)備名:邏輯設(shè)備名:用戶(hù)自己指定的設(shè)備名(設(shè)備類(lèi)用戶(hù)自己指定的設(shè)備名(設(shè)備類(lèi)相對(duì)號(hào))。相對(duì)號(hào))。物理設(shè)備名物理設(shè)備名:系統(tǒng)提供的設(shè)備標(biāo)準(zhǔn)名稱(chēng)(絕對(duì)號(hào))。:系統(tǒng)提供的設(shè)備標(biāo)準(zhǔn)名稱(chēng)(絕對(duì)號(hào))。( (一一) )設(shè)備獨(dú)立性:設(shè)備獨(dú)立性:用
9、戶(hù)在編制程序時(shí)使用的設(shè)備與實(shí)際使用戶(hù)在編制程序時(shí)使用的設(shè)備與實(shí)際使用的設(shè)備無(wú)關(guān),用戶(hù)程序中使用的是邏輯設(shè)備。用的設(shè)備無(wú)關(guān),用戶(hù)程序中使用的是邏輯設(shè)備。 操作系統(tǒng) 第五章 設(shè)備管理8 81 1、一個(gè)程序應(yīng)該獨(dú)立于分配給它的某種類(lèi)型的具體設(shè)備。、一個(gè)程序應(yīng)該獨(dú)立于分配給它的某種類(lèi)型的具體設(shè)備。 1 1)保護(hù)程序不會(huì)因?yàn)槟骋慌_(tái)物理設(shè)備發(fā)生故障或已分)保護(hù)程序不會(huì)因?yàn)槟骋慌_(tái)物理設(shè)備發(fā)生故障或已分配給其它程序而失效;配給其它程序而失效; 2 2)使操作系統(tǒng)根據(jù)當(dāng)時(shí)總的設(shè)備配置情況自由地分配)使操作系統(tǒng)根據(jù)當(dāng)時(shí)總的設(shè)備配置情況自由地分配適當(dāng)類(lèi)型的設(shè)備。適當(dāng)類(lèi)型的設(shè)備。2 2、一個(gè)程序應(yīng)該盡可能與它所使用的
10、、一個(gè)程序應(yīng)該盡可能與它所使用的I/OI/O設(shè)備類(lèi)型無(wú)關(guān)。設(shè)備類(lèi)型無(wú)關(guān)。 指在指在I/OI/O信息時(shí),可以從不同類(lèi)型的設(shè)備上信息時(shí),可以從不同類(lèi)型的設(shè)備上I/OI/O,若要改,若要改變?cè)O(shè)備的類(lèi)型,程序只需做很少的修改。變?cè)O(shè)備的類(lèi)型,程序只需做很少的修改。(二)設(shè)備獨(dú)立性的類(lèi)型:邏輯設(shè)備名邏輯設(shè)備名物理設(shè)備名物理設(shè)備名設(shè)備管理設(shè)備管理 操作系統(tǒng) 第五章 設(shè)備管理9 9(三)設(shè)備管理分為兩層:1 1)輸入輸出控制系統(tǒng))輸入輸出控制系統(tǒng) 它與用戶(hù)相互交互,完成設(shè)備的分配、調(diào)度并向程它與用戶(hù)相互交互,完成設(shè)備的分配、調(diào)度并向程序員提供一個(gè)統(tǒng)一的編程接口,實(shí)現(xiàn)了邏輯設(shè)備向物理設(shè)序員提供一個(gè)統(tǒng)一的編程接口
11、,實(shí)現(xiàn)了邏輯設(shè)備向物理設(shè)備的轉(zhuǎn)換。備的轉(zhuǎn)換。2 2)設(shè)備驅(qū)動(dòng)程序)設(shè)備驅(qū)動(dòng)程序 它直接與設(shè)備打交道,控制設(shè)備控制器,完成具體它直接與設(shè)備打交道,控制設(shè)備控制器,完成具體的輸入輸出。的輸入輸出。 實(shí)現(xiàn)設(shè)備無(wú)關(guān)性的一個(gè)好辦法就是采用分層思想,逐實(shí)現(xiàn)設(shè)備無(wú)關(guān)性的一個(gè)好辦法就是采用分層思想,逐層抽象。層抽象。 操作系統(tǒng) 第五章 設(shè)備管理1010( (四四) )設(shè)備組成設(shè)備組成 I IO O設(shè)備一般由設(shè)備一般由機(jī)械機(jī)械和和電子電子兩部分組兩部分組成,成, 把這兩部分分開(kāi)處理,以提供更加模把這兩部分分開(kāi)處理,以提供更加模塊化、更加通用的設(shè)計(jì)。塊化、更加通用的設(shè)計(jì)。機(jī)械部分是設(shè)備本身(物理裝置)機(jī)械部分是設(shè)
12、備本身(物理裝置)電子部分是設(shè)備控制器或適配器電子部分是設(shè)備控制器或適配器 在小型和微型機(jī)中,它常采用印刷電路在小型和微型機(jī)中,它常采用印刷電路卡插入計(jì)算機(jī)中(接口)的方式,卡插入計(jì)算機(jī)中(接口)的方式,完成設(shè)完成設(shè)備與主機(jī)間的連接和通訊。備與主機(jī)間的連接和通訊。 操作系統(tǒng) 第五章 設(shè)備管理1111設(shè)備通過(guò)設(shè)備通過(guò)設(shè)備控制器設(shè)備控制器與與CPUCPU進(jìn)行通信。進(jìn)行通信。設(shè)備中含有與設(shè)備控制器間的接口,它通設(shè)備中含有與設(shè)備控制器間的接口,它通常是一個(gè)標(biāo)準(zhǔn)接口,符合常是一個(gè)標(biāo)準(zhǔn)接口,符合ANSIANSI、IEEEIEEE或或ISOISO等國(guó)際標(biāo)準(zhǔn)。接口包含三種類(lèi)型的信號(hào)線:等國(guó)際標(biāo)準(zhǔn)。接口包含三種
13、類(lèi)型的信號(hào)線:數(shù)據(jù)信號(hào)線、控制信號(hào)線、狀態(tài)信號(hào)線。數(shù)據(jù)信號(hào)線、控制信號(hào)線、狀態(tài)信號(hào)線。CPU外部設(shè)備控控制制邏邏輯輯電電路路控制寄存器控制寄存器狀態(tài)寄存器狀態(tài)寄存器數(shù)據(jù)寄存器數(shù)據(jù)寄存器設(shè)備控制器與處理機(jī)和外設(shè)的關(guān)系設(shè)備控制器與處理機(jī)和外設(shè)的關(guān)系 操作系統(tǒng) 第五章 設(shè)備管理1212( (五五) )設(shè)備控制器設(shè)備控制器1 1、設(shè)備控制器的設(shè)備控制器的組成組成1 1)控制器與處理機(jī)間的接口)控制器與處理機(jī)間的接口 包含:數(shù)據(jù)線、地址線和控制線。包含:數(shù)據(jù)線、地址線和控制線。2 2)控制器與設(shè)備間的接口)控制器與設(shè)備間的接口 一個(gè)控制器可以連接一個(gè)或多個(gè)設(shè)備,于是相應(yīng)包含一個(gè)或多一個(gè)控制器可以連接一個(gè)
14、或多個(gè)設(shè)備,于是相應(yīng)包含一個(gè)或多個(gè)設(shè)備接口,一個(gè)接口連接一臺(tái)設(shè)備。個(gè)設(shè)備接口,一個(gè)接口連接一臺(tái)設(shè)備。控制器與設(shè)備之間的接口常常是一個(gè)低級(jí)的串行接口。例如磁控制器與設(shè)備之間的接口常常是一個(gè)低級(jí)的串行接口。例如磁盤(pán),可以按每個(gè)磁道盤(pán),可以按每個(gè)磁道8 8扇區(qū),每個(gè)扇區(qū)扇區(qū),每個(gè)扇區(qū)512512個(gè)字節(jié)進(jìn)行格式化。個(gè)字節(jié)進(jìn)行格式化。然而,實(shí)際從驅(qū)動(dòng)器出來(lái)的卻是一連串的位流,以一個(gè)頭標(biāo)然而,實(shí)際從驅(qū)動(dòng)器出來(lái)的卻是一連串的位流,以一個(gè)頭標(biāo)(preamblepreamble)開(kāi)始,然后是一個(gè)扇區(qū)的)開(kāi)始,然后是一個(gè)扇區(qū)的40964096位(位(5125128 8),最),最后是檢查和或錯(cuò)誤校驗(yàn)碼(后是檢查和
15、或錯(cuò)誤校驗(yàn)碼(ErrorCErrorC一一C C:ECCECC)。頭標(biāo)是在對(duì))。頭標(biāo)是在對(duì)磁盤(pán)格式化時(shí)寫(xiě)上的,它包括柱面和扇區(qū)數(shù),扇區(qū)的大小和類(lèi)磁盤(pán)格式化時(shí)寫(xiě)上的,它包括柱面和扇區(qū)數(shù),扇區(qū)的大小和類(lèi)似的一些數(shù)據(jù)。似的一些數(shù)據(jù)。3 3)I/OI/O邏輯電路邏輯電路 對(duì)對(duì)CPUCPU發(fā)來(lái)的發(fā)來(lái)的I/OI/O命令進(jìn)行譯碼。命令進(jìn)行譯碼。 操作系統(tǒng) 第五章 設(shè)備管理13132 2、設(shè)備控制器的功能、設(shè)備控制器的功能1 1)接收和識(shí)別命令)接收和識(shí)別命令2 2)數(shù)據(jù)交換)數(shù)據(jù)交換3 3)標(biāo)識(shí)和報(bào)告設(shè)備的狀態(tài))標(biāo)識(shí)和報(bào)告設(shè)備的狀態(tài)4 4)地址識(shí)別)地址識(shí)別5 5)數(shù)據(jù)緩沖)數(shù)據(jù)緩沖6 6)差錯(cuò)控制)差錯(cuò)控
16、制 操作系統(tǒng) 第五章 設(shè)備管理14143、設(shè)備控制器如何工作、設(shè)備控制器如何工作操作系統(tǒng)將命令寫(xiě)入控制器寄存器中,以實(shí)現(xiàn)輸入輸出操作系統(tǒng)將命令寫(xiě)入控制器寄存器中,以實(shí)現(xiàn)輸入輸出 例如:例如:IBM PCIBM PC的軟盤(pán)控制器可接收的軟盤(pán)控制器可接收1515條命令,條命令,READREAD、WRITEWRITE、FORMATFORMAT、SEEKSEEK、RECALIBRATERECALIBRATE,命令可以帶參數(shù)。,命令可以帶參數(shù)。它們被一起送入控制器的寄存器中。它們被一起送入控制器的寄存器中??刂破鹘邮芤粭l命令后,可獨(dú)立于控制器接受一條命令后,可獨(dú)立于CPUCPU完成指定操作,完成指定操作
17、,CPUCPU可以轉(zhuǎn)去執(zhí)行其它運(yùn)算。命令完成時(shí),控制器產(chǎn)生一個(gè)中可以轉(zhuǎn)去執(zhí)行其它運(yùn)算。命令完成時(shí),控制器產(chǎn)生一個(gè)中斷,斷,CPUCPU響應(yīng)中斷,控制轉(zhuǎn)給操作系統(tǒng)。響應(yīng)中斷,控制轉(zhuǎn)給操作系統(tǒng)。CPUCPU通過(guò)讀控制器通過(guò)讀控制器寄存器中的信息,獲得操作結(jié)果和設(shè)備狀態(tài)。寄存器中的信息,獲得操作結(jié)果和設(shè)備狀態(tài)??刂破餍枰褟脑O(shè)備接口接收到的控制器需要把從設(shè)備接口接收到的串行位流轉(zhuǎn)換為字節(jié),串行位流轉(zhuǎn)換為字節(jié),并進(jìn)行必要的錯(cuò)誤修正。首先,控制器按位進(jìn)行組裝,然并進(jìn)行必要的錯(cuò)誤修正。首先,控制器按位進(jìn)行組裝,然后存入控制器內(nèi)部的緩沖區(qū)中形成以字節(jié)為單位的塊。在后存入控制器內(nèi)部的緩沖區(qū)中形成以字節(jié)為單位的
18、塊。在對(duì)塊驗(yàn)證檢查和并證明無(wú)錯(cuò)誤時(shí),再將它復(fù)制到主存中。對(duì)塊驗(yàn)證檢查和并證明無(wú)錯(cuò)誤時(shí),再將它復(fù)制到主存中。 操作系統(tǒng) 第五章 設(shè)備管理1515設(shè)備設(shè)備數(shù)據(jù)率數(shù)據(jù)率鍵盤(pán)鍵盤(pán)10B/s鼠標(biāo)鼠標(biāo)100B/s56k調(diào)制解調(diào)器調(diào)制解調(diào)器7kB/s掃描儀掃描儀400kB/s數(shù)字便攜式攝相機(jī)數(shù)字便攜式攝相機(jī)3.5MB/s802.11g無(wú)線網(wǎng)絡(luò)無(wú)線網(wǎng)絡(luò)6.75MB/s52倍速倍速CD_ROM7.8MB/s快速以太網(wǎng)快速以太網(wǎng)12.5MB/s袖珍閃存卡袖珍閃存卡40MB/s火線(火線(IEEE1394)50MB/sUSB2.060MB/sSONET網(wǎng)絡(luò)網(wǎng)絡(luò)78MB/sUltra 2磁盤(pán)磁盤(pán)80MB/s千兆以太網(wǎng)
19、千兆以太網(wǎng)125MB/s磁盤(pán)驅(qū)動(dòng)器磁盤(pán)驅(qū)動(dòng)器300MB/s磁帶磁帶320MB/s總線總線528MB/s某些典型的設(shè)備、網(wǎng)絡(luò)和總線的數(shù)據(jù)率某些典型的設(shè)備、網(wǎng)絡(luò)和總線的數(shù)據(jù)率 操作系統(tǒng) 第五章 設(shè)備管理16164 4、內(nèi)存映射、內(nèi)存映射I/OI/O每個(gè)控制器有幾個(gè)寄存器用來(lái)與每個(gè)控制器有幾個(gè)寄存器用來(lái)與CPUCPU進(jìn)行通信。進(jìn)行通信??刂破髦械募拇嫫饕卜Q(chēng)為控制器中的寄存器也稱(chēng)為“I/OI/O端口端口”,通常包括:控制,通常包括:控制寄存器、狀態(tài)寄存器和數(shù)據(jù)寄存器三大類(lèi),而且一個(gè)外設(shè)寄存器、狀態(tài)寄存器和數(shù)據(jù)寄存器三大類(lèi),而且一個(gè)外設(shè)的寄存器通常被連續(xù)地編址。除了控制寄存器以外,許多的寄存器通常被連續(xù)
20、地編址。除了控制寄存器以外,許多設(shè)備還有一個(gè)操作系統(tǒng)可以讀寫(xiě)的設(shè)備還有一個(gè)操作系統(tǒng)可以讀寫(xiě)的數(shù)據(jù)緩沖區(qū)數(shù)據(jù)緩沖區(qū)。例如在屏。例如在屏幕上顯示像素的常規(guī)方法是使用一個(gè)視頻幕上顯示像素的常規(guī)方法是使用一個(gè)視頻RAM,RAM,這一這一RAMRAM就是就是一個(gè)數(shù)據(jù)緩沖區(qū),可供程序或操作系統(tǒng)寫(xiě)入數(shù)據(jù)。一個(gè)數(shù)據(jù)緩沖區(qū),可供程序或操作系統(tǒng)寫(xiě)入數(shù)據(jù)。通過(guò)通過(guò)寫(xiě)入寫(xiě)入這些寄存器,操作系統(tǒng)可以命令設(shè)備發(fā)送數(shù)據(jù)、這些寄存器,操作系統(tǒng)可以命令設(shè)備發(fā)送數(shù)據(jù)、接收數(shù)據(jù)、開(kāi)啟或關(guān)閉。接收數(shù)據(jù)、開(kāi)啟或關(guān)閉。通過(guò)通過(guò)讀取讀取這些寄存器,操作系統(tǒng)可以了解設(shè)備的狀態(tài),是這些寄存器,操作系統(tǒng)可以了解設(shè)備的狀態(tài),是否準(zhǔn)備好接收一個(gè)新的
21、命令等。否準(zhǔn)備好接收一個(gè)新的命令等。 操作系統(tǒng) 第五章 設(shè)備管理1717問(wèn)題:?jiǎn)栴}:CPU如何與設(shè)備的控制寄存器和數(shù)如何與設(shè)備的控制寄存器和數(shù)據(jù)緩沖區(qū)進(jìn)行通信?據(jù)緩沖區(qū)進(jìn)行通信?存在兩種可選的方法。存在兩種可選的方法。 CPUCPU對(duì)外設(shè)對(duì)外設(shè)I/OI/O端口物理地址的編址方式有兩種:一種是端口物理地址的編址方式有兩種:一種是I/OI/O映射方式映射方式(I/OI/Omappedmapped),另一種是內(nèi)存映射方式(),另一種是內(nèi)存映射方式(MemoryMemorymappedmapped)。而具體)。而具體采用哪一種則取決于采用哪一種則取決于CPUCPU的體系結(jié)構(gòu)。的體系結(jié)構(gòu)。 第一種方法:
22、第一種方法:每個(gè)控制寄存器分配一個(gè)每個(gè)控制寄存器分配一個(gè)I/OI/O端口號(hào)端口號(hào)(一個(gè)一個(gè)8位或位或16位的整位的整數(shù)數(shù)),所有所有I/OI/O端口號(hào)形成端口號(hào)形成I/OI/O端口空間端口空間(I/O port space),(I/O port space),并且受到保護(hù)使并且受到保護(hù)使得普通的用戶(hù)程序不能對(duì)其進(jìn)行訪問(wèn)(只有操作系統(tǒng)可以訪問(wèn)),使用一得普通的用戶(hù)程序不能對(duì)其進(jìn)行訪問(wèn)(只有操作系統(tǒng)可以訪問(wèn)),使用一條特殊的條特殊的I/OI/O指令。指令。例如例如IN REG ,PORT; CPUIN REG ,PORT; CPU可以讀取控制寄存器可以讀取控制寄存器PORTPORT的內(nèi)容并將結(jié)果存
23、入到的內(nèi)容并將結(jié)果存入到CPUCPU寄存器寄存器REGREG中。中。 操作系統(tǒng) 第五章 設(shè)備管理1818 操作系統(tǒng) 第五章 設(shè)備管理1919類(lèi)似地使用類(lèi)似地使用OUT PORTOUT PORT,REGREG; CPUCPU可以將可以將REGREG的內(nèi)容寫(xiě)入到控制寄的內(nèi)容寫(xiě)入到控制寄存器中。存器中。大多數(shù)早期計(jì)算機(jī),包括幾乎所有大型機(jī),如大多數(shù)早期計(jì)算機(jī),包括幾乎所有大型機(jī),如IBMIBM系列機(jī)系列機(jī)及其所有后續(xù)機(jī)型,都以這種方式工作。及其所有后續(xù)機(jī)型,都以這種方式工作。在這一方案中,內(nèi)存地址空間和在這一方案中,內(nèi)存地址空間和I IO O地址空間是不同的,如上圖地址空間是不同的,如上圖所示。指令
24、所示。指令I(lǐng)NIN,和,和MOVMOVR R,是完全不同的。,是完全不同的。第二種方法:第二種方法:它將所有控制寄存器映射到內(nèi)存空間中,如上圖所它將所有控制寄存器映射到內(nèi)存空間中,如上圖所示,每個(gè)控制寄存器被分配唯一的一個(gè)內(nèi)存地址,并且不會(huì)有內(nèi)示,每個(gè)控制寄存器被分配唯一的一個(gè)內(nèi)存地址,并且不會(huì)有內(nèi)存被分配這一地址。這樣的系統(tǒng)內(nèi)存映射存被分配這一地址。這樣的系統(tǒng)內(nèi)存映射I/OI/O( MemoryMemorymapped mapped I/O I/O )。通常分配給控制寄存器的地址位于地址空間的頂端。這)。通常分配給控制寄存器的地址位于地址空間的頂端。這種方案被引入種方案被引入另外還有一種混合
25、方案,如上圖所示,這一方案具有內(nèi)存映射另外還有一種混合方案,如上圖所示,這一方案具有內(nèi)存映射I/OI/O的數(shù)據(jù)緩沖區(qū),控制器具有單獨(dú)的的數(shù)據(jù)緩沖區(qū),控制器具有單獨(dú)的I/OI/O端口。端口。PentiunPentiun處理器處理器使用的就是這一體系結(jié)構(gòu)。使用的就是這一體系結(jié)構(gòu)。這兩種方法也可以看作是兩種尋址控制器的方案。這兩種方法也可以看作是兩種尋址控制器的方案。 操作系統(tǒng) 第五章 設(shè)備管理2020內(nèi)存映射內(nèi)存映射I/OI/O的優(yōu)點(diǎn)和缺點(diǎn)的優(yōu)點(diǎn)和缺點(diǎn)優(yōu)點(diǎn):優(yōu)點(diǎn):w對(duì)于內(nèi)存映射對(duì)于內(nèi)存映射I/OI/O, I/OI/O設(shè)備驅(qū)動(dòng)程序可以完全用設(shè)備驅(qū)動(dòng)程序可以完全用C C語(yǔ)言編寫(xiě)。語(yǔ)言編寫(xiě)。如果不使用內(nèi)
26、存映射如果不使用內(nèi)存映射I/OI/O,就要用到某些匯編代碼。,就要用到某些匯編代碼。w對(duì)于內(nèi)存映射對(duì)于內(nèi)存映射I/OI/O,不需要特殊的保護(hù)機(jī)制來(lái)阻止用戶(hù)進(jìn)程執(zhí)行,不需要特殊的保護(hù)機(jī)制來(lái)阻止用戶(hù)進(jìn)程執(zhí)行I/OI/O操作。操作。w對(duì)于內(nèi)存映射對(duì)于內(nèi)存映射I/OI/O,可以引用內(nèi)存的每一條指令也可以引用控制,可以引用內(nèi)存的每一條指令也可以引用控制寄存器。寄存器。缺點(diǎn):缺點(diǎn):對(duì)于一個(gè)設(shè)備控制器進(jìn)行高速緩存可能是災(zāi)難性的。在存在高對(duì)于一個(gè)設(shè)備控制器進(jìn)行高速緩存可能是災(zāi)難性的。在存在高速緩存的情況下考慮下面給出的匯編代碼循環(huán):速緩存的情況下考慮下面給出的匯編代碼循環(huán):loop test port_4 /
27、loop test port_4 /檢測(cè)端口檢測(cè)端口4 4是否為是否為0 0 beq ready / beq ready /如果為如果為0 0,轉(zhuǎn)向,轉(zhuǎn)向readyready branch loop / branch loop /否則繼續(xù)測(cè)試否則繼續(xù)測(cè)試 ready:ready:第一次引用第一次引用port-4port-4將導(dǎo)致它被高速緩存,隨后的引用將只從高將導(dǎo)致它被高速緩存,隨后的引用將只從高速緩存中取值并且再不會(huì)查詢(xún)?cè)O(shè)備。之后當(dāng)設(shè)備最終變?yōu)榫途w速緩存中取值并且再不會(huì)查詢(xún)?cè)O(shè)備。之后當(dāng)設(shè)備最終變?yōu)榫途w時(shí)軟件將沒(méi)有辦法發(fā)現(xiàn)這一點(diǎn)。結(jié)果,循環(huán)將永遠(yuǎn)進(jìn)行下去。時(shí)軟件將沒(méi)有辦法發(fā)現(xiàn)這一點(diǎn)。結(jié)果,循環(huán)
28、將永遠(yuǎn)進(jìn)行下去。如果只存在一個(gè)地址空間,那么所有的內(nèi)存模塊和所有的如果只存在一個(gè)地址空間,那么所有的內(nèi)存模塊和所有的I/OI/O設(shè)設(shè)備都必須檢查所有的內(nèi)存引用,以便了解由誰(shuí)做出響應(yīng)。備都必須檢查所有的內(nèi)存引用,以便了解由誰(shuí)做出響應(yīng)。 操作系統(tǒng) 第五章 設(shè)備管理21215.2 數(shù)據(jù)傳輸控制方式一、IO控制方式1 1)循環(huán)測(cè)試)循環(huán)測(cè)試I/OI/O方式;方式;2 2)I/OI/O中斷方式;中斷方式;3 3)DMADMA方式;方式;4 4)通道方式。)通道方式。設(shè)備(I/O)控制器: 是是CPUCPU與與I/OI/O設(shè)備之間的接口,設(shè)備不直接與設(shè)備之間的接口,設(shè)備不直接與CPUCPU進(jìn)行通進(jìn)行通信,
29、設(shè)備控制器接收從信,設(shè)備控制器接收從CPUCPU發(fā)來(lái)的命令,去控制發(fā)來(lái)的命令,去控制I/OI/O設(shè)備工設(shè)備工作,包括狀態(tài)寄存器和數(shù)據(jù)緩沖寄存器。作,包括狀態(tài)寄存器和數(shù)據(jù)緩沖寄存器。 操作系統(tǒng) 第五章 設(shè)備管理2222 CPU CPU與外設(shè)的活動(dòng)本質(zhì)上是異步的,為了實(shí)現(xiàn)與外設(shè)的活動(dòng)本質(zhì)上是異步的,為了實(shí)現(xiàn)CPUCPU與外設(shè)與外設(shè)間的信息傳送,間的信息傳送,CPUCPU必須重復(fù)測(cè)試外設(shè)的狀態(tài);僅當(dāng)外設(shè)是必須重復(fù)測(cè)試外設(shè)的狀態(tài);僅當(dāng)外設(shè)是處在準(zhǔn)備好的狀態(tài)時(shí),處在準(zhǔn)備好的狀態(tài)時(shí),CPUCPU才能與外設(shè)交換信息。才能與外設(shè)交換信息。問(wèn)題:?jiǎn)栴}:1 1)CPUCPU的大量時(shí)間消耗在等待輸入輸出的循環(huán)檢測(cè)上
30、,使的大量時(shí)間消耗在等待輸入輸出的循環(huán)檢測(cè)上,使CPUCPU與外設(shè)串行工作,嚴(yán)重影響了與外設(shè)串行工作,嚴(yán)重影響了CPUCPU的使用效率;的使用效率;2 2)外設(shè)的使用也不合理)外設(shè)的使用也不合理( (諸外設(shè)不能并行工作諸外設(shè)不能并行工作) );3 3)無(wú)法支持多道程序并發(fā)執(zhí)行,整個(gè)系統(tǒng)效率很低。)無(wú)法支持多道程序并發(fā)執(zhí)行,整個(gè)系統(tǒng)效率很低。 在早期計(jì)算機(jī)或現(xiàn)代一些簡(jiǎn)單的微型計(jì)算機(jī)系統(tǒng)中采在早期計(jì)算機(jī)或現(xiàn)代一些簡(jiǎn)單的微型計(jì)算機(jī)系統(tǒng)中采用循環(huán)測(cè)試傳送方式。循環(huán)測(cè)試傳送是一種用用循環(huán)測(cè)試傳送方式。循環(huán)測(cè)試傳送是一種用程序直接控程序直接控制制I IO O操作的方式操作的方式。1. 循環(huán)測(cè)試I/O方式;
31、 操作系統(tǒng) 第五章 設(shè)備管理2323用戶(hù)直接編寫(xiě)用戶(hù)直接編寫(xiě)I/O指令程序控制輸入輸出指令程序控制輸入輸出。要保持要保持CPU與外設(shè)同步(由于速度差距)與外設(shè)同步(由于速度差距).循環(huán)測(cè)試循環(huán)測(cè)試I/OI/O方式下方式下CPUCPU向設(shè)備輸出數(shù)據(jù)大致過(guò)程如下:向設(shè)備輸出數(shù)據(jù)大致過(guò)程如下: 控制器得到控制器得到“命令就緒命令就緒”置置“busy”busy”位位 控制器清除控制器清除“命令就緒命令就緒”位與位與“busy”busy”位。位。 至此完成一個(gè)字節(jié)輸至此完成一個(gè)字節(jié)輸出,循環(huán)上述的過(guò)程出,循環(huán)上述的過(guò)程完成多個(gè)字節(jié)的輸出完成多個(gè)字節(jié)的輸出CPUCPU置控制器置控制器“啟動(dòng)啟動(dòng)”位位測(cè)狀態(tài)
32、寄存器測(cè)狀態(tài)寄存器“忙忙”?CPUCPU置控制器置控制器“寫(xiě)寫(xiě)”位;位;寫(xiě)入一個(gè)字節(jié)數(shù)據(jù);寫(xiě)入一個(gè)字節(jié)數(shù)據(jù);CPUCPU置上置上“命令就緒命令就緒”位;位;控制器是控制器是“寫(xiě)命令寫(xiě)命令”?從數(shù)據(jù)輸出寄存器讀出一從數(shù)據(jù)輸出寄存器讀出一個(gè)字節(jié),送設(shè)備輸出個(gè)字節(jié),送設(shè)備輸出忙忙寫(xiě)寫(xiě)讀讀下下一一步步下下一一步步下下一一步步下下一一步步下下一一步步下下一一步步 操作系統(tǒng) 第五章 設(shè)備管理24242. IO中斷方式; 引入中斷技術(shù)后,每當(dāng)設(shè)備完成引入中斷技術(shù)后,每當(dāng)設(shè)備完成I IO O操作時(shí),便向操作時(shí),便向CPUCPU發(fā)出中斷請(qǐng)求信號(hào),通知發(fā)出中斷請(qǐng)求信號(hào),通知CPUCPU進(jìn)行進(jìn)行I/OI/O中斷處理
33、。中斷處理。 這樣,這樣,CPUCPU一旦啟動(dòng)一旦啟動(dòng)1 1O O設(shè)備后便可執(zhí)行其它程序,僅設(shè)備后便可執(zhí)行其它程序,僅在收到在收到I IO O中斷請(qǐng)求時(shí)才執(zhí)行其中斷服務(wù)程序,進(jìn)行中斷請(qǐng)求時(shí)才執(zhí)行其中斷服務(wù)程序,進(jìn)行I IO O處理。處理。 例如例如, ,行式打印機(jī)每打印一行約需行式打印機(jī)每打印一行約需60ms,60ms,在循環(huán)測(cè)試傳在循環(huán)測(cè)試傳送方式中,大約有送方式中,大約有59.99ms CPU59.99ms CPU都處于循環(huán)測(cè)試中,在程序都處于循環(huán)測(cè)試中,在程序中斷中斷I IO O方式中,方式中,CPUCPU僅用僅用0.1ms0.1ms時(shí)間處理打印機(jī)的中斷服時(shí)間處理打印機(jī)的中斷服務(wù)程序。其
34、余的務(wù)程序。其余的59.9ms59.9ms可以處理其它任務(wù)。可以處理其它任務(wù)。 操作系統(tǒng) 第五章 設(shè)備管理2525I IO O中斷方式中斷方式基本工作過(guò)程:基本工作過(guò)程:n CPU CPU執(zhí)行設(shè)備驅(qū)動(dòng)程序,向控制器發(fā)啟動(dòng)指令。執(zhí)行設(shè)備驅(qū)動(dòng)程序,向控制器發(fā)啟動(dòng)指令。n 控制器按照控制器按照I/OI/O指令要求,啟動(dòng)并控制指令要求,啟動(dòng)并控制I/OI/O設(shè)備工設(shè)備工作。作。CPUCPU與外設(shè)是并行操作的與外設(shè)是并行操作的。 n 輸入就緒輸入就緒/ /輸出完成,輸出完成,控制器向控制器向CPUCPU發(fā)中斷信號(hào)發(fā)中斷信號(hào)。 n 中斷處理程序完成后退出中斷,恢復(fù)現(xiàn)場(chǎng),將控中斷處理程序完成后退出中斷,恢復(fù)
35、現(xiàn)場(chǎng),將控制轉(zhuǎn)回被打斷的執(zhí)行位置。制轉(zhuǎn)回被打斷的執(zhí)行位置。 操作系統(tǒng) 第五章 設(shè)備管理2626CPU CPU 執(zhí)行設(shè)備驅(qū)執(zhí)行設(shè)備驅(qū)動(dòng)程序向控制器動(dòng)程序向控制器發(fā)出發(fā)出啟動(dòng)命令啟動(dòng)命令外設(shè)外設(shè)控控制制器器I/O完成中斷完成中斷中斷處理中斷處理CPU響應(yīng)中斷程序執(zhí)行:程序執(zhí)行:程序請(qǐng)求程序請(qǐng)求I/OI/O繼續(xù)執(zhí)行程序繼續(xù)執(zhí)行程序繼續(xù)執(zhí)行程序繼續(xù)執(zhí)行程序下下一一步步下下一一步步結(jié)束結(jié)束 操作系統(tǒng) 第五章 設(shè)備管理2727優(yōu)點(diǎn):優(yōu)點(diǎn):1 1)程序中斷傳送方式改善了)程序中斷傳送方式改善了CPUCPU的利用率;的利用率;2 2)使)使CPUCPU與外設(shè)并行操作。與外設(shè)并行操作。缺點(diǎn):缺點(diǎn): 采用中斷驅(qū)動(dòng)
36、采用中斷驅(qū)動(dòng)I IO O方式時(shí),每傳送一個(gè)數(shù)據(jù)方式時(shí),每傳送一個(gè)數(shù)據(jù)CPUCPU都要都要做一次中斷處理,每次中斷處理都要保護(hù)做一次中斷處理,每次中斷處理都要保護(hù)CPUCPU現(xiàn)場(chǎng),處理現(xiàn)場(chǎng),處理結(jié)束時(shí)又要恢復(fù)結(jié)束時(shí)又要恢復(fù)CPUCPU現(xiàn)場(chǎng),若管理的現(xiàn)場(chǎng),若管理的I/OI/O設(shè)備較多,設(shè)備較多,CPUCPU會(huì)會(huì)陷入這些陷入這些I/OI/O中斷處理中,無(wú)法進(jìn)行其他工作。中斷處理中,無(wú)法進(jìn)行其他工作。 操作系統(tǒng) 第五章 設(shè)備管理28283. DMA傳送方式(直接內(nèi)存存?。?為了進(jìn)一步減少為了進(jìn)一步減少CPUCPU對(duì)對(duì)I IO O的干預(yù)而引入了直接存儲(chǔ)器的干預(yù)而引入了直接存儲(chǔ)器訪問(wèn)方式。訪問(wèn)方式。設(shè)備設(shè)
37、備主存主存直接傳送直接傳送不用不用CPUCPU干涉干涉 I/O I/O控制器增添了控制器增添了DMADMA控制機(jī)構(gòu),在控制機(jī)構(gòu),在DMADMA控制器控制下,控制器控制下,外設(shè)直接與內(nèi)存交換成批數(shù)據(jù)而不用外設(shè)直接與內(nèi)存交換成批數(shù)據(jù)而不用CPUCPU干預(yù)。干預(yù)。 為了實(shí)現(xiàn)控制器與主機(jī)之間成批數(shù)據(jù)的直接交換,必為了實(shí)現(xiàn)控制器與主機(jī)之間成批數(shù)據(jù)的直接交換,必須在須在DMADMA控制器中設(shè)置四類(lèi)寄存器:控制器中設(shè)置四類(lèi)寄存器:(1)(1)命令狀態(tài)寄存器命令狀態(tài)寄存器CRCR;(2)(2)數(shù)據(jù)緩沖寄存器數(shù)據(jù)緩沖寄存器DR;DR;(3)(3)內(nèi)存地址寄存器內(nèi)存地址寄存器MAR;MAR;(4)(4)數(shù)據(jù)計(jì)數(shù)器
38、數(shù)據(jù)計(jì)數(shù)器DCDC。 操作系統(tǒng) 第五章 設(shè)備管理2929以從磁盤(pán)讀入數(shù)據(jù)為例說(shuō)明以從磁盤(pán)讀入數(shù)據(jù)為例說(shuō)明DMADMA方式的工作流程:方式的工作流程:1 1)當(dāng))當(dāng)CPUCPU要從磁盤(pán)讀入一數(shù)據(jù)塊時(shí),便向磁盤(pán)控制器發(fā)送要從磁盤(pán)讀入一數(shù)據(jù)塊時(shí),便向磁盤(pán)控制器發(fā)送一條讀命令,該命令被送入命令寄存器一條讀命令,該命令被送入命令寄存器CR;CR;2 2)同時(shí)發(fā)送本次要將數(shù)據(jù)讀入內(nèi)存的起始地址到)同時(shí)發(fā)送本次要將數(shù)據(jù)讀入內(nèi)存的起始地址到MARMAR中中; ;3 3)本次要讀的數(shù)據(jù)的字節(jié))本次要讀的數(shù)據(jù)的字節(jié)( (符符) )數(shù)送至數(shù)送至DRDR中中; ;4 4)將磁盤(pán)源地址直接送至)將磁盤(pán)源地址直接送至DM
39、ADMA控制器的控制器的I/OI/O控制邏輯上;控制邏輯上;5 5)然后啟動(dòng))然后啟動(dòng)DMADMA控制器進(jìn)行數(shù)據(jù)傳送??刂破鬟M(jìn)行數(shù)據(jù)傳送。 以后以后,CPU,CPU便可去處理其他任務(wù)。此后的整個(gè)數(shù)據(jù)傳送便便可去處理其他任務(wù)。此后的整個(gè)數(shù)據(jù)傳送便由由DMADMA控制器進(jìn)行控制。控制器進(jìn)行控制。 操作系統(tǒng) 第五章 設(shè)備管理3030 DMA工作過(guò)程工作過(guò)程 地址緩沖區(qū)緩沖區(qū)字節(jié)數(shù)控制CPUDMA控制器控制器磁盤(pán)磁盤(pán)控制器控制器內(nèi)存內(nèi)存磁盤(pán)磁盤(pán)DMADMA控制器數(shù)據(jù)傳輸控制器數(shù)據(jù)傳輸CPU將一個(gè)命令塊 (數(shù)據(jù)源地址、目標(biāo)地址和傳送字節(jié)數(shù))寫(xiě)入內(nèi)存; 再將命令塊地址寫(xiě)入DMA控制器的寄存器中。下下一一步
40、步啟動(dòng)磁盤(pán)控制器,將其數(shù)據(jù)送入內(nèi)部緩沖區(qū)準(zhǔn)備傳輸,CPU處理其它任務(wù)DMA控制器通過(guò)總線向磁盤(pán)控制器發(fā)送讀(盤(pán))請(qǐng)求磁盤(pán)控制器執(zhí)行從內(nèi)部緩沖區(qū)到指定內(nèi)存數(shù)據(jù)傳送。當(dāng)數(shù)據(jù)寫(xiě)入內(nèi)存后,磁盤(pán)控制器通過(guò)總線向DMA控制器發(fā)一個(gè)回答信號(hào)。DMA 將內(nèi)存地址增1,計(jì)數(shù)器減1后值0,則重復(fù),直到計(jì)數(shù)值=0時(shí),DMADMA向向CPUCPU發(fā)發(fā)一個(gè)中斷信號(hào)一個(gè)中斷信號(hào), 此次傳輸完成結(jié)束結(jié)束 操作系統(tǒng) 第五章 設(shè)備管理3131 采用采用DMADMA方式時(shí),不僅允許方式時(shí),不僅允許CPUCPU控制地址線,進(jìn)行控制地址線,進(jìn)行CPUCPU與主存貯器的數(shù)據(jù)交換,而且允許與主存貯器的數(shù)據(jù)交換,而且允許DMADMA控制器
41、接管地址線的控制器接管地址線的控制權(quán),直接控制控制權(quán),直接控制DMADMA控制器與主存的數(shù)據(jù)交換??刂破髋c主存的數(shù)據(jù)交換。 當(dāng)當(dāng)DMADMA硬件控制磁盤(pán)與存貯器之間進(jìn)行信息交換時(shí),每硬件控制磁盤(pán)與存貯器之間進(jìn)行信息交換時(shí),每當(dāng)磁盤(pán)把一個(gè)數(shù)據(jù)讀入控制器的數(shù)據(jù)緩沖區(qū)時(shí),當(dāng)磁盤(pán)把一個(gè)數(shù)據(jù)讀入控制器的數(shù)據(jù)緩沖區(qū)時(shí),DMADMA控制器控制器取代取代CPU,CPU,接管地址總線的控制權(quán),并按照接管地址總線的控制權(quán),并按照DMADMA控制器中的存控制器中的存貯器地址寄存器內(nèi)容貯器地址寄存器內(nèi)容, ,把數(shù)據(jù)送入相應(yīng)的存貯器單元中。然把數(shù)據(jù)送入相應(yīng)的存貯器單元中。然后,后,DMADMA硬件自動(dòng)地把傳送的字節(jié)計(jì)數(shù)
42、器減硬件自動(dòng)地把傳送的字節(jié)計(jì)數(shù)器減1 1,把地址寄存,把地址寄存器加器加1 1,并恢復(fù),并恢復(fù)CPUCPU對(duì)主存貯器的控制權(quán),對(duì)主存貯器的控制權(quán),DMADMA控制器對(duì)每一控制器對(duì)每一個(gè)傳送的數(shù)據(jù)重復(fù)上述過(guò)程,直到傳送字節(jié)計(jì)數(shù)器為個(gè)傳送的數(shù)據(jù)重復(fù)上述過(guò)程,直到傳送字節(jié)計(jì)數(shù)器為“0”0”時(shí),向時(shí),向CPUCPU產(chǎn)生一個(gè)中斷信號(hào)。產(chǎn)生一個(gè)中斷信號(hào)。 操作系統(tǒng) 第五章 設(shè)備管理3232DMA方式的問(wèn)題:1 1)DMADMA方式仍存在一定的局限性,如數(shù)據(jù)傳送的方向、存方式仍存在一定的局限性,如數(shù)據(jù)傳送的方向、存放數(shù)據(jù)的內(nèi)存始址、傳送數(shù)據(jù)的長(zhǎng)度都需要放數(shù)據(jù)的內(nèi)存始址、傳送數(shù)據(jù)的長(zhǎng)度都需要CPUCPU控制;
43、控制;2 2)每臺(tái)設(shè)備都需要配置一個(gè))每臺(tái)設(shè)備都需要配置一個(gè)DMADMA控制器,當(dāng)設(shè)備較多時(shí),控制器,當(dāng)設(shè)備較多時(shí),成本太高。成本太高。DMA方式的特點(diǎn): 數(shù)據(jù)傳輸?shù)幕締挝皇菙?shù)據(jù)塊;所傳送的數(shù)據(jù)是從設(shè)備數(shù)據(jù)傳輸?shù)幕締挝皇菙?shù)據(jù)塊;所傳送的數(shù)據(jù)是從設(shè)備直接進(jìn)入內(nèi)存的直接進(jìn)入內(nèi)存的, ,或者相反,僅在傳送一個(gè)或多個(gè)數(shù)據(jù)塊的或者相反,僅在傳送一個(gè)或多個(gè)數(shù)據(jù)塊的開(kāi)始或結(jié)束時(shí)才需開(kāi)始或結(jié)束時(shí)才需CPUCPU干預(yù),整塊數(shù)據(jù)的傳送是在控制器的干預(yù),整塊數(shù)據(jù)的傳送是在控制器的控制下完成的。控制下完成的。 DMADMA方式較之中斷驅(qū)動(dòng)方式,又是成百倍地減少了方式較之中斷驅(qū)動(dòng)方式,又是成百倍地減少了CPUCPU
44、對(duì)對(duì)I IO O的干預(yù),進(jìn)一步提高了的干預(yù),進(jìn)一步提高了CPUCPU與與I/OI/O設(shè)備的并行程度。設(shè)備的并行程度。 操作系統(tǒng) 第五章 設(shè)備管理3333通道:通道:專(zhuān)門(mén)負(fù)責(zé)專(zhuān)門(mén)負(fù)責(zé)I IO O控制的處理機(jī)。控制的處理機(jī)。它接收它接收CPU的委托,獨(dú)的委托,獨(dú)立地執(zhí)行自己的通道程序,管理和控制輸入輸出操作,實(shí)現(xiàn)立地執(zhí)行自己的通道程序,管理和控制輸入輸出操作,實(shí)現(xiàn)主存貯器與外圍設(shè)備之間的成批數(shù)據(jù)傳送。主存貯器與外圍設(shè)備之間的成批數(shù)據(jù)傳送。 在大中型和高檔小型計(jì)算機(jī)系統(tǒng)中,大多采用通道技術(shù)。在大中型和高檔小型計(jì)算機(jī)系統(tǒng)中,大多采用通道技術(shù)。通道有自己的簡(jiǎn)單指令系統(tǒng),數(shù)據(jù)傳送指令和設(shè)備控制指令通道有自
45、己的簡(jiǎn)單指令系統(tǒng),數(shù)據(jù)傳送指令和設(shè)備控制指令等。通道執(zhí)行的程序稱(chēng)為等。通道執(zhí)行的程序稱(chēng)為通道程序通道程序。 與與DMADMA方式相比,通道有更強(qiáng)的方式相比,通道有更強(qiáng)的I IO O處理能力。處理能力。4. 通道方式 當(dāng)當(dāng)CPUCPU委托的委托的I IO O任務(wù)完成后,通道發(fā)出中斷信號(hào),請(qǐng)任務(wù)完成后,通道發(fā)出中斷信號(hào),請(qǐng)求求CPUCPU處理。使處理。使CPUCPU擺脫了繁瑣的輸入輸出控制工作,提高了擺脫了繁瑣的輸入輸出控制工作,提高了CPUCPU與外圍設(shè)備工作的并行程度。多通道之間可實(shí)現(xiàn)并行操與外圍設(shè)備工作的并行程度。多通道之間可實(shí)現(xiàn)并行操作,各通道控制的外圍設(shè)備也實(shí)現(xiàn)了并行操作,從而提高整作,
46、各通道控制的外圍設(shè)備也實(shí)現(xiàn)了并行操作,從而提高整個(gè)系統(tǒng)的處理效率。個(gè)系統(tǒng)的處理效率。 操作系統(tǒng) 第五章 設(shè)備管理3434 按照信息的交換方式和控制設(shè)備的種類(lèi),通道可以分為三種類(lèi)型:1)字節(jié)多路通道 字節(jié)多路通道以字節(jié)為單位傳輸信息,它可以以字節(jié)字節(jié)多路通道以字節(jié)為單位傳輸信息,它可以以字節(jié)交叉方式執(zhí)行多個(gè)通道程序。當(dāng)一個(gè)通道程序控制某臺(tái)設(shè)交叉方式執(zhí)行多個(gè)通道程序。當(dāng)一個(gè)通道程序控制某臺(tái)設(shè)備傳送一個(gè)字節(jié)后,通道硬件就控制轉(zhuǎn)去執(zhí)行另一個(gè)通道備傳送一個(gè)字節(jié)后,通道硬件就控制轉(zhuǎn)去執(zhí)行另一個(gè)通道程序,控制另一臺(tái)設(shè)備傳送信息。程序,控制另一臺(tái)設(shè)備傳送信息。 字節(jié)多路通道主要用來(lái)連接大量慢速的字符設(shè)備字節(jié)多
47、路通道主要用來(lái)連接大量慢速的字符設(shè)備,如,如紙帶輸入出機(jī),卡片輸入出機(jī)、打印機(jī)、終端等等。紙帶輸入出機(jī),卡片輸入出機(jī)、打印機(jī)、終端等等。在在IBM370IBM370系統(tǒng)中,這樣的通道可連接系統(tǒng)中,這樣的通道可連接256256臺(tái)設(shè)備。臺(tái)設(shè)備。 操作系統(tǒng) 第五章 設(shè)備管理3535 操作系統(tǒng) 第五章 設(shè)備管理36362)選擇通道 選擇通道每次選擇一臺(tái)設(shè)備,執(zhí)行一個(gè)通道程序,傳選擇通道每次選擇一臺(tái)設(shè)備,執(zhí)行一個(gè)通道程序,傳送一批數(shù)據(jù),當(dāng)這臺(tái)設(shè)備數(shù)據(jù)傳輸完成后,再選擇與通道送一批數(shù)據(jù),當(dāng)這臺(tái)設(shè)備數(shù)據(jù)傳輸完成后,再選擇與通道連接的另一臺(tái)設(shè)備,執(zhí)行它的相應(yīng)的通道程序。選擇通道連接的另一臺(tái)設(shè)備,執(zhí)行它的相應(yīng)的
48、通道程序。選擇通道在一段時(shí)間內(nèi)只允許一臺(tái)設(shè)備進(jìn)行數(shù)據(jù)傳輸,傳送速度很在一段時(shí)間內(nèi)只允許一臺(tái)設(shè)備進(jìn)行數(shù)據(jù)傳輸,傳送速度很高,但在設(shè)備傳輸未完成之前,由它獨(dú)占通道。由于選擇高,但在設(shè)備傳輸未完成之前,由它獨(dú)占通道。由于選擇通道能控制設(shè)備高速連續(xù)地傳送一批數(shù)據(jù),因此通道能控制設(shè)備高速連續(xù)地傳送一批數(shù)據(jù),因此常用它連常用它連接高速的塊設(shè)備接高速的塊設(shè)備。如磁盤(pán)、磁鼓等。如磁盤(pán)、磁鼓等。 操作系統(tǒng) 第五章 設(shè)備管理3737 操作系統(tǒng) 第五章 設(shè)備管理3838 3成組多路通道 成組多路通道結(jié)合了選擇通道傳送速度高和字節(jié)多路成組多路通道結(jié)合了選擇通道傳送速度高和字節(jié)多路通道能進(jìn)行并行操作的優(yōu)點(diǎn),采用分時(shí)輪轉(zhuǎn)
49、同時(shí)控制多臺(tái)通道能進(jìn)行并行操作的優(yōu)點(diǎn),采用分時(shí)輪轉(zhuǎn)同時(shí)控制多臺(tái)設(shè)備。它先為一臺(tái)設(shè)備執(zhí)行一條通道指令然后自動(dòng)轉(zhuǎn)接,設(shè)備。它先為一臺(tái)設(shè)備執(zhí)行一條通道指令然后自動(dòng)轉(zhuǎn)接,為另一臺(tái)設(shè)備執(zhí)行一條通道指令。因此為另一臺(tái)設(shè)備執(zhí)行一條通道指令。因此常用它連接中速的常用它連接中速的塊設(shè)備塊設(shè)備。如磁帶等。如磁帶等。 操作系統(tǒng) 第五章 設(shè)備管理3939字節(jié)多路通道字節(jié)多路通道數(shù)組選擇通道數(shù)組選擇通道數(shù)組多路通道數(shù)組多路通道輸入機(jī)處理機(jī)處理機(jī)內(nèi)存內(nèi)存打印機(jī)磁盤(pán)磁帶控制線數(shù)據(jù)線三種類(lèi)型通道與內(nèi)存和設(shè)備之間連接形式圖三種類(lèi)型通道與內(nèi)存和設(shè)備之間連接形式圖 操作系統(tǒng) 第五章 設(shè)備管理4040主存主存CPUCPU 字節(jié)字節(jié)多
50、路通道多路通道 選擇選擇 通道通道 成組成組多路通道多路通道CPUCPU總線總線磁盤(pán)磁盤(pán)磁帶磁帶I/OI/O控制控制I/OI/O控制控制I/OI/O控制控制I/OI/O控制控制I/OI/O控制控制I/OI/O控制控制I/OI/O控制控制I/OI/O控制控制I/OI/O控制控制 采用通道方式的計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)采用通道方式的計(jì)算機(jī)系統(tǒng)結(jié)構(gòu) 操作系統(tǒng) 第五章 設(shè)備管理4141用戶(hù)程序通道通道外設(shè)外設(shè)內(nèi)存數(shù)據(jù)區(qū)中斷處中斷處理程序理程序管理程序通道程序返回通道通道I/OI/O主要過(guò)程示意圖主要過(guò)程示意圖取通道指令入口入口參數(shù)參數(shù)設(shè)備類(lèi)設(shè)備類(lèi)設(shè)備號(hào)設(shè)備號(hào)數(shù)據(jù)長(zhǎng)度數(shù)據(jù)長(zhǎng)度主存地址主存地址結(jié)束指令構(gòu)造通構(gòu)造通道
51、程序道程序I/O完成中斷完成中斷I/O中斷響應(yīng)中斷響應(yīng)I/O中斷返回中斷返回訪管訪管陷入下下一一步步啟動(dòng)啟動(dòng)I/O結(jié)束結(jié)束置通道地址字 通道工作過(guò)程通道工作過(guò)程 操作系統(tǒng) 第五章 設(shè)備管理42421.1.中斷:中斷:一進(jìn)程占有處理機(jī)執(zhí)行期間系統(tǒng)發(fā)生各種事件需要一進(jìn)程占有處理機(jī)執(zhí)行期間系統(tǒng)發(fā)生各種事件需要處理機(jī)來(lái)處理,從而使得處理機(jī)暫停當(dāng)前進(jìn)程的執(zhí)行而轉(zhuǎn)去處理機(jī)來(lái)處理,從而使得處理機(jī)暫停當(dāng)前進(jìn)程的執(zhí)行而轉(zhuǎn)去執(zhí)行相應(yīng)的中斷處理程序,待事件處理完畢后再返回原來(lái)被執(zhí)行相應(yīng)的中斷處理程序,待事件處理完畢后再返回原來(lái)被中斷處繼續(xù)執(zhí)行的過(guò)程。中斷處繼續(xù)執(zhí)行的過(guò)程。5.3 中斷技術(shù)一、中斷的基本概念2.2.中
52、斷源:中斷源:引起中斷發(fā)生的事件。引起中斷發(fā)生的事件。3.3.中斷請(qǐng)求:中斷請(qǐng)求:中斷源向處理機(jī)發(fā)出的請(qǐng)求中斷處理的信號(hào)。中斷源向處理機(jī)發(fā)出的請(qǐng)求中斷處理的信號(hào)。4.4.中斷處理程序中斷處理程序:對(duì)中斷事件進(jìn)行相應(yīng)處理的操作系統(tǒng)程序。:對(duì)中斷事件進(jìn)行相應(yīng)處理的操作系統(tǒng)程序。 操作系統(tǒng) 第五章 設(shè)備管理43431.1.強(qiáng)迫性中斷事件(非運(yùn)行進(jìn)程所期望的)強(qiáng)迫性中斷事件(非運(yùn)行進(jìn)程所期望的)二、中斷事件的類(lèi)型2.2.自愿性中斷事件(運(yùn)行進(jìn)程所要求的)自愿性中斷事件(運(yùn)行進(jìn)程所要求的)硬件故障中斷(電源掉電、讀硬件故障中斷(電源掉電、讀/ /寫(xiě)錯(cuò)等)寫(xiě)錯(cuò)等)程序性中斷(數(shù)據(jù)溢出、訪問(wèn)溢出等)程序性中
53、斷(數(shù)據(jù)溢出、訪問(wèn)溢出等)外部中斷(鍵盤(pán)輸入命令)外部中斷(鍵盤(pán)輸入命令)輸入輸出中斷(外部設(shè)備故障)輸入輸出中斷(外部設(shè)備故障)訪管中斷(執(zhí)行一條訪管中斷(執(zhí)行一條“訪管指令訪管指令”請(qǐng)求系統(tǒng)調(diào)用)。請(qǐng)求系統(tǒng)調(diào)用)。 操作系統(tǒng) 第五章 設(shè)備管理4444 中斷碼存入中斷碼存入PSWPSW寄存器的中斷碼位寄存器的中斷碼位 將舊將舊PSW PSW 將新將新PSWPSW保存到主存保存到主存 送到送到PSWPSW寄存器。寄存器。 CPU CPU收到中斷請(qǐng)求后轉(zhuǎn)相應(yīng)的中斷處理程序的過(guò)程稱(chēng)為收到中斷請(qǐng)求后轉(zhuǎn)相應(yīng)的中斷處理程序的過(guò)程稱(chēng)為中斷響應(yīng)。中斷響應(yīng)。三、中斷響應(yīng) PSW寄存器寄存器1.1.保存被中斷進(jìn)
54、保存被中斷進(jìn)程的現(xiàn)場(chǎng)程的現(xiàn)場(chǎng)2.2.執(zhí)行中斷處理執(zhí)行中斷處理程序程序 四、中斷處理過(guò)程 應(yīng)用應(yīng)用 程序程序 交換交換PSWPSW 執(zhí)行中斷執(zhí)行中斷 處理程序處理程序 PSW PSW寄存器寄存器CPU 1. 1. 發(fā)現(xiàn)和識(shí)別中斷事件發(fā)現(xiàn)和識(shí)別中斷事件: :硬件設(shè)有中斷裝置發(fā)現(xiàn)和識(shí)硬件設(shè)有中斷裝置發(fā)現(xiàn)和識(shí)別中斷事件。別中斷事件。2. 2. 交換交換PSWPSW 操作系統(tǒng) 第五章 設(shè)備管理4545五、中斷處理的原則硬件故障中斷硬件故障中斷輸出事件的性質(zhì)。輸出事件的性質(zhì)。程序性中斷程序性中斷輸出進(jìn)程名,程序斷點(diǎn),事件性質(zhì)。輸出進(jìn)程名,程序斷點(diǎn),事件性質(zhì)。外部中斷外部中斷接收外部請(qǐng)求后轉(zhuǎn)例行子程序。接收
55、外部請(qǐng)求后轉(zhuǎn)例行子程序。 正常情況,釋放等待進(jìn)程。正常情況,釋放等待進(jìn)程。輸入輸出中斷輸入輸出中斷 異常情況,告知出錯(cuò)信息。異常情況,告知出錯(cuò)信息。訪管中斷訪管中斷根據(jù)訪管指令中的功能號(hào)轉(zhuǎn)對(duì)應(yīng)的系統(tǒng)調(diào)用。根據(jù)訪管指令中的功能號(hào)轉(zhuǎn)對(duì)應(yīng)的系統(tǒng)調(diào)用。 操作系統(tǒng) 第五章 設(shè)備管理4646中斷優(yōu)先級(jí)順序:中斷優(yōu)先級(jí)順序: 硬件故障中斷自愿性中斷程序性中斷外部中斷硬件故障中斷自愿性中斷程序性中斷外部中斷輸入輸出中斷輸入輸出中斷。七、中斷屏蔽 中斷請(qǐng)求產(chǎn)生之后,系統(tǒng)用軟件的方法有選擇地封鎖中斷請(qǐng)求產(chǎn)生之后,系統(tǒng)用軟件的方法有選擇地封鎖部分中斷而響應(yīng)其余中斷。部分中斷而響應(yīng)其余中斷。六、中斷優(yōu)先級(jí) 當(dāng)多個(gè)中斷
56、事件同時(shí)發(fā)生時(shí),中斷裝置按預(yù)先定好的順當(dāng)多個(gè)中斷事件同時(shí)發(fā)生時(shí),中斷裝置按預(yù)先定好的順序響應(yīng)同時(shí)出現(xiàn)的中斷事件,這個(gè)預(yù)先定好的順序稱(chēng)為中斷序響應(yīng)同時(shí)出現(xiàn)的中斷事件,這個(gè)預(yù)先定好的順序稱(chēng)為中斷優(yōu)先級(jí)。優(yōu)先級(jí)。 操作系統(tǒng) 第五章 設(shè)備管理47475.4 緩沖技術(shù)一、概述引入緩沖技術(shù)的目的:引入緩沖技術(shù)的目的:1 1)改善)改善CPUCPU與外圍設(shè)備之間速度不匹配的矛盾;與外圍設(shè)備之間速度不匹配的矛盾;2 2)減少中斷減少中斷CPU的次數(shù),放寬的次數(shù),放寬CPU對(duì)中斷的響應(yīng)時(shí)間。對(duì)中斷的響應(yīng)時(shí)間。3 3)減少占用通道的時(shí)間,使通道的瓶頸現(xiàn)象得以緩和,從減少占用通道的時(shí)間,使通道的瓶頸現(xiàn)象得以緩和,從
57、而顯著提高而顯著提高CPU、通道、通道、I/O設(shè)備間的并行操作程度。設(shè)備間的并行操作程度。緩沖技術(shù)是利用緩沖技術(shù)是利用空間空間來(lái)?yè)Q取來(lái)?yè)Q取時(shí)間時(shí)間,加快系統(tǒng),加快系統(tǒng)I/O數(shù)據(jù)處理數(shù)據(jù)處理速度。緩沖區(qū)大小的設(shè)置和設(shè)備的類(lèi)型有關(guān)速度。緩沖區(qū)大小的設(shè)置和設(shè)備的類(lèi)型有關(guān): 塊設(shè)備塊設(shè)備的緩沖區(qū)的大小應(yīng)為塊的大小;的緩沖區(qū)的大小應(yīng)為塊的大小; 字符設(shè)備字符設(shè)備的緩沖區(qū)大小一般以一行大小設(shè)置。的緩沖區(qū)大小一般以一行大小設(shè)置。 操作系統(tǒng) 第五章 設(shè)備管理48481bit/100s8位緩沖中斷通知CPUCPU響應(yīng)取走處理遠(yuǎn)地通信的緩沖處理遠(yuǎn)地通信的緩沖處理1bit/100s1位緩沖中斷通知CPUCPU響應(yīng)取
58、走處理端口(1位緩沖)(8位緩沖)下下一一步步結(jié)束結(jié)束沒(méi)有這沒(méi)有這8 8位寄存位寄存器器, CPU, CPU響應(yīng)中響應(yīng)中斷的時(shí)間是多少斷的時(shí)間是多少? ? 操作系統(tǒng) 第五章 設(shè)備管理4949 當(dāng)一個(gè)進(jìn)程執(zhí)行寫(xiě)操作輸出數(shù)據(jù)時(shí),先向系統(tǒng)申請(qǐng)一個(gè)主存區(qū)當(dāng)一個(gè)進(jìn)程執(zhí)行寫(xiě)操作輸出數(shù)據(jù)時(shí),先向系統(tǒng)申請(qǐng)一個(gè)主存區(qū)域域緩沖區(qū),然后,將數(shù)據(jù)高速送到緩沖區(qū)。若為順序?qū)懻?qǐng)求,緩沖區(qū),然后,將數(shù)據(jù)高速送到緩沖區(qū)。若為順序?qū)懻?qǐng)求,則不斷把數(shù)據(jù)填到緩沖區(qū),直到它被裝滿(mǎn)為止。此后,進(jìn)程可以繼則不斷把數(shù)據(jù)填到緩沖區(qū),直到它被裝滿(mǎn)為止。此后,進(jìn)程可以繼續(xù)它的計(jì)算,同時(shí),系統(tǒng)將緩沖區(qū)內(nèi)容寫(xiě)到續(xù)它的計(jì)算,同時(shí),系統(tǒng)將緩沖區(qū)內(nèi)容寫(xiě)到
59、I IO O設(shè)備上。設(shè)備上。 在輸出數(shù)據(jù)時(shí),只有在系統(tǒng)還來(lái)不及騰空緩沖區(qū)之前,進(jìn)程又在輸出數(shù)據(jù)時(shí),只有在系統(tǒng)還來(lái)不及騰空緩沖區(qū)之前,進(jìn)程又欲輸出信息時(shí),它才需要等待;在輸入數(shù)據(jù)時(shí),僅當(dāng)緩沖區(qū)空而進(jìn)欲輸出信息時(shí),它才需要等待;在輸入數(shù)據(jù)時(shí),僅當(dāng)緩沖區(qū)空而進(jìn)程又要從中讀取數(shù)據(jù)時(shí),它才被迫等待。其它時(shí)間可以進(jìn)一步提高程又要從中讀取數(shù)據(jù)時(shí),它才被迫等待。其它時(shí)間可以進(jìn)一步提高CPUCPU和和I IO O設(shè)備的并行性,以及設(shè)備的并行性,以及I IO O設(shè)備和設(shè)備和I IO O設(shè)備之間的并行性,設(shè)備之間的并行性,從而,提高整個(gè)系統(tǒng)的效率。從而,提高整個(gè)系統(tǒng)的效率。緩沖技術(shù)實(shí)現(xiàn)的基本思想:緩沖技術(shù)實(shí)現(xiàn)的基本
60、思想: 操作系統(tǒng) 第五章 設(shè)備管理5050u 進(jìn)程讀取數(shù)據(jù)塊時(shí),若已在緩沖區(qū)就立刻讀取,不阻塞進(jìn)程讀取數(shù)據(jù)塊時(shí),若已在緩沖區(qū)就立刻讀取,不阻塞進(jìn)程。當(dāng)緩沖區(qū)空時(shí)才阻塞進(jìn)程,啟動(dòng)磁帶或磁盤(pán)數(shù)據(jù)塊進(jìn)程。當(dāng)緩沖區(qū)空時(shí)才阻塞進(jìn)程,啟動(dòng)磁帶或磁盤(pán)數(shù)據(jù)塊讀入,這就是所謂的提前讀。讀入,這就是所謂的提前讀。u 當(dāng)進(jìn)程輸出數(shù)據(jù)塊到磁帶或磁盤(pán)時(shí),只需寫(xiě)入緩沖區(qū),當(dāng)進(jìn)程輸出數(shù)據(jù)塊到磁帶或磁盤(pán)時(shí),只需寫(xiě)入緩沖區(qū),直到緩沖區(qū)滿(mǎn)之后才開(kāi)始啟動(dòng)磁帶或磁盤(pán)。既減少了輸出直到緩沖區(qū)滿(mǎn)之后才開(kāi)始啟動(dòng)磁帶或磁盤(pán)。既減少了輸出操作和中斷次數(shù),又提高了傳輸速度。利用緩沖區(qū)實(shí)現(xiàn)的操作和中斷次數(shù),又提高了傳輸速度。利用緩沖區(qū)實(shí)現(xiàn)的這種功
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 粉色清新插畫(huà)風(fēng)感恩母親節(jié)模板
- 工程法規(guī)考試的科學(xué)備考法與試題與答案
- 2025年中級(jí)會(huì)計(jì)實(shí)務(wù)資料匯編試題及答案
- 工程法規(guī)試題難度層次探討試題及答案
- 濟(jì)南光伏玻璃項(xiàng)目投資分析報(bào)告參考范文
- 2025年二建管理試題
- 中國(guó)釣魚(yú)飼料行業(yè)市場(chǎng)前景預(yù)測(cè)及投資價(jià)值評(píng)估分析報(bào)告
- 消防隊(duì)員測(cè)試題及答案
- 2025年煉油可行性分析報(bào)告
- 聚鹵代烯烴及鹵代烯烴共聚物項(xiàng)目可行性分析報(bào)告
- 大連銀行招聘筆試真題2024
- 輸血管理制度
- 信息必刷卷04(廣東省卷專(zhuān)用)2025年中考數(shù)學(xué)(原卷版)
- 膝關(guān)節(jié)韌帶損傷護(hù)理查房
- 2025科技輔導(dǎo)員培訓(xùn)
- GB/T 21196.2-2025紡織品馬丁代爾法織物耐磨性的測(cè)定第2部分:試樣破損的測(cè)定
- 中國(guó)傳統(tǒng)文化-剪紙藝術(shù)知到課后答案智慧樹(shù)章節(jié)測(cè)試答案2025年春石河子大學(xué)
- 重慶市2025年中考數(shù)學(xué)模擬試題(含答案)
- (一模)2025年廣東省高三高考模擬測(cè)試 (一) 英語(yǔ)試卷(含官方答案及詳解)
- 《深度學(xué)習(xí)項(xiàng)目案例開(kāi)發(fā)》課件-任務(wù)二:使用卷積神經(jīng)網(wǎng)絡(luò)完成貓狗識(shí)別
- 2025年版村規(guī)民約
評(píng)論
0/150
提交評(píng)論