版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第七章設(shè)備管理第一節(jié)概述第二節(jié)數(shù)據(jù)傳送控制方式第三節(jié)中止技術(shù)第四節(jié)緩沖技術(shù)第五節(jié)設(shè)備分配第六節(jié)I/O進(jìn)程控制第七節(jié)設(shè)備驅(qū)動(dòng)程序1第1頁7.1概述設(shè)備除cpu及內(nèi)存以外全部設(shè)備和裝置(I/O設(shè)備,存放設(shè)備等)。存放設(shè)備用來存放各種信息設(shè)備稱為存放設(shè)備,比如,軟盤、硬盤、光盤和磁帶等I/O設(shè)備用來向計(jì)算機(jī)輸入和輸出信息設(shè)備,如鍵盤、鼠標(biāo)、顯示器、打印機(jī)等2第2頁7.1.1外部設(shè)備分類
按系統(tǒng)和用戶分:系統(tǒng)、用戶按輸入輸出傳送方式分(UNIX或Linux系統(tǒng)):字符型設(shè)備、塊設(shè)備按資源特點(diǎn)分:獨(dú)享設(shè)備、共享設(shè)備、虛擬設(shè)備按設(shè)備硬件物理特征分:次序存取設(shè)備、直接存取設(shè)備3第3頁按輸入輸出傳送方式分字符型設(shè)備:以字符為單位進(jìn)行輸入、輸出設(shè)備。每輸入或輸出一個(gè)字符就中止一次主機(jī)CPU,請(qǐng)求進(jìn)行處理。所以又稱慢速字符設(shè)備。塊設(shè)備:以字符塊為單位進(jìn)行輸入、輸出設(shè)備。比如:硬盤。4第4頁按資源特點(diǎn)分獨(dú)享設(shè)備:全部字符設(shè)備都是獨(dú)享設(shè)備。在一個(gè)用戶作業(yè)未完成或退出之前,此設(shè)備不能分配給其它作業(yè)用。打印機(jī)不能同時(shí)打印多個(gè)用戶作業(yè),不然輸出結(jié)果將會(huì)混在一起。共享設(shè)備:多個(gè)用戶作業(yè)或多個(gè)進(jìn)程能夠“同時(shí)”從這些設(shè)備上存取信息。軟硬盤、光盤等塊設(shè)備都是共享設(shè)備。虛擬設(shè)備:經(jīng)過軟件技術(shù)將獨(dú)享設(shè)備改造成共享設(shè)備。比如:經(jīng)過SPOOLing技術(shù)將一臺(tái)打印機(jī)虛擬成多臺(tái)打印機(jī)。5第5頁按設(shè)備硬件物理特征分次序存取設(shè)備:存取時(shí)間與物理上當(dāng)前位置相關(guān)。如:磁帶直接存取設(shè)備:存取時(shí)間與物理上當(dāng)前位置關(guān)系不大。如:磁盤6第6頁7.1.2設(shè)備管理任務(wù)選擇和分配輸入輸出設(shè)備控制輸入輸出設(shè)備和CPU或內(nèi)存之間數(shù)據(jù)交換。為用戶提供一個(gè)友好接口,把用戶和設(shè)備硬件特征分開,使用戶編程時(shí)無須關(guān)心設(shè)備物理特征。盡可能提升輸入輸出設(shè)備利用率,發(fā)揮主機(jī)與外設(shè)以及外設(shè)與外設(shè)之間真正并行工作能力。7第7頁7.1.3設(shè)備管理功效提供與進(jìn)程管理系統(tǒng)接口,將進(jìn)程要求傳達(dá)給設(shè)備管理程序。按設(shè)備類型和算法分配設(shè)備,包含對(duì)應(yīng)通道、設(shè)備控制器。對(duì)未分配到設(shè)備任務(wù)或作業(yè)進(jìn)入等候隊(duì)列。實(shí)現(xiàn)設(shè)備和設(shè)備、設(shè)備和CPU之間并行操作。這需要一些硬件設(shè)備支持。進(jìn)行存放緩沖區(qū)管理。8第8頁7.2數(shù)據(jù)傳送控制方式數(shù)據(jù)傳送設(shè)備與CPU或內(nèi)存數(shù)據(jù)交互傳送方式程序直接控制中止控制DMA控制通道控制評(píng)價(jià)指標(biāo)速度快、數(shù)據(jù)不丟失、系統(tǒng)開銷小9第9頁程序直接控制由用戶進(jìn)程直接控制內(nèi)存與外部設(shè)備數(shù)據(jù)傳輸當(dāng)用戶進(jìn)程需要數(shù)據(jù)時(shí),它經(jīng)過CPU發(fā)送“設(shè)備開啟命令”,用戶進(jìn)程進(jìn)入測(cè)試等候狀態(tài);在等候時(shí)間內(nèi)CPU不停用一條測(cè)試指令檢驗(yàn)設(shè)備工作狀態(tài)當(dāng)數(shù)據(jù)準(zhǔn)備好后,狀態(tài)存放器狀態(tài)置為完成狀態(tài),發(fā)出“Done”信號(hào),開始向內(nèi)存?zhèn)魉蛿?shù)據(jù)10第10頁程序直接控制方式特點(diǎn)CPU和外部設(shè)備之間只能串行工作CPU在一段時(shí)間只能與一臺(tái)外部設(shè)備交換信息,所以不能實(shí)現(xiàn)設(shè)備之間并行工作CPU處理速度遠(yuǎn)遠(yuǎn)高于外部設(shè)備,所以CPU利用率大大降低。因?yàn)檫@種方式是依靠測(cè)試設(shè)備狀態(tài)存放器狀態(tài)位來控制數(shù)據(jù)傳輸,所以,無法發(fā)覺和處理因?yàn)樵O(shè)備或其它硬件所產(chǎn)生錯(cuò)誤。11第11頁7.2.2中止方式與程序直接方式不一樣,它是靠中止來實(shí)現(xiàn)設(shè)備與內(nèi)存數(shù)據(jù)傳輸控制。處理過程:1.當(dāng)進(jìn)程要求數(shù)據(jù)時(shí),由CPU發(fā)出START命令,開啟外設(shè)準(zhǔn)備數(shù)據(jù)。同時(shí)中止允許位打開。2.現(xiàn)運(yùn)行進(jìn)程放棄CPU,等候輸入完成。進(jìn)程調(diào)度程序選擇一個(gè)新進(jìn)程在CPU上運(yùn)行。3.當(dāng)數(shù)據(jù)從對(duì)應(yīng)設(shè)備送到緩沖區(qū)后,由I/O控制器發(fā)中止請(qǐng)求,CPU接到請(qǐng)求后,中止現(xiàn)運(yùn)行進(jìn)程,轉(zhuǎn)中止處理程序執(zhí)行數(shù)據(jù)傳輸。4.在以后某個(gè)時(shí)刻,被中止進(jìn)程因?yàn)槿〉昧藬?shù)據(jù)而繼續(xù)運(yùn)行。12第12頁中止方式特點(diǎn)1.因?yàn)镮/O控制器數(shù)據(jù)緩沖存放器比較小,裝滿數(shù)據(jù)后發(fā)生中止,所以一次數(shù)據(jù)傳輸中會(huì)造成屢次中止,消耗大量CPU時(shí)間。2.因?yàn)橄到y(tǒng)中設(shè)備較多,中止太多,會(huì)使CPU無法響應(yīng)中止,造成數(shù)據(jù)丟失。3.假如外部設(shè)備速度也比較高,CPU不能及時(shí)取走緩沖存放器數(shù)據(jù),那么就會(huì)出現(xiàn)數(shù)據(jù)丟失。13第13頁7.2.3DMA方式當(dāng)需要傳輸大量數(shù)據(jù)時(shí),程序I/O方式和中止I/O方式都會(huì)浪費(fèi)大量CPU時(shí)間,所以,需要一個(gè)更有效技術(shù)處理大量數(shù)據(jù)傳輸DMA(直接存放器存取)方式:當(dāng)處理器希望讀或?qū)懸粔K數(shù)據(jù)時(shí),它給DMA模塊產(chǎn)生一條指令,發(fā)送以下信息包括I/O設(shè)備地址開始讀或?qū)懘娣牌鲉卧枰x或?qū)懽謹(jǐn)?shù)14第14頁DMA方式處理器然后繼續(xù)其它工作,而把這個(gè)操作委托給DMA模塊,由該模塊處理。DMA模塊直接從存放器中或者往存放器中傳送整個(gè)數(shù)據(jù)塊,每次傳送一個(gè)字。當(dāng)傳送完成后,DMA模塊給處理器發(fā)一個(gè)中止信號(hào)。所以,只有在開始傳送和結(jié)束傳送時(shí)才會(huì)用處處理器15第15頁DMA方式DMA方式特點(diǎn):作為高速外圍設(shè)備與內(nèi)存之間進(jìn)行成批數(shù)據(jù)交換,但不對(duì)數(shù)據(jù)作加工處理。數(shù)據(jù)傳輸基本單位是數(shù)據(jù)塊,I/O操作類型比較簡(jiǎn)單需要使用一個(gè)專門DMA控制器(DMAC,DirectMemoryAccessController)。DMAC中有控制、狀態(tài)存放器、傳送字節(jié)計(jì)數(shù)器、內(nèi)存地址存放器和數(shù)據(jù)緩沖存放器16第16頁DMA方式采取偷竊總線控制權(quán)方法,由DMAC送出內(nèi)存地址和發(fā)出內(nèi)存讀、設(shè)備寫或設(shè)備讀、內(nèi)存寫控制信號(hào)來完成內(nèi)存與設(shè)備之間直接數(shù)據(jù)傳送,而不用CPU干預(yù)。有DMA傳送甚至不經(jīng)過DMAC數(shù)據(jù)緩沖存放器再吞吐,傳輸速率非常高。僅在傳送一個(gè)或多個(gè)數(shù)據(jù)塊開始和結(jié)束時(shí),才需CPU干預(yù),整塊數(shù)據(jù)傳送是在控制器控制下完成17第17頁7.2.4I/O通道方式通道控制方式與DMA方式類似,也是一個(gè)以內(nèi)存為中心,實(shí)現(xiàn)設(shè)備與內(nèi)存直接交換數(shù)據(jù)控制方式。與DMA方式相比,DMA方式每次僅傳輸一個(gè)數(shù)據(jù)塊數(shù)據(jù),而通道卻能夠一次傳輸若干個(gè)數(shù)據(jù)塊數(shù)據(jù)。18第18頁I/O通道方式通道控制方式數(shù)據(jù)輸入過程以下當(dāng)進(jìn)程要求輸入數(shù)據(jù)時(shí),CPU發(fā)出驅(qū)動(dòng)指令指明I/O操作、設(shè)備號(hào)和對(duì)應(yīng)通道對(duì)應(yīng)通道接收到CPU發(fā)來驅(qū)動(dòng)指令后,把存放在內(nèi)存中通道指令程序讀出,并執(zhí)行通道程序,控制設(shè)備將數(shù)據(jù)傳送到內(nèi)存指定區(qū)域若數(shù)據(jù)傳送結(jié)束,則向CPU發(fā)出中止請(qǐng)求。CPU收到中止信號(hào)后轉(zhuǎn)中止處理程序,喚醒等候輸入完成進(jìn)程,并返回被中止程序19第19頁20第20頁通道指令通道指令普通包含:內(nèi)存地址(數(shù)據(jù))、傳送方向、數(shù)據(jù)長度、I/O設(shè)備地址信息、特征信息。通道指令在進(jìn)程要求數(shù)據(jù)時(shí)由系統(tǒng)自動(dòng)生成。Wirte002501850(寫/通道指令未結(jié)束/統(tǒng)計(jì)未結(jié)束/250個(gè)單元/內(nèi)存地址1850)Write11250780(寫/通道指令結(jié)束/統(tǒng)計(jì)結(jié)束/250個(gè)單元/內(nèi)存地址780)21第21頁通道方式特點(diǎn)設(shè)備與內(nèi)存直接交換數(shù)據(jù)。數(shù)據(jù)傳送方向、內(nèi)存地址、長度等是由通道來控制。DMA中這些是由CPU控制。一個(gè)通道能夠控制多臺(tái)設(shè)備與內(nèi)存進(jìn)行數(shù)據(jù)交換。DMA方式每臺(tái)設(shè)備最少一個(gè)DMA控制器。一個(gè)通道能夠以分時(shí)方式同時(shí)執(zhí)行幾個(gè)通道指令。22第22頁7.3中止技術(shù)7.3.1中止基本思想7.3.2中止分類與優(yōu)先級(jí)7.3.3軟中止7.3.4中止處理過程23第23頁7.3.1中止基本思想定義:中止是指計(jì)算機(jī)在執(zhí)行期間,系統(tǒng)內(nèi)發(fā)生任何非尋?;蝾A(yù)期急需處理事件,使得CPU暫時(shí)中止當(dāng)前進(jìn)程而轉(zhuǎn)去執(zhí)行對(duì)應(yīng)事件處理程序,待處理完成后又返回原來被中止處繼續(xù)執(zhí)行或調(diào)度新進(jìn)程執(zhí)行過程。中止源:引發(fā)發(fā)生中止事件叫做中止源。中止請(qǐng)求:中止源向CPU發(fā)送中止信號(hào)叫做中止請(qǐng)求。中止響應(yīng):CPU收到中止請(qǐng)求后轉(zhuǎn)對(duì)應(yīng)事件處理程序稱為中止響應(yīng)。24第24頁中止基本思想禁止中止(關(guān)中止):因?yàn)樘幚頇C(jī)狀態(tài)字PSW中止允許位可能被去除,造成CPU不響應(yīng)中止,直到PSW中止許可位被重新設(shè)置,即開中止。開中止和關(guān)中止都是為保障程序執(zhí)行原子性。中止請(qǐng)求、關(guān)中止、開中止都是由硬件實(shí)現(xiàn)。中止屏蔽:中止請(qǐng)求產(chǎn)生之后,系統(tǒng)用軟件方式有選擇地封鎖部分中止,而允許其它中止依然能夠得到響應(yīng)。有些中止是不可屏蔽,它們含有最高中止響應(yīng)級(jí)別。25第25頁7.3.2中止分類與優(yōu)先級(jí)依據(jù)中止源產(chǎn)生條件,可把中止分為內(nèi)部中止和外部中止:內(nèi)部中止:來自處理機(jī)和內(nèi)存中止。內(nèi)中止也叫做陷阱(trap)。包含程序運(yùn)算引發(fā)各種錯(cuò)誤,比如:數(shù)據(jù)格式錯(cuò)、非法指令等。外部中止:除了內(nèi)部中止之外,其它來自外部中止都是外中止。比如:I/O設(shè)備發(fā)出I/O中止、外部信號(hào)中止等。中止和陷入按輕重緩急分為不一樣優(yōu)先級(jí)。CPUPSW中也設(shè)有優(yōu)先級(jí)。假如中止源優(yōu)先級(jí)高于PSW則處理機(jī)響應(yīng)該中止;反之,屏蔽請(qǐng)求。中止源優(yōu)先級(jí)是固定,處理機(jī)優(yōu)先級(jí)則依據(jù)執(zhí)行情況由系統(tǒng)程序動(dòng)態(tài)設(shè)定。26第26頁中止和陷入?yún)^(qū)分陷阱通常由處理機(jī)正在執(zhí)行指令引發(fā),而中止是由與現(xiàn)行指令無關(guān)中止引發(fā)。陷入處理程序提供服務(wù)是為當(dāng)前進(jìn)程,而中止處理程序提供服務(wù)則不是為當(dāng)前進(jìn)程。CPU在執(zhí)行完一條指令后,下一條指令開始之前響應(yīng)中止,而中止執(zhí)行過程中又能夠響應(yīng)陷阱。有系統(tǒng)將中止處理程序在系統(tǒng)上下文上運(yùn)行,而陷入在用戶上下文上運(yùn)行。27第27頁7.3.3軟中止定義:通訊進(jìn)程之間相互發(fā)送信號(hào)來模擬硬件中止。一個(gè)進(jìn)程A向進(jìn)程B發(fā)送一個(gè)軟中止信號(hào)后,當(dāng)進(jìn)程B占用處理機(jī)時(shí),馬上轉(zhuǎn)去執(zhí)行該軟中止信號(hào)所對(duì)應(yīng)程序。有些系統(tǒng)中,將陷入劃歸到軟中止處理。如當(dāng)前執(zhí)行指令產(chǎn)生陷阱,則向當(dāng)前執(zhí)行進(jìn)程本身發(fā)出軟中止信號(hào),馬上進(jìn)入陷阱處理程序。28第28頁7.3.4中止處理過程1.CPU檢驗(yàn)是否有響應(yīng)中止條件:中止請(qǐng)求、CPU允許中止。條件不滿足則中止處理程序不處理。2.假如CPU響應(yīng)中止,則先關(guān)中止,以確保在中止處理過程中不被中止。3.保留中止現(xiàn)場(chǎng)。4.分析中止原因,調(diào)用中止處理子程序。假如同時(shí)有多個(gè)中止,則響應(yīng)級(jí)別最高中止。29第29頁中止向量不一樣中止源有不一樣中止處理子程序。這些子程序入口地址和不一樣處理機(jī)狀態(tài)字一起組成中止向量。存放在內(nèi)存特定單元中。依據(jù)中止源系統(tǒng)查詢中止向量表,然后轉(zhuǎn)去對(duì)應(yīng)處理子程序。30第30頁7.4緩沖技術(shù)緩沖引入緩沖種類緩沖池管理31第31頁7.4.1緩沖引入處理機(jī)處理速度很高,為了使處理機(jī)速度和外部設(shè)備速度匹配,普通在處理機(jī)和外部設(shè)備之間加一個(gè)或多個(gè)緩沖區(qū),到達(dá)設(shè)備之間和設(shè)備與處理機(jī)之間并行處理目標(biāo)。為了降低中止次數(shù)。比如:當(dāng)計(jì)算進(jìn)程把大量數(shù)據(jù)輸出到打印機(jī)上,因?yàn)镃PU輸出速度大大高于打印機(jī)速度,所以,CPU只好停下來等候。而CPU計(jì)算時(shí),打印機(jī)卻空閑。兩種緩沖方案:用硬件緩沖存放器;內(nèi)存緩沖區(qū)32第32頁7.4.2緩沖種類單緩沖:在設(shè)備和處理機(jī)之間設(shè)置一個(gè)緩沖器。單緩沖不能實(shí)現(xiàn)設(shè)備之間并行操作。雙緩沖:兩個(gè)緩沖器,以處理兩個(gè)設(shè)備之間并行。但多個(gè)設(shè)備情況下依然不可行。多緩沖:多個(gè)緩沖區(qū)連接起來組成兩部分,一部分專門用于輸入緩沖,另一部分專門用于輸出緩沖。緩沖池:將多個(gè)緩沖區(qū)連接起來統(tǒng)一管理,既可用于輸入,又可用于輸出。33第33頁7.4.3緩沖池管理緩沖池由多個(gè)緩沖區(qū)組成。每個(gè)緩沖區(qū)由兩部分組成:一是緩沖區(qū)首部,包含設(shè)備號(hào)、數(shù)據(jù)塊號(hào)、緩沖區(qū)號(hào)、互斥標(biāo)識(shí)位、連接指針;另一部分是存放數(shù)據(jù)為緩沖體。系統(tǒng)將各個(gè)緩沖區(qū)按照用途分為三種隊(duì)列:空閑隊(duì)列、裝滿輸入數(shù)據(jù)隊(duì)列、裝滿輸出數(shù)據(jù)隊(duì)列。除了這三種隊(duì)列外,系統(tǒng)還提供四個(gè)工作緩沖區(qū),用于進(jìn)行緩沖區(qū)相關(guān)操作:hin:收容設(shè)備輸入數(shù)據(jù)緩沖區(qū)sin提取設(shè)備輸入數(shù)據(jù)緩沖
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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年度網(wǎng)絡(luò)安全防護(hù)系統(tǒng)建設(shè)公司正規(guī)合同3篇
- 二零二五年度公司對(duì)公司展覽展示空間租賃合同3篇
- 2025年度生物科技企業(yè)職工招聘與生物多樣性保護(hù)合同3篇
- 二零二五年度礦產(chǎn)資源開發(fā)承包合同3篇
- 養(yǎng)老院院民2025年度社區(qū)活動(dòng)出行安全協(xié)議3篇
- 2025年度建筑材料供貨與建筑節(jié)能改造合同3篇
- 二零二五年度全屋衣柜定制及安裝一體化合同3篇
- 二零二五年度文化創(chuàng)意產(chǎn)業(yè)合伙合同協(xié)議3篇
- 2025年度企業(yè)合規(guī)管理委托代理合同3篇
- 2025年度全新出售房屋買賣智能家居集成協(xié)議3篇
- 缺血性腸病完整版本課件
- 汽車起重機(jī)基本結(jié)構(gòu)、工作原理課件
- ××領(lǐng)導(dǎo)班子及成員分析研判報(bào)告(模板)
- 08S305-小型潛水泵選用及安裝圖集
- 視頻監(jiān)控室值班記錄表
- 四川2020版清單定額
- 教材編寫工作總結(jié)
- 企業(yè)員工上下班交通安全培訓(xùn)(簡(jiǎn)詳共2份)
- 城市高密度建成區(qū)合流制溢流污染系統(tǒng)研究-黃孝河機(jī)場(chǎng)河水環(huán)境綜合治理項(xiàng)目實(shí)踐
- word 公章 模板
- T∕ZSQX 008-2020 建設(shè)工程全過程質(zhì)量行為導(dǎo)則
評(píng)論
0/150
提交評(píng)論