影音先锋男人资源在线观看,精品国产日韩亚洲一区91,中文字幕日韩国产,2018av男人天堂,青青伊人精品,久久久久久久综合日本亚洲,国产日韩欧美一区二区三区在线

設(shè)備管理培訓(xùn)課件(PPT 137頁)

上傳人:仙*** 文檔編號:134113623 上傳時間:2022-08-12 格式:PPTX 頁數(shù):139 大?。?.54MB
收藏 版權(quán)申訴 舉報 下載
設(shè)備管理培訓(xùn)課件(PPT 137頁)_第1頁
第1頁 / 共139頁
設(shè)備管理培訓(xùn)課件(PPT 137頁)_第2頁
第2頁 / 共139頁
設(shè)備管理培訓(xùn)課件(PPT 137頁)_第3頁
第3頁 / 共139頁

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《設(shè)備管理培訓(xùn)課件(PPT 137頁)》由會員分享,可在線閱讀,更多相關(guān)《設(shè)備管理培訓(xùn)課件(PPT 137頁)(139頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、第五章第五章 設(shè)備管理設(shè)備管理nI/O系統(tǒng)是計算機系統(tǒng)的重要組成部分系統(tǒng)是計算機系統(tǒng)的重要組成部分nI/O系統(tǒng)包括用于實現(xiàn)系統(tǒng)包括用于實現(xiàn)信息輸入、輸出和存信息輸入、輸出和存儲儲功能的設(shè)備和相應(yīng)的控制器功能的設(shè)備和相應(yīng)的控制器n設(shè)備管理的設(shè)備管理的基本任務(wù)基本任務(wù)是是完成用戶提出的完成用戶提出的I/O請求,提高請求,提高I/O速率以及改善速率以及改善I/O的利用率的利用率n設(shè)備管理的設(shè)備管理的主要功能主要功能有有緩沖區(qū)管理、設(shè)備緩沖區(qū)管理、設(shè)備分配、設(shè)備處理、虛擬設(shè)備分配、設(shè)備處理、虛擬設(shè)備及及實現(xiàn)設(shè)備獨實現(xiàn)設(shè)備獨立性。立性。第五章設(shè) 備 管 理5.1I/O系統(tǒng)系統(tǒng)5.2I/O控制方式控制方式

2、5.3緩沖管理緩沖管理5.4I/O軟件軟件5.5設(shè)備分配設(shè)備分配5.6磁盤存儲器的管理磁盤存儲器的管理 5.1 I/O系統(tǒng)系統(tǒng)nI/O系統(tǒng)的組成系統(tǒng)的組成n直接用于直接用于I/O和存儲信息的設(shè)備和存儲信息的設(shè)備n相應(yīng)的設(shè)備控制器相應(yīng)的設(shè)備控制器nI/O通道(大、中型計算機)通道(大、中型計算機)n總線總線nI/O系統(tǒng)的結(jié)構(gòu)系統(tǒng)的結(jié)構(gòu)n微型機微型機I/O系統(tǒng)系統(tǒng)n主機主機I/O系統(tǒng)系統(tǒng)5.1 I/O系統(tǒng)系統(tǒng)nI/O系統(tǒng)的結(jié)構(gòu)系統(tǒng)的結(jié)構(gòu)n微型機微型機I/O系統(tǒng)系統(tǒng)n微型機比較簡單,多采用總線微型機比較簡單,多采用總線I/O系統(tǒng)結(jié)構(gòu)。系統(tǒng)結(jié)構(gòu)。CPU和內(nèi)存是直接連接到總線上的。和內(nèi)存是直接連接到總線

3、上的。I/O設(shè)備是通過設(shè)備設(shè)備是通過設(shè)備控制器連接到總線上,控制器連接到總線上,CPU并不直接與并不直接與I/O設(shè)備進(jìn)設(shè)備進(jìn)行通信,而是與設(shè)備控制器進(jìn)行通信,設(shè)備控制器行通信,而是與設(shè)備控制器進(jìn)行通信,設(shè)備控制器是處理機和設(shè)備之間的接口。是處理機和設(shè)備之間的接口。n主機主機I/O系統(tǒng)系統(tǒng)n在在I/O系統(tǒng)中采用總線結(jié)構(gòu),而是增加一級系統(tǒng)中采用總線結(jié)構(gòu),而是增加一級I/O通道。通道。其中,其中,I/O系統(tǒng)共分為系統(tǒng)共分為4級:最低級為級:最低級為I/O設(shè)備,次低設(shè)備,次低級為設(shè)備控制器,次高級為級為設(shè)備控制器,次高級為I/O通道,最高級是計算通道,最高級是計算機。因而也稱這樣的機。因而也稱這樣的I

4、/O系統(tǒng)結(jié)構(gòu)為四級結(jié)構(gòu)。系統(tǒng)結(jié)構(gòu)為四級結(jié)構(gòu)。5.1 I/O系統(tǒng)系統(tǒng)n5.1.1 I/O設(shè)備設(shè)備n5.1.2 設(shè)備控制器設(shè)備控制器n5.1.3 I/O通道通道n5.1.4 總線系統(tǒng)總線系統(tǒng)5.1.1 I/O設(shè)備設(shè)備nI/O設(shè)備的類型設(shè)備的類型 n按從屬關(guān)系分類按從屬關(guān)系分類n系統(tǒng)設(shè)備系統(tǒng)設(shè)備n用戶設(shè)備用戶設(shè)備5.1.1 I/O設(shè)備設(shè)備nI/O設(shè)備的類型設(shè)備的類型 n按傳輸速率分類按傳輸速率分類n低速設(shè)備低速設(shè)備 n每秒幾個字節(jié)至數(shù)百字節(jié)每秒幾個字節(jié)至數(shù)百字節(jié)n鍵盤、鼠標(biāo)、語音輸入輸出設(shè)備等鍵盤、鼠標(biāo)、語音輸入輸出設(shè)備等n中速設(shè)備中速設(shè)備n每秒數(shù)千至數(shù)萬字節(jié)每秒數(shù)千至數(shù)萬字節(jié)n行式打印機、激光打印

5、機等行式打印機、激光打印機等n高速設(shè)備高速設(shè)備n每秒數(shù)百每秒數(shù)百K至數(shù)十至數(shù)十M字節(jié)字節(jié)n磁盤機、磁帶機、光盤機等磁盤機、磁帶機、光盤機等5.1.1 I/O設(shè)備設(shè)備nI/O設(shè)備的類型設(shè)備的類型n按信息交換的單位分類按信息交換的單位分類n塊設(shè)備塊設(shè)備(Block Device)n信息的存取總是以數(shù)據(jù)信息的存取總是以數(shù)據(jù)塊塊為單位為單位n可尋址可尋址n如,磁盤,盤塊的大小為如,磁盤,盤塊的大小為512 B4 KBn字符設(shè)備字符設(shè)備(Character Device)n基本單位是基本單位是字符字符n不可尋址不可尋址n如,交互式終端、打印機如,交互式終端、打印機5.1.1 I/O設(shè)備設(shè)備nI/O設(shè)備的

6、類型設(shè)備的類型n按資源分配角度分類(共享屬性)按資源分配角度分類(共享屬性)n獨占設(shè)備獨占設(shè)備n多數(shù)低速設(shè)備屬獨占設(shè)備,如打印機多數(shù)低速設(shè)備屬獨占設(shè)備,如打印機n共享設(shè)備共享設(shè)備 n可供多個進(jìn)程同時訪問,如磁盤可供多個進(jìn)程同時訪問,如磁盤n虛擬設(shè)備虛擬設(shè)備n通過虛擬技術(shù)將一臺獨占設(shè)備變換為若通過虛擬技術(shù)將一臺獨占設(shè)備變換為若干個邏輯設(shè)備,供若干個進(jìn)程同時使用干個邏輯設(shè)備,供若干個進(jìn)程同時使用5.1.1 I/O設(shè)備設(shè)備nI/O設(shè)備的類型設(shè)備的類型n按操作特性按操作特性n存儲設(shè)備存儲設(shè)備n存儲信息,如磁盤等存儲信息,如磁盤等nI/O設(shè)備設(shè)備n用來向用來向CPU傳送信息或輸出加工處傳送信息或輸出加工

7、處理后的信息,如顯示器、打印機理后的信息,如顯示器、打印機5.1.1 I/O設(shè)備設(shè)備n設(shè)備與控制器之間的接口設(shè)備與控制器之間的接口由外界輸入的信號由外界輸入的信號經(jīng)轉(zhuǎn)換器轉(zhuǎn)換后送經(jīng)轉(zhuǎn)換器轉(zhuǎn)換后送入緩沖器,數(shù)據(jù)達(dá)入緩沖器,數(shù)據(jù)達(dá)到一定的字符數(shù)后,到一定的字符數(shù)后,再從緩沖器通過一再從緩沖器通過一組數(shù)據(jù)信號線送到組數(shù)據(jù)信號線送到控制器控制器用于在設(shè)備和設(shè)備控制用于在設(shè)備和設(shè)備控制器之間傳送數(shù)據(jù)。器之間傳送數(shù)據(jù)。從設(shè)從設(shè)備控制器經(jīng)過數(shù)據(jù)信號備控制器經(jīng)過數(shù)據(jù)信號線傳送來的數(shù)據(jù)先暫存線傳送來的數(shù)據(jù)先暫存在緩沖器,經(jīng)轉(zhuǎn)換器經(jīng)在緩沖器,經(jīng)轉(zhuǎn)換器經(jīng)過適當(dāng)轉(zhuǎn)換后,逐個字過適當(dāng)轉(zhuǎn)換后,逐個字符輸出符輸出作為由設(shè)備

8、控制器作為由設(shè)備控制器向向I/OI/O設(shè)備發(fā)送控制設(shè)備發(fā)送控制信號時的通路。信號時的通路。規(guī)規(guī)定設(shè)備要執(zhí)行的操定設(shè)備要執(zhí)行的操作作用于傳送指示用于傳送指示設(shè)備當(dāng)前狀態(tài)設(shè)備當(dāng)前狀態(tài)的信號:的信號:正在正在讀、寫或完成讀、寫或完成接接口口5.1.2 設(shè)備控制器設(shè)備控制器nCPU與與I/O設(shè)備之間的接口設(shè)備之間的接口n接收接收CPU發(fā)來的命令,發(fā)來的命令,控制控制一個或多個一個或多個I/O設(shè)設(shè)備工作,以備工作,以實現(xiàn)實現(xiàn)I/O設(shè)備和計算機之間的數(shù)據(jù)設(shè)備和計算機之間的數(shù)據(jù)交換,交換,減輕減輕CPU的負(fù)擔(dān)的負(fù)擔(dān)n一個可編址的設(shè)備一個可編址的設(shè)備n分類分類n控制字符設(shè)備控制字符設(shè)備n控制塊設(shè)備控制塊設(shè)備5

9、.1.2 設(shè)備控制器設(shè)備控制器n基本功能基本功能n接收和識別命令接收和識別命令n控制寄存器控制寄存器存放接受的命令和參數(shù),并對其譯碼存放接受的命令和參數(shù),并對其譯碼 n數(shù)據(jù)交換數(shù)據(jù)交換 n實現(xiàn)實現(xiàn)CPU與控制器、控制器與設(shè)備之間的數(shù)據(jù)交換,與控制器、控制器與設(shè)備之間的數(shù)據(jù)交換,需設(shè)置需設(shè)置數(shù)據(jù)寄存器數(shù)據(jù)寄存器n標(biāo)識和報告設(shè)備的狀態(tài):需設(shè)置標(biāo)識和報告設(shè)備的狀態(tài):需設(shè)置狀態(tài)寄存器狀態(tài)寄存器n地址識別地址識別 n識別所控制的設(shè)備,需設(shè)置識別所控制的設(shè)備,需設(shè)置地址譯碼器地址譯碼器n數(shù)據(jù)緩沖數(shù)據(jù)緩沖:解決:解決I/O設(shè)備速率低的問題設(shè)備速率低的問題n差錯控制差錯控制:對:對I/O設(shè)備發(fā)送的數(shù)據(jù)進(jìn)行差錯

10、檢測設(shè)備發(fā)送的數(shù)據(jù)進(jìn)行差錯檢測5.1.2 設(shè)備控制器設(shè)備控制器n設(shè)備控制器的組成設(shè)備控制器的組成設(shè)備(輸入)或設(shè)備(輸入)或CPU(輸出)送來(輸出)送來的數(shù)據(jù)的數(shù)據(jù)CPU送來的控制信送來的控制信息或設(shè)備的狀態(tài)信息或設(shè)備的狀態(tài)信息息CPU發(fā)送啟動命令,發(fā)送啟動命令,同時,同時,CPU發(fā)送地發(fā)送地址,對地址譯碼,址,對地址譯碼,選擇相應(yīng)設(shè)備控制選擇相應(yīng)設(shè)備控制5.1.3I/O通道通道nI/O通道通道(I/O Channel)設(shè)備的引入設(shè)備的引入n一種特殊處理機,專門負(fù)責(zé)輸入一種特殊處理機,專門負(fù)責(zé)輸入/輸出工作輸出工作n有自己簡單的指令系統(tǒng),只有數(shù)據(jù)傳送指令和設(shè)備控有自己簡單的指令系統(tǒng),只有數(shù)據(jù)

11、傳送指令和設(shè)備控制指令制指令n主要目的是為了建立獨立的主要目的是為了建立獨立的I/O操作,使有關(guān)對操作,使有關(guān)對I/O操操作的組織、管理及其結(jié)束處理也獨立于作的組織、管理及其結(jié)束處理也獨立于CPUnCPU向向I/O通道發(fā)送通道發(fā)送I/O命令,由通道執(zhí)行程序命令,由通道執(zhí)行程序n通道與一般處理機的區(qū)別通道與一般處理機的區(qū)別n指令單一指令單一n沒有獨立的內(nèi)存沒有獨立的內(nèi)存 5.1.3I/O通道通道n通道類型通道類型n字節(jié)多路通道(字節(jié)多路通道(Byte Multiplexor Channel)n以字節(jié)交換方式工作,分時并行操作以字節(jié)交換方式工作,分時并行操作n主要用來連接多個中低速設(shè)備主要用來連接

12、多個中低速設(shè)備5.1.3I/O通道通道n通道類型通道類型n數(shù)組選擇通道(數(shù)組選擇通道(Block Selector Channel)n以成組方式工作,高速傳輸數(shù)據(jù)以成組方式工作,高速傳輸數(shù)據(jù)n可以連接多臺高速設(shè)備可以連接多臺高速設(shè)備n僅含有一個分配型子通道,在一段時間內(nèi)只僅含有一個分配型子通道,在一段時間內(nèi)只能執(zhí)行一個通道程序,控制一臺能執(zhí)行一個通道程序,控制一臺I/O設(shè)備設(shè)備n由設(shè)備獨占使用,利用率較低由設(shè)備獨占使用,利用率較低5.1.3I/O通道通道n通道類型通道類型n數(shù)組多路通道(數(shù)組多路通道(Block Multiplexor Channel)n將將數(shù)組選擇通道數(shù)組選擇通道傳輸速率高和

13、傳輸速率高和字節(jié)多路通道字節(jié)多路通道分時并行操作的優(yōu)點相結(jié)合而形成的一種新分時并行操作的優(yōu)點相結(jié)合而形成的一種新通道。通道。n它含有多個非分配型子通道,它含有多個非分配型子通道,因而這種通因而這種通道既具有很高的數(shù)據(jù)傳輸速率,又能獲得令道既具有很高的數(shù)據(jù)傳輸速率,又能獲得令人滿意的通道利用率。人滿意的通道利用率。5.1.3I/O通道通道n“瓶頸瓶頸”問題問題n價格昂貴,所設(shè)置的通道數(shù)量較少;價格昂貴,所設(shè)置的通道數(shù)量較少;n往往使它成了往往使它成了I/O的瓶頸,進(jìn)而造成整個系統(tǒng)的瓶頸,進(jìn)而造成整個系統(tǒng)吞吐量的下降。吞吐量的下降。5.1.3I/O通道通道n“瓶頸瓶頸”問題問題n解決方法解決方法n

14、增加設(shè)備到主機間的通路而不增加通道。即,把一增加設(shè)備到主機間的通路而不增加通道。即,把一個設(shè)備連接到多個控制器上,而一個控制器又連接個設(shè)備連接到多個控制器上,而一個控制器又連接到多個通道上。到多個通道上。5.1.4總線系統(tǒng)總線系統(tǒng)n在計算機系統(tǒng)中的各部件,如在計算機系統(tǒng)中的各部件,如CPU、存儲、存儲器以及各種器以及各種I/O設(shè)備之間都是通過總線來聯(lián)設(shè)備之間都是通過總線來聯(lián)系。系。一個典型的一個典型的PC總線結(jié)構(gòu)總線結(jié)構(gòu)5.1.4總線系統(tǒng)總線系統(tǒng)nISA和和EISA總線總線nISA(Industry Standard Architecture)總線總線n1984年為年為80286型微機設(shè)計型微

15、機設(shè)計n帶寬為帶寬為8位位n最高傳輸速率為最高傳輸速率為2 Mb/snEISA(Extended ISA)總線總線n帶寬為帶寬為32位位n傳輸速率傳輸速率32 Mb/s5.1.4總線系統(tǒng)總線系統(tǒng)n局部總線局部總線(Local Bus)n指將多媒體卡、高速指將多媒體卡、高速LAN網(wǎng)卡、高性能圖形板網(wǎng)卡、高性能圖形板等從等從ISA總線上卸下來,再通過局部總線控制總線上卸下來,再通過局部總線控制器直接接到器直接接到CPU總線上??偩€上。nVESA(Video Electronic Standard Association)總線總線 n帶寬帶寬32位位n最高傳輸速率為最高傳輸速率為132 Mb/sn

16、PCI(Peripheral Component Interconnect)總線總線n在在CPU和外設(shè)間插入一復(fù)雜的管理層,用于協(xié)調(diào)數(shù)和外設(shè)間插入一復(fù)雜的管理層,用于協(xié)調(diào)數(shù)據(jù)傳輸和提供一致的接口據(jù)傳輸和提供一致的接口5.2I/O控制方式控制方式n5.2.1 程序程序I/O方式方式n5.2.2 中斷驅(qū)動中斷驅(qū)動I/O控制方式控制方式 n5.2.3 直接存儲器訪問直接存儲器訪問DMA I/O控制方式控制方式n5.2.4 I/O通道控制方式通道控制方式5.2.1 程序程序I/O(Programmed I/O)方式方式nCPU通過通過I/O測試指令測試設(shè)備接口中的狀測試指令測試設(shè)備接口中的狀態(tài)位:態(tài)位

17、:n“忙忙”,則一直測試;,則一直測試;n“閑閑”,進(jìn)行數(shù)據(jù)傳送,每次傳送一個字符,進(jìn)行數(shù)據(jù)傳送,每次傳送一個字符n又稱為忙又稱為忙等方式。等方式。n存在的問題存在的問題nCPU的絕大部分時間都處于等待的絕大部分時間都處于等待I/O設(shè)備完成設(shè)備完成數(shù)據(jù)數(shù)據(jù)I/O的循環(huán)測試中的循環(huán)測試中n外設(shè)不能合理使用,也無法支持多道程序外設(shè)不能合理使用,也無法支持多道程序5.2.1 程序程序I/O方式方式n主機不斷地讀取主機不斷地讀取位,直到該位被清除位,直到該位被清除(這個過程稱這個過程稱為輪詢,亦稱忙等待為輪詢,亦稱忙等待-busy waiting)n主機設(shè)置命令寄存器中的主機設(shè)置命令寄存器中的位并向數(shù)

18、據(jù)輸出寄存器中位并向數(shù)據(jù)輸出寄存器中寫入一個字節(jié)。寫入一個字節(jié)。n主機設(shè)置命令主機設(shè)置命令位位n當(dāng)控制器注意到命令當(dāng)控制器注意到命令位已被設(shè)置,則設(shè)置位已被設(shè)置,則設(shè)置位。位。n控制器讀取命令寄存器,并看到寫入命令。它從數(shù)據(jù)控制器讀取命令寄存器,并看到寫入命令。它從數(shù)據(jù)輸出寄存器中讀取一個字節(jié),并向設(shè)備執(zhí)行輸出寄存器中讀取一個字節(jié),并向設(shè)備執(zhí)行I/O操作。操作。n控制器清除命令控制器清除命令位,清除狀態(tài)寄存器的位,清除狀態(tài)寄存器的位以位以表示設(shè)備表示設(shè)備I/O成功,清除成功,清除位以表示完成。位以表示完成。5.2.1 程序程序I/O方式方式5.2.2 中斷驅(qū)動中斷驅(qū)動I/O控制方式控制方式n中

19、斷驅(qū)動(中斷驅(qū)動(Interrupt Driven)方式,即當(dāng)方式,即當(dāng)某進(jìn)程要啟動某個某進(jìn)程要啟動某個I/O設(shè)備工作時,便由設(shè)備工作時,便由CPU向相應(yīng)的設(shè)備控制器發(fā)出一條向相應(yīng)的設(shè)備控制器發(fā)出一條I/O命令,命令,然后立即返回繼續(xù)執(zhí)行原來的任務(wù)。然后立即返回繼續(xù)執(zhí)行原來的任務(wù)。n設(shè)備控制器按命令要求去控制指定的設(shè)備控制器按命令要求去控制指定的I/O設(shè)設(shè)備,完成后,通過中斷向備,完成后,通過中斷向CPU發(fā)送一中斷發(fā)送一中斷信號。信號。n在在I/O設(shè)備輸入數(shù)據(jù)的過程中,無須設(shè)備輸入數(shù)據(jù)的過程中,無須CPU干干預(yù),每次傳送一個字符。預(yù),每次傳送一個字符。5.2.2 中斷驅(qū)動中斷驅(qū)動I/O控制方式

20、控制方式n兩種中斷請求兩種中斷請求n非屏蔽中斷:用來處理如不可恢復(fù)內(nèi)存錯誤等非屏蔽中斷:用來處理如不可恢復(fù)內(nèi)存錯誤等事件;事件;n可屏蔽中斷:由可屏蔽中斷:由CPU在執(zhí)行關(guān)鍵的不可中斷的在執(zhí)行關(guān)鍵的不可中斷的指令序列前加以屏蔽。指令序列前加以屏蔽。n中斷的用途中斷的用途n中斷機制用于處理各種異常,如被零除,訪問中斷機制用于處理各種異常,如被零除,訪問一個受保護(hù)的或不存在的內(nèi)存地址;一個受保護(hù)的或不存在的內(nèi)存地址;n系統(tǒng)調(diào)用的實現(xiàn)需要用到中斷(軟中斷);系統(tǒng)調(diào)用的實現(xiàn)需要用到中斷(軟中斷);n中斷也可以用來管理內(nèi)核的控制流。中斷也可以用來管理內(nèi)核的控制流。5.2.2 中斷驅(qū)動中斷驅(qū)動I/O控制方

21、式控制方式5.2.3 直接存儲器訪問直接存儲器訪問(DMA)I/O控制方式控制方式n特點特點n數(shù)據(jù)傳輸?shù)幕締挝皇菙?shù)據(jù)傳輸?shù)幕締挝皇菙?shù)據(jù)塊數(shù)據(jù)塊n所傳送的數(shù)據(jù)是所傳送的數(shù)據(jù)是從設(shè)備直接送入內(nèi)存從設(shè)備直接送入內(nèi)存的,或者的,或者相反相反n僅在傳送一個或多個數(shù)據(jù)塊的僅在傳送一個或多個數(shù)據(jù)塊的開始和結(jié)束開始和結(jié)束時才時才需需CPU干預(yù)干預(yù)n除了具有中斷機構(gòu)外,還增加了除了具有中斷機構(gòu)外,還增加了DMA控制器控制器n數(shù)據(jù)傳送方向、存放數(shù)據(jù)的內(nèi)存地址及傳送數(shù)數(shù)據(jù)傳送方向、存放數(shù)據(jù)的內(nèi)存地址及傳送數(shù)據(jù)長度需據(jù)長度需CPU控制控制n每個設(shè)備需配置一個每個設(shè)備需配置一個DMA控制器控制器5.2.3 直接存儲

22、器訪問直接存儲器訪問(DMA)I/O控制方式控制方式nDMA控制器的組成控制器的組成n主機與主機與DMA控制器的接口控制器的接口nDMA控制器與塊設(shè)備的接口控制器與塊設(shè)備的接口nI/O控制邏輯控制邏輯5.2.3 直接存儲器訪問直接存儲器訪問(DMA)I/O控制方式控制方式nDMA控制器中四類寄存器控制器中四類寄存器n命令命令/狀態(tài)寄存器狀態(tài)寄存器CRn接收接收CPU發(fā)送的發(fā)送的I/O命令或有關(guān)控制信息,或設(shè)備命令或有關(guān)控制信息,或設(shè)備狀態(tài)狀態(tài)n內(nèi)存地址寄存器內(nèi)存地址寄存器MARn輸入時:數(shù)據(jù)存放到內(nèi)存的輸入時:數(shù)據(jù)存放到內(nèi)存的起始目標(biāo)地址起始目標(biāo)地址n輸出時:存放數(shù)據(jù)由內(nèi)存到設(shè)備的輸出時:存放

23、數(shù)據(jù)由內(nèi)存到設(shè)備的內(nèi)存源地址內(nèi)存源地址n數(shù)據(jù)寄存器數(shù)據(jù)寄存器DRn暫存從設(shè)備到內(nèi)存暫存從設(shè)備到內(nèi)存/內(nèi)存到設(shè)備的數(shù)據(jù)內(nèi)存到設(shè)備的數(shù)據(jù)n數(shù)據(jù)計數(shù)器數(shù)據(jù)計數(shù)器DCn存放本次存放本次CPU要讀或?qū)懙淖郑ü?jié))數(shù)要讀或?qū)懙淖郑ü?jié))數(shù)5.2.3 直接存儲器訪問直接存儲器訪問(DMA)I/O控制方式控制方式nDMA工作過程工作過程DMA傳輸?shù)牧鶄€步驟傳輸?shù)牧鶄€步驟5.2.3 直接存儲器訪問直接存儲器訪問(DMA)I/O控制方式控制方式nDMA與中斷方式的主要區(qū)別與中斷方式的主要區(qū)別n中斷方式在每個數(shù)據(jù)傳送完后中斷中斷方式在每個數(shù)據(jù)傳送完后中斷CPU,DMA方式則是在所要求傳送的一批數(shù)據(jù)全部方式則是在所要求傳

24、送的一批數(shù)據(jù)全部傳送完時中斷傳送完時中斷CPU。n中斷方式的數(shù)據(jù)傳送時在中斷處理時由中斷方式的數(shù)據(jù)傳送時在中斷處理時由CPU控控制完成的,而制完成的,而DMA則是在則是在DMA控制下完成的控制下完成的nDMA方式的方式的局限性局限性:傳送方向、始址、長度:傳送方向、始址、長度等由等由CPU控制,一個設(shè)備一個控制,一個設(shè)備一個DMA,成本高。,成本高。5.2.4I/O通道控制方式通道控制方式nI/O通道控制方式的引入通道控制方式的引入 n與與DMA類似,以內(nèi)存為中心的數(shù)據(jù)交換方式類似,以內(nèi)存為中心的數(shù)據(jù)交換方式n進(jìn)一步減少了進(jìn)一步減少了CPU的干預(yù),把對的干預(yù),把對一個一個數(shù)據(jù)塊的數(shù)據(jù)塊的讀讀(

25、或?qū)懟驅(qū)?為單位的干預(yù),減少為對為單位的干預(yù),減少為對一組一組數(shù)據(jù)塊數(shù)據(jù)塊的讀的讀(或?qū)懟驅(qū)?及有關(guān)的控制和管理為單位的干預(yù)及有關(guān)的控制和管理為單位的干預(yù)n一個通道控制多臺設(shè)備一個通道控制多臺設(shè)備nCPU僅在僅在I/O操作的開始和結(jié)束時花費少量時操作的開始和結(jié)束時花費少量時間處理與間處理與I/O有關(guān)的工作有關(guān)的工作n可實現(xiàn)可實現(xiàn)CPU、通道通道和和I/O設(shè)備設(shè)備三者的三者的并行操作并行操作,從而更有效地提高整個系統(tǒng)的資源利用率從而更有效地提高整個系統(tǒng)的資源利用率5.2.4I/O通道控制方式通道控制方式n通道程序通道程序n操作碼操作碼n規(guī)定指令所執(zhí)行的操作,如讀、寫、控制等規(guī)定指令所執(zhí)行的操作,

26、如讀、寫、控制等n內(nèi)存地址內(nèi)存地址n標(biāo)明字符送入內(nèi)存或從內(nèi)存取出的內(nèi)存首址標(biāo)明字符送入內(nèi)存或從內(nèi)存取出的內(nèi)存首址n計數(shù)計數(shù)n本條指令所要讀本條指令所要讀/寫的字節(jié)數(shù)寫的字節(jié)數(shù)n通道程序結(jié)束位通道程序結(jié)束位n表示通道程序是否結(jié)束,表示通道程序是否結(jié)束,P=1表示結(jié)束表示結(jié)束n記錄結(jié)束標(biāo)志記錄結(jié)束標(biāo)志nR=0,表示本指令與下一指令處理同一個記錄,表示本指令與下一指令處理同一個記錄nR=1,表示處理某記錄的最后一條指令,表示處理某記錄的最后一條指令5.2.4I/O通道控制方式通道控制方式操作碼操作碼 PR計數(shù)計數(shù)內(nèi)存地址內(nèi)存地址WRITE 0080813WRITE001401034WRITE0160

27、5830WRITE013002000WRITE002501850WRITE11250720CPU與通道之間的通信與通道之間的通信5.3 緩沖管理緩沖管理n5.3.1 緩沖的引入緩沖的引入n5.3.2 單緩沖和雙緩沖單緩沖和雙緩沖n5.3.3 循環(huán)緩沖循環(huán)緩沖n5.3.4 緩沖池(緩沖池(Buffer Pool)5.3.1 緩沖的引入緩沖的引入n緩和緩和CPU與與I/O設(shè)備間速度不匹配的矛盾。設(shè)備間速度不匹配的矛盾。n數(shù)據(jù)到達(dá)速率與其離去速率不同數(shù)據(jù)到達(dá)速率與其離去速率不同n減少對減少對CPU的中斷頻率,放寬對的中斷頻率,放寬對CPU中斷中斷響應(yīng)時間的限制。響應(yīng)時間的限制。1位緩沖位緩沖9.6

28、Kb/s(a)中斷中斷CPU的頻的頻率為率為9.6Kb/s,每每100 s中斷一中斷一次次CPUCPU必須在必須在100 s內(nèi)響應(yīng),內(nèi)響應(yīng),否則數(shù)據(jù)會被否則數(shù)據(jù)會被沖掉沖掉8位緩沖寄存器位緩沖寄存器送內(nèi)存送內(nèi)存9.6 Kb/s(b)中斷中斷CPU的頻率降的頻率降低為低為9.6Kb/8 5.3.1 緩沖的引入緩沖的引入n提高提高CPU和和I/O設(shè)備之間的并行性設(shè)備之間的并行性n提高系統(tǒng)的吞吐量和設(shè)備的利用率提高系統(tǒng)的吞吐量和設(shè)備的利用率8位緩沖寄存器位緩沖寄存器9.6 Kb/s送內(nèi)存送內(nèi)存(c)每每800 s中斷一中斷一次次CPU5.3.2單緩沖和雙緩沖單緩沖和雙緩沖n單緩沖單緩沖(Single

29、 Buffer)輸入設(shè)備,緩輸入設(shè)備,緩沖區(qū)均空閑沖區(qū)均空閑CTCT時時,輸入先結(jié)束;反輸入先結(jié)束;反之,之,計算先結(jié)束。因此,計算先結(jié)束。因此,每塊數(shù)據(jù)的處理時間為:每塊數(shù)據(jù)的處理時間為:maxC,T+MmaxC,T+M5.3.2單緩沖和雙緩沖單緩沖和雙緩沖n雙緩沖雙緩沖(Double Buffer)輸入設(shè)備,緩輸入設(shè)備,緩沖區(qū)沖區(qū)2均空閑均空閑CTCT時時,輸入先結(jié)束;反輸入先結(jié)束;反之,計算先結(jié)束。因此,之,計算先結(jié)束。因此,每塊數(shù)據(jù)的處理時間約每塊數(shù)據(jù)的處理時間約為:為:maxC,TmaxC,T例,兩臺機器間通信例,兩臺機器間通信。只能實現(xiàn)單向只能實現(xiàn)單向的數(shù)據(jù)傳輸?shù)臄?shù)據(jù)傳輸5.3.3

30、 循環(huán)緩沖循環(huán)緩沖n循環(huán)緩沖的引入循環(huán)緩沖的引入n當(dāng)輸入與輸出速度基本匹配時,雙緩沖能獲得較好效當(dāng)輸入與輸出速度基本匹配時,雙緩沖能獲得較好效果;當(dāng)速度相差較大時,可引入多個(大小相等)緩果;當(dāng)速度相差較大時,可引入多個(大小相等)緩沖,組織成循環(huán)緩沖的形式?jīng)_,組織成循環(huán)緩沖的形式n循環(huán)緩沖的組成循環(huán)緩沖的組成n多個緩沖區(qū)多個緩沖區(qū)n用于裝輸入數(shù)據(jù)的用于裝輸入數(shù)據(jù)的空緩沖區(qū)空緩沖區(qū)Rn已裝滿數(shù)據(jù)的已裝滿數(shù)據(jù)的滿緩沖區(qū)滿緩沖區(qū)Gn計算進(jìn)程計算進(jìn)程正在使用正在使用的現(xiàn)行工作緩沖區(qū)的現(xiàn)行工作緩沖區(qū)Cn多個指針多個指針n指示計算進(jìn)程下一指示計算進(jìn)程下一可用緩沖區(qū)可用緩沖區(qū)Nextgn指示輸入進(jìn)程下一指

31、示輸入進(jìn)程下一可用空緩沖區(qū)可用空緩沖區(qū)Nextin指示計算進(jìn)程指示計算進(jìn)程正在使用正在使用的緩沖區(qū)的緩沖區(qū)Current5.3.3 循環(huán)緩沖循環(huán)緩沖類型:類型:R:空緩沖區(qū);空緩沖區(qū);G:滿緩沖區(qū);:滿緩沖區(qū);C:當(dāng)前緩沖區(qū):當(dāng)前緩沖區(qū)5.3.3 循環(huán)緩沖循環(huán)緩沖n循環(huán)緩沖區(qū)的使用循環(huán)緩沖區(qū)的使用nGetbuf過程過程n為計算進(jìn)程和輸入進(jìn)程提供緩沖區(qū),并移動指針為計算進(jìn)程和輸入進(jìn)程提供緩沖區(qū),并移動指針nReleasebuf過程過程n當(dāng)計算進(jìn)程或輸入使用完緩沖區(qū)后,調(diào)用過程將緩當(dāng)計算進(jìn)程或輸入使用完緩沖區(qū)后,調(diào)用過程將緩沖區(qū)釋放沖區(qū)釋放n進(jìn)程同步進(jìn)程同步輸入、計算進(jìn)程并行輸入、計算進(jìn)程并行nN

32、exti指針追趕上指針追趕上Nextg指針指針n輸入進(jìn)程速度大于計算進(jìn)程,全部空緩沖區(qū)已滿,輸入進(jìn)程速度大于計算進(jìn)程,全部空緩沖區(qū)已滿,無可用緩沖區(qū),輸入進(jìn)程阻塞(無可用緩沖區(qū),輸入進(jìn)程阻塞(系統(tǒng)受計算限制系統(tǒng)受計算限制)nNextg指針追趕上指針追趕上Nexti指針指針n計算進(jìn)程速度大于輸入進(jìn)程,全部緩沖區(qū)空,無可計算進(jìn)程速度大于輸入進(jìn)程,全部緩沖區(qū)空,無可用數(shù)據(jù),計算進(jìn)程阻塞(用數(shù)據(jù),計算進(jìn)程阻塞(系統(tǒng)受系統(tǒng)受I/O限制限制)5.3.4緩沖池緩沖池n緩沖池的組成緩沖池的組成n專用緩沖的利用率不高,與環(huán)形緩沖不同的是緩沖池專用緩沖的利用率不高,與環(huán)形緩沖不同的是緩沖池中的緩沖區(qū)是系統(tǒng)的中的緩

33、沖區(qū)是系統(tǒng)的公用資源公用資源,可供,可供多個進(jìn)程共享多個進(jìn)程共享,既能用于既能用于輸入輸入,也能用于,也能用于輸出輸出n緩沖區(qū)類型緩沖區(qū)類型n空空(閑閑)緩沖區(qū)緩沖區(qū)n裝滿輸入數(shù)據(jù)的緩沖區(qū)裝滿輸入數(shù)據(jù)的緩沖區(qū)n裝滿輸出數(shù)據(jù)的緩沖區(qū)裝滿輸出數(shù)據(jù)的緩沖區(qū)n緩沖隊列:按其使用情況緩沖隊列:按其使用情況n空緩沖隊列空緩沖隊列emqn輸入隊列輸入隊列inqn輸出隊列輸出隊列outq5.3.4緩沖池緩沖池n緩沖池的組成緩沖池的組成n四種工作緩沖區(qū)四種工作緩沖區(qū)n用于收容輸入數(shù)據(jù)的工作緩沖區(qū)(用于收容輸入數(shù)據(jù)的工作緩沖區(qū)(hin)n用于提取輸入數(shù)據(jù)的工作緩沖區(qū)(用于提取輸入數(shù)據(jù)的工作緩沖區(qū)(sin)n用于收

34、容輸出數(shù)據(jù)的工作緩沖區(qū)(用于收容輸出數(shù)據(jù)的工作緩沖區(qū)(hout)n用于提取輸出數(shù)據(jù)的工作緩沖區(qū)(用于提取輸出數(shù)據(jù)的工作緩沖區(qū)(sout)5.3.4緩沖池緩沖池n緩沖區(qū)操作過程緩沖區(qū)操作過程nGetbuf(type),type:隊列類型:隊列類型 nPutbuf(type,number),number:緩沖區(qū)編號:緩沖區(qū)編號n隊列是臨界資源隊列是臨界資源n互斥信號量互斥信號量MS,每個隊列一個,每個隊列一個MS(type)n資源信號量資源信號量RS,每個隊列一個,每個隊列一個RS(type)n隊列操作過程隊列操作過程nTakebuf(type):取:取type所指隊列隊首緩沖區(qū)所指隊列隊首緩沖區(qū)

35、nAddbuf(type,number):將:將number所指緩沖所指緩沖區(qū)加到區(qū)加到type所指隊列尾。所指隊列尾。5.3.4緩沖池緩沖池Procedure Getbuf(type)begin Wait(RS(type);Wait(MS(type);B(number):=Takebuf(type);/從隊首摘下一個緩沖區(qū)從隊首摘下一個緩沖區(qū) Signal(MS(type);end Procedure Putbuf(type,number)begin Wait(MS(type);Addbuf(type,number);/將指定緩沖區(qū)掛在將指定緩沖區(qū)掛在type隊列上隊列上 Signal(MS

36、(type);Signal(RS(type);end5.3.4緩沖池緩沖池n緩沖區(qū)工作方式緩沖區(qū)工作方式hinsoutsinhout收容輸入收容輸入提取輸出提取輸出用用戶戶進(jìn)進(jìn)程程提取輸入提取輸入收容輸出收容輸出緩沖池緩沖池Getbuf(emq)Putbuf(inq,hin)Getbuf(inq)Putbuf(emp,sin)Getbuf(emq)Putbuf(outq,hout)Getbuf(outq)Putbuf(emq,sout)1.hin=getbuf(emq);putbuf(inq,hin)2.sin=getbuf(inq);計算;計算;putbuf(emq,sin)3.hout=g

37、etbuf(emq);putbuf(outq,hout)4.sout=getbuf(outq);輸出;輸出;putbuf(emq,sout)5.3 緩沖區(qū)管理緩沖區(qū)管理n無緩沖時問題分析無緩沖時問題分析n設(shè)備直接向進(jìn)程地址空間傳送數(shù)據(jù)。如用戶從設(shè)備直接向進(jìn)程地址空間傳送數(shù)據(jù)。如用戶從磁帶中讀數(shù)據(jù)塊的操作。磁帶中讀數(shù)據(jù)塊的操作。n忙等待方式忙等待方式。浪費大量。浪費大量CPU時間;時間;n阻塞方式阻塞方式。進(jìn)程阻塞在設(shè)備的。進(jìn)程阻塞在設(shè)備的I/O請求隊列中。請求隊列中。n不能將進(jìn)程全部換出,還可能出現(xiàn)單進(jìn)程死鎖。不能將進(jìn)程全部換出,還可能出現(xiàn)單進(jìn)程死鎖。(進(jìn)程在等待(進(jìn)程在等待I/O操作結(jié)果之前

38、被換出,等待操作結(jié)果之前被換出,等待I/O事件,而事件,而I/O操作也被阻塞,等待該進(jìn)程被換操作也被阻塞,等待該進(jìn)程被換入。)入。)5.4I/O 軟軟 件件n5.4.1 I/O軟件的設(shè)計目標(biāo)和原則軟件的設(shè)計目標(biāo)和原則n5.4.2 中斷處理程序中斷處理程序n5.4.3 設(shè)備驅(qū)動程序設(shè)備驅(qū)動程序n5.4.4 設(shè)備獨立性軟件設(shè)備獨立性軟件n5.4.5 用戶層的用戶層的I/O軟件軟件5.4.1 I/O軟件的設(shè)計目標(biāo)和原則軟件的設(shè)計目標(biāo)和原則n從系統(tǒng)的觀點考慮從系統(tǒng)的觀點考慮n采用多種技術(shù)和措施,解決由于外部設(shè)備與采用多種技術(shù)和措施,解決由于外部設(shè)備與CPU速度不匹配所引起的問題,提高主機和外速度不匹配

39、所引起的問題,提高主機和外設(shè)的并行工作能力,提高系統(tǒng)效率。設(shè)的并行工作能力,提高系統(tǒng)效率。n從用戶的觀點考慮從用戶的觀點考慮n設(shè)法消除或屏蔽設(shè)備硬件內(nèi)部的低級處理過程,設(shè)法消除或屏蔽設(shè)備硬件內(nèi)部的低級處理過程,提供一個簡便、易用、抽象的邏輯設(shè)備接口,提供一個簡便、易用、抽象的邏輯設(shè)備接口,保證用戶安全、方便地使用各類設(shè)備。保證用戶安全、方便地使用各類設(shè)備。5.4.1 I/O軟件的設(shè)計目標(biāo)和原則軟件的設(shè)計目標(biāo)和原則n目標(biāo)目標(biāo)n與具體設(shè)備無關(guān)與具體設(shè)備無關(guān)n為了提高為了提高OS的可移植性和易適應(yīng)性,的可移植性和易適應(yīng)性,I/O軟件軟件應(yīng)負(fù)責(zé)屏蔽設(shè)備的具體細(xì)節(jié),向高層軟件提供應(yīng)負(fù)責(zé)屏蔽設(shè)備的具體細(xì)節(jié)

40、,向高層軟件提供抽象的邏輯設(shè)備,并完成邏輯設(shè)備與具體物理抽象的邏輯設(shè)備,并完成邏輯設(shè)備與具體物理設(shè)備的映射。設(shè)備的映射。n統(tǒng)一命名統(tǒng)一命名n在系統(tǒng)中對各類設(shè)備采取預(yù)先設(shè)計的、統(tǒng)一的在系統(tǒng)中對各類設(shè)備采取預(yù)先設(shè)計的、統(tǒng)一的邏輯名稱進(jìn)行命名,所有軟件都以邏輯名稱訪邏輯名稱進(jìn)行命名,所有軟件都以邏輯名稱訪問設(shè)備。問設(shè)備。5.4.1 I/O軟件的設(shè)計目標(biāo)和原則軟件的設(shè)計目標(biāo)和原則n目標(biāo)目標(biāo)n對錯誤的處理對錯誤的處理n盡可能在接近硬件的層面處理,在低層軟件能盡可能在接近硬件的層面處理,在低層軟件能夠解決的錯誤就不讓高層軟件感知,只有低層夠解決的錯誤就不讓高層軟件感知,只有低層軟件解決不了的錯誤才通知高層

41、軟件解決。軟件解決不了的錯誤才通知高層軟件解決。n對緩沖區(qū)的管理對緩沖區(qū)的管理n由于由于CPU與設(shè)備之間的速度差異,無論是塊設(shè)與設(shè)備之間的速度差異,無論是塊設(shè)備還是字符設(shè)備,都需要使用緩沖技術(shù)。備還是字符設(shè)備,都需要使用緩沖技術(shù)。n對于不同類型的設(shè)備,其緩沖區(qū)對于不同類型的設(shè)備,其緩沖區(qū)(塊塊)的大小是不的大小是不一樣的,一樣的,I/O軟件應(yīng)能屏蔽這種差異。軟件應(yīng)能屏蔽這種差異。5.4.1 I/O軟件的設(shè)計目標(biāo)和原則軟件的設(shè)計目標(biāo)和原則n目標(biāo)目標(biāo)n設(shè)備的分配和釋放設(shè)備的分配和釋放n對于獨占設(shè)備和共享設(shè)備帶來的許多問題,對于獨占設(shè)備和共享設(shè)備帶來的許多問題,I/O軟件必須能夠同時進(jìn)行妥善的解決。

42、軟件必須能夠同時進(jìn)行妥善的解決。nI/O控制方式控制方式n針對具有不同傳輸速率的設(shè)備,綜合系統(tǒng)效率針對具有不同傳輸速率的設(shè)備,綜合系統(tǒng)效率和系統(tǒng)代價等因素,合理選擇和系統(tǒng)代價等因素,合理選擇I/O控制方式,以控制方式,以提高系統(tǒng)的利用率。提高系統(tǒng)的利用率。n為方便用戶,為方便用戶,I/O軟件也應(yīng)屏蔽這種差異,向高軟件也應(yīng)屏蔽這種差異,向高層軟件提供統(tǒng)一的操作接口。層軟件提供統(tǒng)一的操作接口。5.4.1 I/O軟件的設(shè)計目標(biāo)和原則軟件的設(shè)計目標(biāo)和原則實現(xiàn)與用戶交互的接口。用實現(xiàn)與用戶交互的接口。用戶可直接調(diào)用在戶可直接調(diào)用在I/OI/O操作有操作有關(guān)的庫函數(shù),對設(shè)備進(jìn)行操關(guān)的庫函數(shù),對設(shè)備進(jìn)行操作

43、。作。實現(xiàn)與設(shè)備驅(qū)動器的統(tǒng)一實現(xiàn)與設(shè)備驅(qū)動器的統(tǒng)一接口、設(shè)備命名、設(shè)備的接口、設(shè)備命名、設(shè)備的保護(hù)以及分配與釋放等,保護(hù)以及分配與釋放等,同時為設(shè)備管理和數(shù)據(jù)傳同時為設(shè)備管理和數(shù)據(jù)傳送提供必要的存儲空間。送提供必要的存儲空間。與硬件直接相關(guān),負(fù)責(zé)實現(xiàn)與硬件直接相關(guān),負(fù)責(zé)實現(xiàn)系統(tǒng)對設(shè)備發(fā)出的操作指令,系統(tǒng)對設(shè)備發(fā)出的操作指令,驅(qū)動驅(qū)動I/OI/O設(shè)備工作。設(shè)備工作。保存被中斷進(jìn)程的保存被中斷進(jìn)程的CPUCPU環(huán)境,環(huán)境,轉(zhuǎn)入相應(yīng)的中斷處理程序轉(zhuǎn)入相應(yīng)的中斷處理程序進(jìn)行處理,處理完后再恢進(jìn)行處理,處理完后再恢復(fù)被中斷進(jìn)程的現(xiàn)場后返復(fù)被中斷進(jìn)程的現(xiàn)場后返回到被中斷進(jìn)程。回到被中斷進(jìn)程。nI/O軟件的

44、層次式結(jié)構(gòu)軟件的層次式結(jié)構(gòu)5.4.2 中斷處理程序中斷處理程序nI/O中斷處理程序中斷處理程序n系統(tǒng)為每類設(shè)備設(shè)置一個系統(tǒng)為每類設(shè)備設(shè)置一個I/O中斷處理程序,中斷處理程序,它們的入口地址被存放在內(nèi)存的固定單元中,它們的入口地址被存放在內(nèi)存的固定單元中,稱為中斷向量。稱為中斷向量。n當(dāng)設(shè)備完成一次當(dāng)設(shè)備完成一次I/O操作時,發(fā)出中斷信號,操作時,發(fā)出中斷信號,CPU接受中斷信號,暫?,F(xiàn)行進(jìn)程的執(zhí)行,根接受中斷信號,暫停現(xiàn)行進(jìn)程的執(zhí)行,根據(jù)中斷向量轉(zhuǎn)到相應(yīng)的據(jù)中斷向量轉(zhuǎn)到相應(yīng)的I/O中斷處理程序。中斷處理程序。nI/O中斷處理程序的基本工作中斷處理程序的基本工作n保留現(xiàn)行進(jìn)程的執(zhí)行現(xiàn)場;保留現(xiàn)行

45、進(jìn)程的執(zhí)行現(xiàn)場;n通知等待該通知等待該I/O操作完成的進(jìn)程;操作完成的進(jìn)程;n最終轉(zhuǎn)入進(jìn)程調(diào)度程序進(jìn)行重新調(diào)度。最終轉(zhuǎn)入進(jìn)程調(diào)度程序進(jìn)行重新調(diào)度。5.4.2 中斷處理程序中斷處理程序n工作步驟工作步驟n喚醒被阻塞的驅(qū)動喚醒被阻塞的驅(qū)動(程序程序)進(jìn)程進(jìn)程n保護(hù)被中斷進(jìn)程的保護(hù)被中斷進(jìn)程的CPU環(huán)境環(huán)境n轉(zhuǎn)入相應(yīng)的設(shè)備處理程序轉(zhuǎn)入相應(yīng)的設(shè)備處理程序n中斷處理中斷處理n恢復(fù)被中斷進(jìn)程的現(xiàn)場恢復(fù)被中斷進(jìn)程的現(xiàn)場中斷現(xiàn)場保護(hù)示意圖中斷現(xiàn)場保護(hù)示意圖 不同的設(shè)備中不同的設(shè)備中斷處理程序不斷處理程序不同同 5.4.2 中斷處理程序中斷處理程序I/O完成后,驅(qū)動程完成后,驅(qū)動程序必須檢查本次序必須檢查本次I

46、/O操作中是否發(fā)生了錯操作中是否發(fā)生了錯誤,并向上層軟件報誤,并向上層軟件報告,最終向調(diào)用者報告,最終向調(diào)用者報告本次告本次I/O的執(zhí)行情的執(zhí)行情況況5.4.3設(shè)備驅(qū)動程序設(shè)備驅(qū)動程序n設(shè)備處理程序設(shè)備處理程序又稱為又稱為設(shè)備驅(qū)動程序設(shè)備驅(qū)動程序,是,是I/O進(jìn)程與進(jìn)程與設(shè)備控制器之間的通信程序設(shè)備控制器之間的通信程序n功能功能n接收接收用戶的用戶的I/O請求請求命令和參數(shù)命令和參數(shù),并將命令中的抽象,并將命令中的抽象要求要求轉(zhuǎn)換轉(zhuǎn)換為具體要求(為具體要求(I/O請求塊)。請求塊)。n檢查檢查用戶用戶I/O請求的請求的合法性合法性,了解,了解I/O設(shè)備的狀態(tài),設(shè)備的狀態(tài),傳遞有關(guān)參數(shù),傳遞有關(guān)

47、參數(shù),設(shè)置設(shè)置設(shè)備的設(shè)備的工作方式。工作方式。n發(fā)出發(fā)出I/O命令并檢查設(shè)備狀態(tài),空閑則啟動命令并檢查設(shè)備狀態(tài),空閑則啟動I/O完成完成指定的操作,忙碌則指定的操作,忙碌則將請求者的請求塊掛將請求者的請求塊掛到相應(yīng)設(shè)備到相應(yīng)設(shè)備的的I/O請求隊列。請求隊列。n及時及時響應(yīng)響應(yīng)由控制器或通道發(fā)來的由控制器或通道發(fā)來的中斷中斷請求并處理請求并處理n若計算機系統(tǒng)設(shè)置有通道,則驅(qū)動程序根據(jù)用戶的若計算機系統(tǒng)設(shè)置有通道,則驅(qū)動程序根據(jù)用戶的I/O請求,請求,自動地構(gòu)成通道程序。自動地構(gòu)成通道程序。5.4.3設(shè)備驅(qū)動程序設(shè)備驅(qū)動程序n注意注意n每類設(shè)備有一個每類設(shè)備有一個I/O請求隊列,在系統(tǒng)初始化時,請

48、求隊列,在系統(tǒng)初始化時,將系統(tǒng)中所有設(shè)備的將系統(tǒng)中所有設(shè)備的I/O請求隊列置為空。請求隊列置為空。n在系統(tǒng)初啟時,系統(tǒng)為每類設(shè)備創(chuàng)建一個進(jìn)程在系統(tǒng)初啟時,系統(tǒng)為每類設(shè)備創(chuàng)建一個進(jìn)程(其中的一種方式),執(zhí)行程序就是該設(shè)備的設(shè)(其中的一種方式),執(zhí)行程序就是該設(shè)備的設(shè)備驅(qū)動程序。由于系統(tǒng)初啟時,相應(yīng)的備驅(qū)動程序。由于系統(tǒng)初啟時,相應(yīng)的I/O請求隊請求隊列為空,則在該隊列上睡眠。列為空,則在該隊列上睡眠。n一旦有一旦有I/O請求塊掛入,喚醒該設(shè)備驅(qū)動進(jìn)程。它請求塊掛入,喚醒該設(shè)備驅(qū)動進(jìn)程。它被調(diào)度到時,從隊列中取出一個被調(diào)度到時,從隊列中取出一個I/O請求塊,并按請求塊,并按該塊的內(nèi)容執(zhí)行一次該塊的

49、內(nèi)容執(zhí)行一次I/O操作,發(fā)出操作,發(fā)出I/O完成(或出完成(或出錯)中斷信號。然后,檢查請求隊,若為空,則錯)中斷信號。然后,檢查請求隊,若為空,則進(jìn)入睡眠狀態(tài),否則,取下一個請求塊。進(jìn)入睡眠狀態(tài),否則,取下一個請求塊。5.4.3設(shè)備驅(qū)動程序設(shè)備驅(qū)動程序n設(shè)備處理方式設(shè)備處理方式n在在整個系統(tǒng)整個系統(tǒng)中設(shè)置中設(shè)置一個一個I/O進(jìn)程進(jìn)程,統(tǒng)一負(fù)責(zé)所,統(tǒng)一負(fù)責(zé)所有設(shè)備的驅(qū)動工作。專門用于執(zhí)行系統(tǒng)中所有有設(shè)備的驅(qū)動工作。專門用于執(zhí)行系統(tǒng)中所有各類設(shè)備的各類設(shè)備的I/O操作。操作。n為每為每一類設(shè)備一類設(shè)備設(shè)置設(shè)置一個進(jìn)程一個進(jìn)程,專門用于負(fù)責(zé)該,專門用于負(fù)責(zé)該類設(shè)備的驅(qū)動工作(類設(shè)備的驅(qū)動工作(I/

50、O操作)操作)。n為為每臺每臺設(shè)備建立設(shè)備建立一個一個設(shè)備驅(qū)動進(jìn)程,它們分別設(shè)備驅(qū)動進(jìn)程,它們分別負(fù)責(zé)專門設(shè)備的驅(qū)動工作。同類設(shè)備的各驅(qū)動負(fù)責(zé)專門設(shè)備的驅(qū)動工作。同類設(shè)備的各驅(qū)動進(jìn)程共享該類設(shè)備的設(shè)備驅(qū)動程序。進(jìn)程共享該類設(shè)備的設(shè)備驅(qū)動程序。n不設(shè)置專門的不設(shè)置專門的設(shè)備處理進(jìn)程,而只為設(shè)備處理進(jìn)程,而只為各類設(shè)備各類設(shè)備設(shè)置相應(yīng)的設(shè)備處理程序設(shè)置相應(yīng)的設(shè)備處理程序(模塊模塊),供用戶進(jìn)程供用戶進(jìn)程或系統(tǒng)進(jìn)程調(diào)用?;蛳到y(tǒng)進(jìn)程調(diào)用。5.4.3設(shè)備驅(qū)動程序設(shè)備驅(qū)動程序n設(shè)備驅(qū)動程序的特點設(shè)備驅(qū)動程序的特點n驅(qū)動程序驅(qū)動程序主要是指在請求主要是指在請求I/O的進(jìn)程與設(shè)備控制器之間的進(jìn)程與設(shè)備控制器之

51、間的一個通信和轉(zhuǎn)換程序的一個通信和轉(zhuǎn)換程序n驅(qū)動程序驅(qū)動程序與與設(shè)備設(shè)備控制器控制器和和I/O設(shè)備的設(shè)備的硬件特性緊密相關(guān)硬件特性緊密相關(guān),因而對不同類型的設(shè)備應(yīng)配置不同的驅(qū)動程序因而對不同類型的設(shè)備應(yīng)配置不同的驅(qū)動程序n驅(qū)動程序與驅(qū)動程序與I/O設(shè)備所采用的設(shè)備所采用的I/O控制方式緊密相關(guān)控制方式緊密相關(guān)n由于驅(qū)動程序與硬件緊密相關(guān),由于驅(qū)動程序與硬件緊密相關(guān),因而其中的一部分必因而其中的一部分必須用匯編語言書寫須用匯編語言書寫n驅(qū)動程序應(yīng)允許可重入。一個正在運行的驅(qū)動程序常驅(qū)動程序應(yīng)允許可重入。一個正在運行的驅(qū)動程序常會在一次調(diào)用完成前被再次調(diào)用。會在一次調(diào)用完成前被再次調(diào)用。n驅(qū)動程序

52、不允許系統(tǒng)調(diào)用。驅(qū)動程序不允許系統(tǒng)調(diào)用。5.4.3設(shè)備驅(qū)動程序設(shè)備驅(qū)動程序n設(shè)備驅(qū)動程序的處理過程設(shè)備驅(qū)動程序的處理過程n將抽象要求轉(zhuǎn)換為具體要求。設(shè)置控制器中的寄將抽象要求轉(zhuǎn)換為具體要求。設(shè)置控制器中的寄存器。存器。n檢查檢查I/O請求的合法性。若請求的設(shè)備不支持本次請求的合法性。若請求的設(shè)備不支持本次的的I/O請求,認(rèn)為是非法操作。請求,認(rèn)為是非法操作。n讀出和檢查設(shè)備的狀態(tài)讀出和檢查設(shè)備的狀態(tài)。檢查設(shè)備是否空閑或就。檢查設(shè)備是否空閑或就緒。緒。n傳送必要的參數(shù)傳送必要的參數(shù)。如數(shù)據(jù)量、起始地址等。如數(shù)據(jù)量、起始地址等n設(shè)置工作方式。對于有多種工作方式的設(shè)備進(jìn)行設(shè)置工作方式。對于有多種工作

53、方式的設(shè)備進(jìn)行設(shè)置設(shè)置n啟動啟動I/O設(shè)備。驅(qū)動進(jìn)程將自己阻塞起來,直到中設(shè)備。驅(qū)動進(jìn)程將自己阻塞起來,直到中斷到來時將其喚醒斷到來時將其喚醒5.4.4 設(shè)備獨立性軟件設(shè)備獨立性軟件n設(shè)備獨立性設(shè)備獨立性(Device Independence)的概念的概念n又稱為設(shè)備無關(guān)性。又稱為設(shè)備無關(guān)性。n基本含義是基本含義是:應(yīng)用程序獨立于具體使用的物理設(shè)備。應(yīng)用程序獨立于具體使用的物理設(shè)備。n實現(xiàn)方式實現(xiàn)方式n通過邏輯設(shè)備和物理設(shè)備。在應(yīng)用程序中,使用邏輯通過邏輯設(shè)備和物理設(shè)備。在應(yīng)用程序中,使用邏輯設(shè)備名稱來請求使用某類設(shè)備;而系統(tǒng)在實際執(zhí)行時,設(shè)備名稱來請求使用某類設(shè)備;而系統(tǒng)在實際執(zhí)行時,使用

54、物理設(shè)備名稱。使用物理設(shè)備名稱。n實現(xiàn)設(shè)備獨立性的好處:實現(xiàn)設(shè)備獨立性的好處:n設(shè)備分配時的靈活性設(shè)備分配時的靈活性n易于實現(xiàn)易于實現(xiàn)I/O重定向重定向5.4.4 設(shè)備獨立性軟件設(shè)備獨立性軟件n設(shè)備獨立性軟件的主要功能設(shè)備獨立性軟件的主要功能n執(zhí)行所有設(shè)備的公有操作執(zhí)行所有設(shè)備的公有操作 n 對獨立設(shè)備的分配與回收;對獨立設(shè)備的分配與回收;n 將邏輯設(shè)備名映射為物理設(shè)備名,進(jìn)一步可以找將邏輯設(shè)備名映射為物理設(shè)備名,進(jìn)一步可以找到相應(yīng)物理設(shè)備的驅(qū)動程序;到相應(yīng)物理設(shè)備的驅(qū)動程序;n 對設(shè)備進(jìn)行保護(hù),禁止用戶直接訪問設(shè)備;對設(shè)備進(jìn)行保護(hù),禁止用戶直接訪問設(shè)備;n 緩沖管理,即對字符設(shè)備和塊設(shè)備的緩

55、沖區(qū)進(jìn)行緩沖管理,即對字符設(shè)備和塊設(shè)備的緩沖區(qū)進(jìn)行有效的管理,以提高有效的管理,以提高I/O的效率;的效率;n 差錯控制,只處理那些設(shè)備驅(qū)動程序無法處理的差錯控制,只處理那些設(shè)備驅(qū)動程序無法處理的錯誤;錯誤;n 提供獨立于設(shè)備的邏輯塊。提供獨立于設(shè)備的邏輯塊。5.4.4 設(shè)備獨立性軟件設(shè)備獨立性軟件n設(shè)備獨立性軟件的主要功能設(shè)備獨立性軟件的主要功能n向用戶層向用戶層(或文件層或文件層)軟件提供統(tǒng)一接口。軟件提供統(tǒng)一接口。n無論何種設(shè)備,它們向用戶所提供的接口應(yīng)無論何種設(shè)備,它們向用戶所提供的接口應(yīng)該是相同的。該是相同的。n例,對各種設(shè)備的讀操作,在應(yīng)用程序中都例,對各種設(shè)備的讀操作,在應(yīng)用程序

56、中都使用使用read;而對各種設(shè)備的寫操作,也都使;而對各種設(shè)備的寫操作,也都使用用write。5.4.4 設(shè)備獨立性軟件設(shè)備獨立性軟件n邏輯設(shè)備名到物理設(shè)備名映射的實現(xiàn)邏輯設(shè)備名到物理設(shè)備名映射的實現(xiàn)n邏輯設(shè)備表邏輯設(shè)備表(LUT,Logical Unit Table)n將應(yīng)用程序中所使用的邏輯設(shè)備名映射為物將應(yīng)用程序中所使用的邏輯設(shè)備名映射為物理設(shè)備名。在該表的每個表目中包含了三項:理設(shè)備名。在該表的每個表目中包含了三項:邏輯設(shè)備名、物理設(shè)備名和設(shè)備驅(qū)動程序的邏輯設(shè)備名、物理設(shè)備名和設(shè)備驅(qū)動程序的入口地址。入口地址。5.4.4 設(shè)備獨立性軟件設(shè)備獨立性軟件n邏輯設(shè)備名到物理設(shè)備名映射的實現(xiàn)

57、邏輯設(shè)備名到物理設(shè)備名映射的實現(xiàn)nLUT的設(shè)置可采取兩種方式:的設(shè)置可采取兩種方式:n在整個系統(tǒng)中只設(shè)置一張在整個系統(tǒng)中只設(shè)置一張LUT。所有用戶都使用不相同的邏。所有用戶都使用不相同的邏輯設(shè)備名。在多用戶環(huán)境下這通常是難以做到的,這種方式輯設(shè)備名。在多用戶環(huán)境下這通常是難以做到的,這種方式主要用于單用戶系統(tǒng)中。主要用于單用戶系統(tǒng)中。n每個用戶設(shè)置一張每個用戶設(shè)置一張LUT。用戶登錄時,便為該用戶建立一個。用戶登錄時,便為該用戶建立一個進(jìn)程,同時也為之建立一張進(jìn)程,同時也為之建立一張LUT,并將該表放入進(jìn)程的,并將該表放入進(jìn)程的PCB中。在多用戶系統(tǒng)中,通常都配置系統(tǒng)設(shè)備表。中。在多用戶系統(tǒng)中

58、,通常都配置系統(tǒng)設(shè)備表。5.4.5 用戶層的用戶層的I/O軟件軟件n包括與用戶程序鏈接在一起的庫函數(shù),以包括與用戶程序鏈接在一起的庫函數(shù),以及完全運行于內(nèi)核之外的一些程序。及完全運行于內(nèi)核之外的一些程序。n用戶層軟件必須通過一組系統(tǒng)調(diào)用來取得用戶層軟件必須通過一組系統(tǒng)調(diào)用來取得操作系統(tǒng)服務(wù)。操作系統(tǒng)服務(wù)。n在許多現(xiàn)代操作系統(tǒng)中,系統(tǒng)調(diào)用本身已在許多現(xiàn)代操作系統(tǒng)中,系統(tǒng)調(diào)用本身已經(jīng)采用經(jīng)采用C語言編寫,并以函數(shù)形式提供,所語言編寫,并以函數(shù)形式提供,所以在使用以在使用C語言編寫的用戶程序中,可以直語言編寫的用戶程序中,可以直接使用這些系統(tǒng)調(diào)用。接使用這些系統(tǒng)調(diào)用。5.5 設(shè)備分配設(shè)備分配n在多道

59、程序環(huán)境下,系統(tǒng)中的設(shè)備所有進(jìn)程共享,在多道程序環(huán)境下,系統(tǒng)中的設(shè)備所有進(jìn)程共享,為為防止防止進(jìn)程對系統(tǒng)資源的進(jìn)程對系統(tǒng)資源的無序競爭無序競爭,必須由系統(tǒng),必須由系統(tǒng)統(tǒng)一分配統(tǒng)一分配設(shè)備。設(shè)備。n某進(jìn)程向系統(tǒng)提出某進(jìn)程向系統(tǒng)提出I/O請求時,設(shè)備分配程序按請求時,設(shè)備分配程序按一一定策略定策略分配設(shè)備、控制器和通道,形成一條數(shù)據(jù)分配設(shè)備、控制器和通道,形成一條數(shù)據(jù)傳輸通路,以供主機和設(shè)備間信息交換。傳輸通路,以供主機和設(shè)備間信息交換。n為實現(xiàn)設(shè)備分配,系統(tǒng)中應(yīng)設(shè)置相應(yīng)的數(shù)據(jù)結(jié)構(gòu),為實現(xiàn)設(shè)備分配,系統(tǒng)中應(yīng)設(shè)置相應(yīng)的數(shù)據(jù)結(jié)構(gòu),對每臺設(shè)備、通道、控制器的情況進(jìn)行登記。對每臺設(shè)備、通道、控制器的情況進(jìn)

60、行登記。5.5 設(shè)備分配設(shè)備分配n5.5.1 設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)n5.5.2 設(shè)備分配時應(yīng)考慮的因素設(shè)備分配時應(yīng)考慮的因素n5.5.3 獨占設(shè)備的分配程序獨占設(shè)備的分配程序n5.5.4 SPOOLing技術(shù)技術(shù)5.5.1 設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)n設(shè)備控制表設(shè)備控制表DCT設(shè)備類型設(shè)備類型 type設(shè)備標(biāo)識符:設(shè)備標(biāo)識符:deviceid設(shè)備狀態(tài):等待設(shè)備狀態(tài):等待/不等待不等待 忙忙/閑閑指向控制器表指向控制器表COCT的指針的指針重復(fù)執(zhí)行次數(shù)或時間重復(fù)執(zhí)行次數(shù)或時間設(shè)備隊列的隊首指針設(shè)備隊列的隊首指針DCT 1DCT 2DCT n設(shè)設(shè)備備控控制制表表集

61、集合合每個設(shè)備一張,記錄本設(shè)備的情況每個設(shè)備一張,記錄本設(shè)備的情況正使用,則忙標(biāo)志正使用,則忙標(biāo)志置置1;若與其相連的;若與其相連的控制器或通道忙,控制器或通道忙,則等待標(biāo)志置則等待標(biāo)志置1請求本設(shè)備未滿請求本設(shè)備未滿足的進(jìn)程足的進(jìn)程PCB隊隊列列5.5.1 設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)n控制器控制表、控制器控制表、通道控制表通道控制表控制器標(biāo)識符:控制器標(biāo)識符:controllerid控制器狀態(tài):忙控制器狀態(tài):忙/閑閑與控制器連接的通道表指針與控制器連接的通道表指針控制器隊列的隊首指針控制器隊列的隊首指針控制器隊列的隊尾指針控制器隊列的隊尾指針通道標(biāo)識符:通道標(biāo)識符:channe

62、lid通道狀態(tài):忙通道狀態(tài):忙/閑閑與通道連接的控制器表首址與通道連接的控制器表首址通道隊列的隊首指針通道隊列的隊首指針通道隊列的隊尾指針通道隊列的隊尾指針(a)控制器表控制器表COCT(b)通道表通道表CHCT一個控制器一張一個控制器一張一個通道一張一個通道一張5.5.1 設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)n系統(tǒng)設(shè)備表系統(tǒng)設(shè)備表SDT系統(tǒng)系統(tǒng)設(shè)備表設(shè)備表SDT表目表目 1表目表目 i設(shè)備類設(shè)備類設(shè)備標(biāo)識符設(shè)備標(biāo)識符DCT驅(qū)動程序入口驅(qū)動程序入口整個系統(tǒng)一張,記錄已被連接到系統(tǒng)中的所有物理設(shè)備的情況整個系統(tǒng)一張,記錄已被連接到系統(tǒng)中的所有物理設(shè)備的情況5.5.2 設(shè)備分配時應(yīng)考慮的因素設(shè)

63、備分配時應(yīng)考慮的因素n設(shè)備的固有屬性設(shè)備的固有屬性n獨占性獨占性n一段時間內(nèi),只允許一個進(jìn)程獨占,大多數(shù)低度速一段時間內(nèi),只允許一個進(jìn)程獨占,大多數(shù)低度速/設(shè)備都屬于獨享設(shè)備。設(shè)備都屬于獨享設(shè)備。n共享性共享性n允許多個進(jìn)程同時共享,如磁盤、磁鼓之類的外存允許多個進(jìn)程同時共享,如磁盤、磁鼓之類的外存儲器,既具有很能大的存儲容量,其定位操作的時儲器,既具有很能大的存儲容量,其定位操作的時間又短。間又短。n可虛擬性可虛擬性n獨占設(shè)備經(jīng)某種技術(shù)處理,改造成虛擬設(shè)備,把一獨占設(shè)備經(jīng)某種技術(shù)處理,改造成虛擬設(shè)備,把一臺輸入機虛擬為幾臺臺輸入機虛擬為幾臺“虛擬虛擬”的輸入機。例如:為的輸入機。例如:為了提

64、高設(shè)備利用率引入了脫機輸入輸出或采用了提高設(shè)備利用率引入了脫機輸入輸出或采用SPOOLing技術(shù),變一臺為技術(shù),變一臺為“多臺設(shè)備多臺設(shè)備”。缺點:設(shè)備得缺點:設(shè)備得不到充分利用,不到充分利用,可能產(chǎn)生死鎖可能產(chǎn)生死鎖5.5.2 設(shè)備分配時應(yīng)考慮的因素設(shè)備分配時應(yīng)考慮的因素n設(shè)備分配設(shè)備分配n獨占設(shè)備獨占設(shè)備n防止死鎖。防止死鎖。n共享設(shè)備共享設(shè)備n由于同時有多個進(jìn)程同時訪問,且訪問頻繁,由于同時有多個進(jìn)程同時訪問,且訪問頻繁,就會影響整個設(shè)備使用效率,影響系統(tǒng)效率。就會影響整個設(shè)備使用效率,影響系統(tǒng)效率。因此要考慮多個訪問請求到達(dá)時服務(wù)的順序,因此要考慮多個訪問請求到達(dá)時服務(wù)的順序,使平均服

65、務(wù)時間越短越好。使平均服務(wù)時間越短越好。注意各進(jìn)程的訪注意各進(jìn)程的訪問次序進(jìn)行合理調(diào)度。問次序進(jìn)行合理調(diào)度。n虛擬設(shè)備虛擬設(shè)備5.5.2 設(shè)備分配時應(yīng)考慮的因素設(shè)備分配時應(yīng)考慮的因素n設(shè)備分配算法設(shè)備分配算法n先來先服務(wù)先來先服務(wù)n優(yōu)先級高者優(yōu)先優(yōu)先級高者優(yōu)先n設(shè)備分配中的安全性設(shè)備分配中的安全性n安全分配方式安全分配方式n每當(dāng)進(jìn)程發(fā)出每當(dāng)進(jìn)程發(fā)出I/O請求后,便進(jìn)入阻塞狀態(tài),請求后,便進(jìn)入阻塞狀態(tài),I/O操操作完成后喚醒作完成后喚醒n優(yōu)點:摒棄了優(yōu)點:摒棄了“請求和保持請求和保持”條件,不會產(chǎn)生死鎖條件,不會產(chǎn)生死鎖n不安全分配方式不安全分配方式 n進(jìn)程發(fā)出進(jìn)程發(fā)出I/O請求后仍繼續(xù)運行,繼

66、續(xù)申請請求后仍繼續(xù)運行,繼續(xù)申請I/O設(shè)備設(shè)備n優(yōu)點:可操作多個設(shè)備,推進(jìn)迅速優(yōu)點:可操作多個設(shè)備,推進(jìn)迅速缺點:推進(jìn)缺點:推進(jìn)速度緩慢速度緩慢缺點:可能缺點:可能產(chǎn)生死鎖產(chǎn)生死鎖5.5.3獨占設(shè)備的分配程序獨占設(shè)備的分配程序n基本的設(shè)備分配程序基本的設(shè)備分配程序n分配設(shè)備分配設(shè)備n分配控制器分配控制器n分配通道分配通道5.5.3獨占設(shè)備的分配程序獨占設(shè)備的分配程序5.5.3獨占設(shè)備的分配程序獨占設(shè)備的分配程序獨獨占占設(shè)設(shè)備備的的分分配配程程序序分配設(shè)備分配設(shè)備1分配控制器分配控制器1分配通道分配通道1申請設(shè)備申請設(shè)備1按設(shè)備物理名查按設(shè)備物理名查SDT設(shè)備忙?設(shè)備忙?根據(jù)安全策略進(jìn)行分配根據(jù)安全策略進(jìn)行分配由由DCT查查COCT分配控制器分配控制器由由COCT查查CHCT分配通道分配通道否是由由SDT查設(shè)備查設(shè)備 DCT5.5.3獨占設(shè)備的分配程序獨占設(shè)備的分配程序n設(shè)備分配程序的改進(jìn)設(shè)備分配程序的改進(jìn)n基本分配程序的問題基本分配程序的問題n進(jìn)程以物理設(shè)備名提出進(jìn)程以物理設(shè)備名提出I/O請求請求n采用單通路采用單通路I/O系統(tǒng)結(jié)構(gòu),容易產(chǎn)生瓶頸系統(tǒng)結(jié)構(gòu),容易產(chǎn)生瓶頸n改進(jìn)方案改進(jìn)方案

展開閱讀全文
溫馨提示:
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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!