![北方工業(yè)大學操作系統(tǒng)設備管理課件_第1頁](http://file4.renrendoc.com/view/de86761559cec467eaaf4e5d13f28a81/de86761559cec467eaaf4e5d13f28a811.gif)
![北方工業(yè)大學操作系統(tǒng)設備管理課件_第2頁](http://file4.renrendoc.com/view/de86761559cec467eaaf4e5d13f28a81/de86761559cec467eaaf4e5d13f28a812.gif)
![北方工業(yè)大學操作系統(tǒng)設備管理課件_第3頁](http://file4.renrendoc.com/view/de86761559cec467eaaf4e5d13f28a81/de86761559cec467eaaf4e5d13f28a813.gif)
![北方工業(yè)大學操作系統(tǒng)設備管理課件_第4頁](http://file4.renrendoc.com/view/de86761559cec467eaaf4e5d13f28a81/de86761559cec467eaaf4e5d13f28a814.gif)
![北方工業(yè)大學操作系統(tǒng)設備管理課件_第5頁](http://file4.renrendoc.com/view/de86761559cec467eaaf4e5d13f28a81/de86761559cec467eaaf4e5d13f28a815.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
操作系統(tǒng)
OperatingSystem北方工業(yè)大學計算機系NorthChinaUniversityofTechnologyDepartmentofComputer授課教師:宋麗華第五章設備管理5.0引言5.1I/O系統(tǒng)5.2I/O控制方式5.3緩沖管理5.4I/O軟件5.5設備分配5.6磁盤存儲器的管理第五章設備管理5.0引言★設備管理的基本任務:完成用戶提出的I/O請求,提高I/O速率和設備利用率★設備管理的功能:設備分配;設備控制;緩沖的管理功能;虛擬設備。第五章設備管理5.0引言5.1I/O系統(tǒng)5.2I/O控制方式5.3緩沖管理1)字符設備2)塊設備★設備的分類使用特性數(shù)據(jù)傳輸率信息交換單位設備共享屬性
5.1.1I/O設備1)存儲設備2)I/O設備1)高速設備2)中速設備3)低速設備1)獨占設備2)共享設備3)虛擬設備5.1.1I/O設備★設備與控制器之間的接口
通常設備不是直接與CPU進行通信,而是與設備控制器通信。圖5-1設備與控制器之間的接口5.1.2設備控制器★設備控制器的基本功能接收和識別命令數(shù)據(jù)緩沖和交換標識和報告設備的狀態(tài)地址識別差錯控制5.1.2
設備控制器數(shù)據(jù)寄存器控制/狀態(tài)寄存器I/O邏輯控制器與設備接口1控制器與設備接口i數(shù)據(jù)線地址線控制線CPU與控制器接口控制器與設備接口狀態(tài)控制數(shù)據(jù)數(shù)據(jù)狀態(tài)控制……★設備控制器的組成圖5-2控制器的組成5.1I/O系統(tǒng)
★5.1.4總線系統(tǒng)圖5-3單總線型I/O系統(tǒng)結構第五章設備管理
5.0引言5.1I/0系統(tǒng)
5.2I/O控制方式5.3緩沖管理5.2I/O控制方式
★5.2.1程序I/O方式設備控制器設置狀態(tài)寄存器以表示外部設備的工作狀態(tài)。CPU通過不斷讀取狀態(tài)寄存器以查詢外部設備的狀態(tài)。在外部設備準備就緒的時候,CPU通過控制器中的數(shù)據(jù)寄存器與外設完成數(shù)據(jù)交換。5.2I/O控制方式
向I/O控制器發(fā)讀命令讀I/O控制器的狀態(tài)從I/O控制器中讀入字向存儲器中寫字CPUI/OI/OCPU未就緒出錯就緒I/OCPUCPU內(nèi)存?zhèn)魉屯瓿蓹z查狀態(tài)是,下一條指令未完
★5.2.1程序I/O方式5.2.1程序I/O方式★程序I/O方式的特點I/O操作由CPU直接完成。外設與CPU完全串行工作。外設速度慢,CPU速度快,在外設準備過程中,CPU處在不斷的查詢之中,CPU的效率得到了極大的浪費。5.2I/O控制方式
★5.2.2中斷驅(qū)動I/O控制方式在I/O設備輸入數(shù)據(jù)的過程中,無須CPU干預,因而CPU與I/O設備可并行工作。僅當輸完一個數(shù)據(jù)時,設備控制器以中斷的方式通知CPU取數(shù)據(jù)。5.2.2中斷驅(qū)動I/O控制方式
向I/O控制器發(fā)讀命令讀I/O控制器的狀態(tài)從I/O控制器中讀入字向存儲器中寫字CPUI/O,CPU做其它事了I/OCPU出錯就緒I/OCPUCPU內(nèi)存?zhèn)魉屯瓿蓹z查狀態(tài)是,下一條指令未完數(shù)據(jù)進入數(shù)據(jù)寄存器,發(fā)中斷從外部設備讀取一塊數(shù)據(jù)到存儲器,每次讀一個字的數(shù)據(jù)。CPU與I/O設備并行操作★中斷I/O方式的特點I/O操作仍然由CPU完成在外設準備階段,CPU與外設是并行工作的與程序I/O相比大大提高了CPU的利用率,但是從外部設備讀取一塊數(shù)據(jù)到存儲器時,每讀一個字的數(shù)據(jù)產(chǎn)生一次中斷。5.2.2中斷驅(qū)動I/O控制方式
5.2I/O控制方式
★5.2.1直接存儲器訪問(DMA)I/O方式數(shù)據(jù)傳輸基本單位是數(shù)據(jù)塊從設備直接送入內(nèi)存或相反。整塊數(shù)據(jù)的傳輸是在控制器的控制下完成的。僅在開始和結束時才需CPU干預。向I/O控制器發(fā)布讀塊命令讀DMA控制器的狀態(tài)下條指令CPUDMACPU做其它事中斷DMACPU5.2.3DMAI/O控制方式
DR數(shù)據(jù)寄存器MAR內(nèi)存地址寄存器DC數(shù)據(jù)計數(shù)器CR命令/狀態(tài)寄存器……命令系統(tǒng)總線DMA控制器內(nèi)存主機—控制器接口CPU★DMA控制器的組成圖5-4DMA控制器的組成5.2.3DMAI/O控制方式
★DMA工作過程設置MAR和DC初值啟動DMA傳送命令挪用CPU工作周期傳送數(shù)據(jù)字存儲器地址增1數(shù)據(jù)計數(shù)器減1DC=0?請求中斷NY★DMA控制器的連接和傳送主存CPUDMA控制器外設HRQHLDADREQDACKIOWIORMEMWMEMR數(shù)據(jù)總線地址總線DREQDREQDACKDACKHRQHRQHLDAHLDADMA控制器CPUCPUCPUDMA控制器CPU獲得總線控制權CPU獲得總線控制權DMA控制器獲得總線控制權★DMAI/O方式的特點CPU與I/O設備在更大的程度上并行工作,效率更高。DMA方式適合高速批量的數(shù)據(jù)傳輸,如視頻顯示刷新、磁盤存儲系統(tǒng)的讀寫,存儲器到存儲器的傳輸?shù)?。DMA控制器取代CPU接管地址總線的控制權。使CPU訪問總線時速度會變慢。5.2.3DMAI/O控制方式
對大型系統(tǒng),設備多,數(shù)據(jù)傳輸頻繁,DMA造成的總線沖突仍然影響CPU的效率。解決辦法:采用I/O通道方式進行數(shù)據(jù)交換。執(zhí)行專用指令,完成數(shù)據(jù)交換專用處理器,受主CPU控制(啟停等)主存CPU通道設備控制器外設5.2I/O控制方式圖5-5通道的位置5.2I/O控制方式★5.2.4I/O通道控制方式通道有自己的指令系統(tǒng),專門負責輸入/輸出工作的處理機。通過通道程序控制I/O設備完成復雜的I/O操作。沒有內(nèi)存,和CPU共享內(nèi)存。分類:字節(jié)多路通道,數(shù)組選擇通道,數(shù)組多路通道★字節(jié)多路通道
通道不間斷地、輪流地啟動每個設備控制器。是一種簡單的共享通道,主要為多臺低速或中速的字符設備服務。5.2.4I/O通道控制方式…A1A1A2A2B2B2B1B1C1C1C2C2通道………A1A1A2A2B1B1B2B2C1C2C1C2★數(shù)組選擇通道
選擇通道又稱高速通道,在物理上它也可以連接多個設備,但這些設備不能同時工作,在一段時間內(nèi)通道只能選擇一臺設備進行數(shù)據(jù)傳送,此時該設備能獨占整個通道。5.2.4I/O通道控制方式★數(shù)組多路通道
數(shù)組多路通道有多個子通道,可以執(zhí)行多路通道程序,即像字節(jié)多路通道那樣,所有子通道分時共享總通道;又可以用選擇通道那樣的方式成組傳送數(shù)據(jù)。即具有多路并行操作的能力;又具有很高的數(shù)據(jù)傳送速率。5.2.4I/O通道控制方式A1A1A2A2B2B2B1B1C1C1C2C2通道…………………A1A2B1B2C1C2A1A2B1B2C1C2通道類型字節(jié)多路數(shù)組多路選擇通道數(shù)據(jù)寬度
單字節(jié)
定長塊(字)
不定長塊(字)
適用范圍大量低速設備
大量高速設備優(yōu)先級高的高速設備
工作方式字節(jié)交叉
成組交叉
獨占通道
共享性
分時共享
分時共享
獨占
選擇設備次數(shù)
多次
多次
一次
★三種通道的比較
5.2.4I/O通道控制方式通道類型字節(jié)多路數(shù)組多路選擇通道數(shù)據(jù)寬度
單字節(jié)
定長塊(字)
不定長塊(字)
適用范圍大量低速設備
大量高速設備優(yōu)先級高的高速設備
工作方式字節(jié)交叉
成組交叉
獨占通道
共享性
分時共享
分時共享
獨占
選擇設備次數(shù)
多次
多次
一次通道類型字節(jié)多路數(shù)組多路選擇通道數(shù)據(jù)寬度
單字節(jié)
定長塊(字)
不定長塊(字)
適用范圍大量低速設備
大量高速設備優(yōu)先級高的高速設備
工作方式字節(jié)交叉
成組交叉
獨占通道
共享性
分時共享
分時共享
獨占
選擇設備次數(shù)
多次
多次
一次通道類型字節(jié)多路數(shù)組多路選擇通道數(shù)據(jù)寬度
單字節(jié)
定長塊(字)
不定長塊(字)
適用范圍大量低速設備
大量高速設備優(yōu)先級高的高速設備
工作方式字節(jié)交叉
成組交叉
獨占通道
共享性
分時共享
分時共享
獨占
選擇設備次數(shù)
多次
多次
一次通道類型字節(jié)多路數(shù)組多路選擇通道數(shù)據(jù)寬度
單字節(jié)
定長塊(字)
不定長塊(字)
適用范圍大量低速設備
大量高速設備優(yōu)先級高的高速設備
工作方式字節(jié)交叉
成組交叉
獨占通道
共享性
分時共享
分時共享
獨占
選擇設備次數(shù)
多次
多次
一次通道類型字節(jié)多路數(shù)組多路選擇通道數(shù)據(jù)寬度
單字節(jié)
定長塊(字)
不定長塊(字)
適用范圍大量低速設備
大量高速設備優(yōu)先級高的高速設備
工作方式字節(jié)交叉
成組交叉
獨占通道
共享性
分時共享
分時共享
獨占
選擇設備次數(shù)
多次
多次
一次通道類型字節(jié)多路數(shù)組多路選擇通道數(shù)據(jù)寬度
單字節(jié)
定長塊(字)
不定長塊(字)
適用范圍大量低速設備
大量高速設備優(yōu)先級高的高速設備
工作方式字節(jié)交叉
成組交叉
獨占通道
共享性
分時共享
分時共享
獨占
選擇設備次數(shù)
多次
多次
一次通道類型字節(jié)多路數(shù)組多路選擇通道數(shù)據(jù)寬度
單字節(jié)
定長塊(字)
不定長塊(字)
適用范圍大量低速設備
大量高速設備優(yōu)先級高的高速設備
工作方式字節(jié)交叉
成組交叉
獨占通道
共享性
分時共享
分時共享
獨占
選擇設備次數(shù)
多次
多次
一次★通道類型5.2.4I/O通道控制方式5.2.4I/O通道控制方式
★工作過程:CPU向I/O通道發(fā)出一條I/O指令,給出所要執(zhí)行的通道程序的首地址和要訪問的I/O設備。通道接到CPU發(fā)來的指令后,通過執(zhí)行通道程序便可完成CPU指定的I/O任務5.2.4I/O通道控制方式
★通道程序:由一系列的通道指令所構成。每條指令包含:操作碼、內(nèi)存地址、計數(shù)、通道程序結束位P(P=1表示指令是通道程序最后一條)、記錄結束標志R(R=0表示指令與下一條指令所處理的數(shù)據(jù)同屬一個記錄)。操作PR計數(shù)內(nèi)存地址WRITE0080813WRITE001401034WRITE01605830WRITE013002000WRITE002501850WRITE112507205.2.4I/O通道控制方式
★通道執(zhí)行通道程序來實現(xiàn)和管理I/O,與DMA方式相比,通道所需的CPU干預更少,且可以做到一個通道控制多臺設備,進一步減輕了CPU的負擔?!顲PU、通道和I/O設備并行工作計算機I/O通道1I/O通道2控制器控制器控制器控制器設備設備設備設備5.2.4I/O通道★“瓶頸”問題
多通路I/O系統(tǒng)第五章設備管理
5.0引言5.1I/O系統(tǒng)
5.2I/O控制方式
5.3緩沖管理5.3緩沖管理★緩沖區(qū)的引入緩和CPU與I/O設備間速度不匹配的矛盾。
減少對CPU的中斷頻率,放寬對CPU中斷響應時間的限制。提高CPU和I/O設備之間的并行性。5.3.1緩沖的引入利用緩沖寄存器實現(xiàn)緩沖5.3.2單緩沖和雙緩沖★單緩沖
單緩沖工作示意圖MAX(C,T)+M系統(tǒng)對每一塊數(shù)據(jù)的處理時間可表示為:★單緩沖
字符設備輸入時,緩沖區(qū)用于暫存用戶輸入的一行數(shù)據(jù),輸入期間用戶進程被掛起。當用戶進程有第二行數(shù)據(jù)輸出時,若第一行數(shù)據(jù)尚未提取完畢,則此時用戶進程應阻塞。5.3.2單緩沖和雙緩沖5.3.2單緩沖和雙緩沖★雙緩沖
雙緩沖工作示意圖★雙緩沖
系統(tǒng)處理一塊數(shù)據(jù)時間可表示為:MAX(C,T)如果C<T,則可使設備連續(xù)輸入。若C>T,則可使CPU不必等待設備輸入。字符設備輸入時,當用戶進程有第二行數(shù)據(jù)輸出時,若第一行數(shù)據(jù)尚未提取完畢,則此時用戶進程也不必阻塞。5.3.2單緩沖和雙緩沖5.3.2單緩沖和雙緩沖
雙機通信時緩沖區(qū)的設置【11年考研31題】某文件占10個磁盤塊,現(xiàn)要把該文件磁盤塊逐個讀入主存緩沖區(qū),并送用戶區(qū)進行分析,假設一個緩沖區(qū)與一個磁盤塊大小相同,把一個磁盤塊讀入緩沖區(qū)的時間為100us,將緩沖區(qū)的數(shù)據(jù)傳送到用戶區(qū)的時間是50us,CPU對一塊數(shù)據(jù)進行分析的時間為50us。在單緩沖區(qū)和雙緩沖區(qū)結構下,讀入并分析完該文件的時間分別是() A.1500us、1000usB.1550us、1100us C.1550us、1550usD.2000us、2000us考研真題B5.3.3循環(huán)緩沖★循環(huán)緩沖的組成空緩沖區(qū)滿緩沖區(qū)循環(huán)緩沖5.3.3循環(huán)緩沖★
循環(huán)緩沖區(qū)的使用(以計算進程為例)Getbuf過程1)將Nextg所指示的工作區(qū)修改為現(xiàn)行工作區(qū)。2)Nextg移向下一個G緩沖區(qū)。Releasebuf過程1)計算進程取數(shù)完畢后,將工作緩沖區(qū)由C改為空緩沖區(qū)R
5.3.3循環(huán)緩沖★進程同步
使用循環(huán)緩沖可以使輸入進程和計算進程并行執(zhí)行,但是可能出現(xiàn)如下情況:Nexti指針追趕上Nextg指針。Nextg指針追趕上Nexti指針。
全空,阻塞計算進程全滿,阻塞輸入進程5.3.4緩沖池★緩沖池的組成空緩沖隊列emq輸入隊列inq:裝滿輸入數(shù)據(jù)的隊列輸出隊列outq:裝滿輸出數(shù)據(jù)的隊列四種工作緩沖區(qū)5.3.4緩沖池★Getbuf過程和Putbuf過程ProcedureGetbuf(type)//從隊列取走緩沖區(qū)beginWait(RS(type));//RS(type)為資源信號量
Wait(MS(type));//MS(type)為互斥信號量B(number)∶=Takebuf(type);//輸出
Signal(MS(type));endProcedurePutbuf(type,number)//把緩沖區(qū)填入隊列begin
Wait(MS(type));Addbuf(type,number);//把number緩沖區(qū)輸入type隊列Signal(MS(type));
Signal(RS(type));end5.3.4緩沖池★緩沖區(qū)的工作方式1)收容輸入Getbuff(emq),
Putbuff(inq,hin)2)提取輸入Getbuff(inq),
Putbuff(emq,sin)3)收容輸出Getbuff(emq),
Putbuff(outq,hout)4)提取輸出Getbuff(out),
Putbuff(emq,sout)5.4I/O軟件5.5設備分配5.6磁盤存儲器的管理第五章設備管理5.4.1I/O軟件的設計目標和原則★I/O軟件的設計目標與具體設備無關統(tǒng)一命名對錯誤的處理緩沖技術設備的分配和釋放I/O控制方式5.4.1I/O軟件的設計目標和原則★
I/O系統(tǒng)的層次及功能
5.4.2中斷處理程序★喚醒被阻塞的驅(qū)動(程序)進程
當中斷處理程序開始執(zhí)行時,首先去喚醒處于阻塞狀態(tài)的驅(qū)動(程序)進程。如果是采用了信號量機制,則可通過執(zhí)行signal操作,將處于阻塞狀態(tài)的驅(qū)動(程序)進程喚醒;在采用信號機制時,將發(fā)送一信號給阻塞進程。5.4.2中斷處理程序★保護被中斷進程的CPU環(huán)境
中斷現(xiàn)場保護示意圖5.4.2中斷處理程序★轉(zhuǎn)入相應的設備處理程序
1)由處理機對各個中斷源進行測試,以確定引起本次中斷的I/O設備;
2)發(fā)送一應答信號給發(fā)出中斷請求的進程,使之消除該中斷請求信號; 3)然后將相應的設備中斷處理程序的入口地址裝入到程序計數(shù)器中,使處理機轉(zhuǎn)向中斷處理程序。
5.4.2中斷處理程序★中斷處理對于不同的設備,有不同的中斷處理程序。該程序首先從設備控制器中讀出設備狀態(tài),以判別本次中斷是正常完成中斷,還是異常結束中斷。進行新一輪的數(shù)據(jù)傳送或根據(jù)發(fā)生異常的原因做相應的處理。
5.4.2中斷處理程序★恢復被中斷進程的現(xiàn)場5.4.2中斷處理程序★中斷處理流程5.4.3設備驅(qū)動程序★設備驅(qū)動程序的功能
(1)接收由I/O進程發(fā)來的命令和參數(shù),并將命令中的抽象要求轉(zhuǎn)換為具體要求。例如,將磁盤塊號轉(zhuǎn)換為磁盤的盤面、磁道號及扇區(qū)號。
(2)檢查用戶I/O請求的合法性。
5.4.3設備驅(qū)動程序★設備驅(qū)動程序的功能(3)發(fā)出I/O命令。
(4)及時響應由控制器或通道發(fā)來的中斷請求,并根據(jù)其中斷類型調(diào)用相應的中斷處理程序進行處理。
(5)對于設置有通道的計算機系統(tǒng),驅(qū)動程序還應能夠根據(jù)用戶的I/O請求,自動地構成通道程序。5.4.3設備驅(qū)動程序★設備驅(qū)動程序的處理過程將抽象要求轉(zhuǎn)換為具體要求
2.檢查I/O請求的合法性
3.讀出和檢查設備的狀態(tài)
4.傳送必要的參數(shù)
5.工作方式的設置6.啟動I/O設備5.4.3設備驅(qū)動程序★設備驅(qū)動程序的特點(1)驅(qū)動程序主要是指在請求I/O的進程與設備控制器之間的一個通信和轉(zhuǎn)換程序。
(2)驅(qū)動程序與設備控制器和I/O設備的硬件特性緊密相關,因而對不同類型的設備應配置不同的驅(qū)動程序。
(3)驅(qū)動程序與I/O設備所采用的I/O控制方式緊密相關。
(4)由于驅(qū)動程序與硬件緊密相關,因而其中的一部分必須用匯編語言書寫。5.4.4設備獨立性軟件★設備獨立性的概念也稱為設備無關性,其基本含義是:應用程序獨立于具體使用的物理設備。為了實現(xiàn)設備獨立性而引入了邏輯設備和物理設備這兩個概念。在應用程序中,使用邏輯設備名稱來請求使用某類設備;而系統(tǒng)在實際執(zhí)行時,還必須使用物理設備名稱。5.4.4設備獨立性軟件★設備獨立性的概念
在實現(xiàn)了設備獨立性的功能后,可帶來以下兩方面的好處。
1)設備分配時的靈活性系統(tǒng)動態(tài)分配
2)易于實現(xiàn)I/O重定向修改邏輯設備表5.4.4設備獨立性軟件★邏輯設備名到物理設備名映射的實現(xiàn)
邏輯設備表5.4.4設備獨立性軟件★設備獨立性軟件1)執(zhí)行所有設備的公有操作;①對獨立設備的分配與回收;②將邏輯設備名映射為物理設備名,找到相應物理設備的驅(qū)動程序;③對設備進行保護,禁止用戶直接訪問設備;④緩沖管理,即對字符設備和塊設備的緩沖區(qū)進行有效的管理,以提高I/O的效率;⑤差錯控制。只處理那些設備驅(qū)動程序無法處理的錯誤
5.4.4設備獨立性軟件★設備獨立性軟件2)向用戶層(或文件層)軟件提供統(tǒng)一接口
無論何種設備,它們向用戶所提供的接口應該是相同的。例如,對各種設備的讀操作,在應用程序中都使用read;而對各種設備的寫操作,也都使用write。
★用戶層軟件必須通過系統(tǒng)調(diào)用取得操作系統(tǒng)服務!【09年考研32題】程序員利用系統(tǒng)調(diào)用打開I/O設備時,通常使用的設備標識是()
A.邏輯設備名B.物理設備名C.主設備號D.從設備號【10年考研32題】本地用戶通過鍵盤登錄系統(tǒng)時,首先獲得鍵盤輸入信息的程序是(
)
A.命令解釋程序B.中斷處理程序
C.系統(tǒng)調(diào)用程序D.用戶登錄程序考研真題A
B【11年考研26題】用戶程序發(fā)出磁盤I/O請求后,系統(tǒng)的正確處理流程是() A.用戶程序→系統(tǒng)調(diào)用處理程序→中斷處理程序→設備驅(qū)動程序
B.用戶程序→系統(tǒng)調(diào)用處理程序→設備驅(qū)動程序→中斷處理程序
C.用戶程序→設備驅(qū)動程序→系統(tǒng)調(diào)用處理程序→中斷處理程序
D.用戶程序→設備驅(qū)動程序→中斷處理程序→系統(tǒng)調(diào)用處理程序考研真題B【12年考研24題】中斷處理和子程序調(diào)用都需要壓棧以保護現(xiàn)場,中斷處理一定會保存而子程序調(diào)用不需要保存其內(nèi)容的是()。
A.程序計數(shù)器 B.程序狀態(tài)字寄存器
C.通用數(shù)據(jù)寄存器 D.通用地址寄存器【12年考研26題】操作系統(tǒng)的I/O子系統(tǒng)通常由四個層次組成,每一層明確定義了與鄰近層次的接口,其合理的層次組織排列順序是()。
A.用戶級I/O軟件、設備無關軟件、設備驅(qū)動程序、中斷處理程序
B.用戶級I/O軟件、設備無關軟件、中斷處理程序、設備驅(qū)動程序
C.用戶級I/O軟件、設備驅(qū)動程序、設備無關軟件、中斷處理程序
D.用戶級I/O軟件、中斷處理程序、設備無關軟件、設備驅(qū)動程序。
考研真題BA5.4I/O軟件5.5設備分配5.6磁盤存儲器的管理第五章設備管理5.5.1設備分配中的數(shù)據(jù)結構★設備控制表DCT5.5.1設備分配中的數(shù)據(jù)結構★控制器控制表、通道控制表和系統(tǒng)設備表COCT、CHCT和SDT表5.5.2設備分配時應考慮的因素獨占設備
共享設備可虛擬設備★
設備分配算法★設備的固有屬性★
設備分配中的安全性
先來先服務優(yōu)先級高者優(yōu)先安全分配方式(請求后阻塞)
不安全分配方式(請求后繼續(xù)運行)5.5設備分配★5.5.3獨占設備的分配程序1)分配設備
2)
分配控制器
3)分配通道
5.5.4SPOOLing技術★什么是SPOOLing問題一:系統(tǒng)中的獨占設備有限,往往不能滿足需要,成為系統(tǒng)中的瓶頸,使許多進程因等待它們而阻塞。問題二:得到獨占設備的進程在整個運行期間占有該設備,但卻不經(jīng)常使用,導致設備的利用率低下。解決:通過虛擬獨占設備實現(xiàn)設備共享,提高設備的利用率和系統(tǒng)的效率。SPOOLING(simultaneousperipheraloperationson-line)假脫機技術是策略之一,即在聯(lián)機情況下實現(xiàn)的同時外圍操作。5.5.4SPOOLing技術★SPOOLing系統(tǒng)的組成內(nèi)存SPOOLING技術實現(xiàn)組成:(磁盤上)開辟“輸入井”和“輸出井”,用于收容輸入和輸出數(shù)據(jù);(內(nèi)存)輸入緩沖區(qū)和輸出緩沖區(qū),接收輸入設備來的數(shù)據(jù)并送往輸入井。暫存輸出井來的輸出數(shù)據(jù),送給輸出設備。輸入進程和輸出進程(輸入管理模塊、輸出管理模塊):將輸入數(shù)據(jù)從輸入設備暫存在輸入緩沖區(qū),再送到輸入井。輸出進程同理?!镙斎脒^程:當系統(tǒng)收到作業(yè)輸入請求信號后,輸入進程的讀過程負責將信息從輸入裝置中讀入輸入緩沖區(qū)。當緩沖區(qū)滿時,由寫過程將信息從緩沖區(qū)寫到輸入井中,讀過程和寫過程反復循環(huán),直到一個作業(yè)輸入完畢。5.5.4SPOOLing技術★輸出過程:
系統(tǒng)將輸出信息先放到輸出井,然后由輸出進程中讀過程從輸出井讀數(shù)據(jù)到緩沖區(qū),寫過程將緩沖區(qū)的數(shù)據(jù)寫到輸出設備上。5.5.4SPOOLing技術★當CPU需要輸入數(shù)據(jù)時,直接從輸入井讀入內(nèi)存;★輸出設備空閑時,再將輸出井中的數(shù)據(jù)經(jīng)過輸出緩沖區(qū)送到輸出設備上。5.5.4SPOOLing技術★共享打印機當用戶進程請求打印輸出時,并不真正立即把打印機分配給該用戶進程,而只為它做兩件事:
①由輸出進程在輸出井中為之申請一個空閑磁盤塊區(qū),并將要打印的數(shù)據(jù)送入其中;
②輸出進程為用戶進程申請一張空白的用戶請求打印表,將用戶的打印要求填入其中,再將該表掛到請求打印隊列上。5.5.4SPOOLing技術★共享打印機
當打印機空閑時,輸出過程將從請求隊列隊首取出一張打印請求表,將要打印的數(shù)據(jù)從輸出井傳送到內(nèi)存輸出緩沖區(qū),再由直至打印隊列空。打印機進行輸出打印。系統(tǒng)只是為每個提出打印請求的進程在輸出井中分配一個存儲區(qū)(相當于一個邏輯設備),使每個用戶進程都覺得自己在獨占一臺打印機,從而實現(xiàn)了對打印機的共享。5.5.4SPOOLing技術★
SPOOLing系統(tǒng)的特點提高了I/O的速度。
將獨占設備改造為共享設備。
實現(xiàn)了虛擬設備功能?!?6年考研31題】31.下列關于SPOOLing技術的敘述中,錯誤的是(D)需要外存的支持需要多道程序設計技術的支持可以讓多個作業(yè)共享一臺獨立設備由用戶作業(yè)控制設備與輸入/輸出井之間的數(shù)據(jù)傳送5.4I/O軟件5.5設備分配
5.6磁盤存儲器的管理第五章設備管理★5.6.1磁盤性能簡述
5.6磁盤存儲器的管理★數(shù)據(jù)的組織和格式:
5.6.1磁盤性能簡述磁盤的結構和布局
柱面扇區(qū)磁臂磁頭側視圖★數(shù)據(jù)的組織和格式:
5.6.1磁盤性能簡述俯視圖★數(shù)據(jù)的組織和格式:
5.6.1磁盤性能簡述磁盤的格式化
★磁盤的類型固定頭磁盤:每條磁道上都有一讀寫磁頭。移動頭磁盤:每個盤面僅配有一個磁頭。
5.6.1磁盤性能簡述★磁盤訪問時間
1)尋道時間Ts
這是指把磁臂(磁頭)移動到指定磁道上所經(jīng)歷的時間。該時間是啟動磁臂的時間s與磁頭移動n條磁道所花費的時間之和,即Ts=m×n+s其中,m是一常數(shù),與磁盤驅(qū)動器的速度有關,對一般磁盤,m=0.2;對高速磁盤,m≤0.1,磁臂的啟動時間約為2ms。5.6.1磁盤性能簡述★磁盤訪問時間2)旋轉(zhuǎn)延遲時間Tτ
這是指定扇區(qū)移動到磁頭下面所經(jīng)歷的時間。對于硬盤,典型的旋轉(zhuǎn)速度大多為5400r/min,每轉(zhuǎn)需時11.1ms,平均旋轉(zhuǎn)延遲時間Tτ為5.55ms;
5.6.1磁盤性能簡述★磁盤訪問時間
3)傳輸時間Tt
把數(shù)據(jù)從磁盤讀出或向磁盤寫入數(shù)據(jù)所經(jīng)歷的時間。Tt的大小與每次所讀/寫的字節(jié)數(shù)b和旋轉(zhuǎn)速度有關:
5.6.1磁盤性能簡述
其中,r為磁盤每秒鐘的轉(zhuǎn)數(shù);N為一條磁道上的字節(jié)數(shù),當一次讀/寫的字節(jié)數(shù)相當于半條磁道上的字節(jié)數(shù)時,Tt與Tτ相同。★磁盤訪問時間
磁盤訪問時間=尋道時間+旋轉(zhuǎn)延遲時間+傳輸時間Tt5.6.1磁盤性能簡述可將訪問時間Ta表示為:5.6.2磁盤調(diào)度磁盤是可被多個進程共享的設備。當有多個進程都請求訪問磁盤時,應采用一種適當?shù)恼{(diào)度算法,以使各進程對磁盤的平均訪問時間最小。由于在訪問磁盤的時間中主要是尋道時間,因此,磁盤調(diào)度的目標應是使磁盤的平均尋道時間最少?!锵葋硐确誇CFS(FirstComeFirstServed)按訪問請求到達的先后次序服務
5.6.2磁盤調(diào)度5.6.2磁盤調(diào)度假定磁盤共有40個柱面,當前磁頭正在第11道服務,等待服務的進程有6個,它們請求的磁道號分別是:1,36,16,34,9和12(以請求時間先后為序)?!痢痢痢痢痢? 5101520253035移動為:111361634912總移動磁道數(shù):10+35+20+18+25+3=111★先來先服務FCFS(FirstComeFirstServed)
★先來先服務FCFS(FirstComeFirstServed)按訪問請求到達的先后次序服務優(yōu)點:簡單,公平;缺點:效率不高,相鄰兩次請求可能會造成最內(nèi)到最外的柱面尋道,使磁頭反復移動,增加了服務時間,對機械也不利
5.6.2磁盤調(diào)度★最短尋道時間優(yōu)先SSTF(ShortestSeekTimeFirst)
優(yōu)先選擇距當前磁頭最近的訪問請求進行服務,主要考慮尋道優(yōu)先。5.6.2磁盤調(diào)度假定磁盤共有40個柱面,當前磁頭正在第11道服務,等待服務的進程有6個,它們請求的柱面分別是:1,36,16,34,9和12(以請求時間先后為序)。移動為:111291613436總移動磁道數(shù):1+3+7+15+33+2=61由此可知總的磁道移動數(shù)為61,而FCFS為111★最短尋道時間優(yōu)先SSTF(ShortestSeekTimeFirst)
××××××0 51015202530355.6.2磁盤調(diào)度★最短尋道時間優(yōu)先SSTF(ShortestSeekTimeFirst)
優(yōu)先選擇距當前磁頭最近的訪問請求進行服務,主要考慮尋道優(yōu)先。優(yōu)點:改善了磁盤平均服務時間;缺點:造成某些訪問請求長期等待得不到服務5.6.2磁盤調(diào)度★掃描(SCAN)算法又稱電梯算法。具體做法:當有訪問請求時,磁頭按一個方向移動,在移動過程中對遇到的訪問請求進行服務,然后判斷該方向上是否還有訪問請求,如果有則繼續(xù)掃描;否則改變移動方向,如此反復
5.6.2磁盤調(diào)度★掃描(SCAN)算法
5.6.2磁盤調(diào)度假定磁盤共有40個柱面,當前磁頭正在第11道自里向外服務,等待服務的進程有6個,它們請求的柱面分別是:1,36,16,34,9和12(以請求時間先后為序)。××××××0 5101520253035移動為:111216343691總移動磁道數(shù):1+4+18+2+27+8=60★掃描(SCAN)算法優(yōu)點:既考慮了距離,同時又考慮了方向缺點:當請求對磁道的分布是均勻時,磁頭回頭,近磁頭端的請求很少(因為磁頭剛經(jīng)過),而遠端請求較多,這些請求等待時間要長一些。
5.6.2磁盤調(diào)度★循環(huán)掃描(CSCAN)算法也稱單向掃描算法??偸菑耐饷嬷骈_始向里掃描。移動臂到達最后個一個請求磁道柱面后,立即帶動讀寫磁頭快速返回。返回時不為任何的等待訪問者服務。返回后可再次進行掃描。5.6.2磁盤調(diào)度★循環(huán)掃描(CSCAN)算法5.6.2磁盤調(diào)度假定磁盤共有40個柱面,當前磁頭正在第11道自里向外服務,等待服務的進程有6個,它們請求的柱面分別是:1,36,16,34,9和12(以請求時間先后為序)。××××××0 5101520253035移動為:111216343619總移動磁道數(shù):1+4+18+2+35+8=68調(diào)度算法的選擇實際系統(tǒng)相當普遍采用最短尋道時間優(yōu)先算法,因為它簡單有效,性價比好。掃描算法更適于磁盤負擔重的系統(tǒng)。磁盤負擔很輕的系統(tǒng)也可以采用先來先服務算法一般要將磁盤調(diào)度算法作為操作系統(tǒng)的單獨模塊編寫,利于修改和更換?!?/p>
N-Step-SCAN和FSCAN調(diào)度算法1)N-Step-SCAN算法在SSTF、SCAN及CSCAN幾種調(diào)度算法中,都可能出現(xiàn)磁臂停留在某處不動的情況,例如,有一個或幾個進程對某一磁道有較高的訪問頻率,即這個(些)進程反復請求對某一磁道的I/O操作,從而壟斷了整個磁盤設備。我們把這一現(xiàn)象稱為“磁臂粘著”(Armstickiness)。在高密度磁盤上容易出現(xiàn)此情況。N步SCAN算法是將磁盤請求隊列分成若干個長度為N的子隊列,磁盤(外圈)調(diào)度將按FCFS算法依次處理這些子隊列。而每處理一個隊列時(內(nèi)圈)又是按SCAN(電梯)算法,對一個隊列處理完后,再處理其他隊列。當正在處理某子隊列時,如果又出現(xiàn)新的磁盤I/O請求,便將新請求進程放入其他隊列,這樣就可避免出現(xiàn)粘著現(xiàn)象。當N值取得很大時,會使N步掃描法的性能接近于SCAN算法的性能;當N=1時,N步SCAN算法便蛻化為FCFS算法。
5.6.2磁盤調(diào)度★
N-Step-SCAN和FSCAN調(diào)度算法2)FSCAN算法
FSCAN算法實質(zhì)上是N步SCAN算法的簡化,即FSCAN只將磁盤請求隊列分成兩個子隊列。一個是由當前所有請求磁盤I/O的進程形成的隊列,由磁盤調(diào)度按SCAN算法進行處理。在掃描期間,將新出現(xiàn)的所有請求磁盤I/O的進程,放入另一個等待處理的請求隊列。這樣,所有的新請求都將被推遲到下一次掃描時處理。
5.6.2磁盤調(diào)度★
磁盤高速緩存的形式是指利用內(nèi)存中的存儲空間,來暫存從磁盤中讀出的一系列盤塊中的信息。這里的高速緩存是一組在邏輯上屬于磁盤,而物理上是駐留在內(nèi)存中的盤塊。高速緩存在內(nèi)存中可分成兩種形式。第1種是在內(nèi)存中開辟一個單獨的存儲空間來作為磁盤高速緩存,其大小是固定的,不會受應用程序多少的影響;第2種是把所有未利用的內(nèi)存空間變?yōu)橐粋€緩沖池,供請求分頁系統(tǒng)和磁盤I/O時(作為磁盤高速緩存)共享。此時高速緩存的大小,顯然不再是固定的。當磁盤I/O的頻繁程度較高時,該緩沖池可能包含更多的內(nèi)存空間;而在應用程序運行得較多時,該緩沖池可能只剩下較少的內(nèi)存空間。
5.6.3磁盤高速緩存★數(shù)據(jù)交付方式
系統(tǒng)可以采取兩種方式,將數(shù)據(jù)交付給請求進程:
(1)數(shù)據(jù)交付。這是直接將高速緩存中的數(shù)據(jù),傳送到請求者進程的內(nèi)存工作區(qū)中。
(2)指針交付。只將指向高速緩存中某區(qū)域的指針,交付給請求者進程。
后一種方式由于所傳送的數(shù)據(jù)量少,因而節(jié)省了數(shù)據(jù)從磁盤高速緩存存儲空間到進程的內(nèi)存工作區(qū)的時間
5.6.3磁盤高速緩存★置換算法
由于請求調(diào)頁中的虛擬存儲器與高速緩存(磁盤I/O中)的工作情況不同,因而使得在置換算法中所應考慮的問題也有所差異。因此,現(xiàn)在不少系統(tǒng)在設計其高速緩存的置換算法時,除了考慮到最近最久未使用(放磁盤中)這一原則外,還考慮了以下幾點:
(1)訪問頻率。經(jīng)常被訪問的在內(nèi)存
(2)可預見性。常用的在內(nèi)存
(3)數(shù)據(jù)的一致性。重要數(shù)據(jù)及時回寫
5.6.3磁盤高速緩存★周期性地寫回磁盤在UNIX系統(tǒng)中專門增設了一個修改(update)程序,使之在后臺運行,該程序周期性地調(diào)用一個系統(tǒng)調(diào)用SYNC。該調(diào)用的主要功能是強制性地將所有在高速緩存中已修改的盤塊數(shù)據(jù)寫回磁盤。一般是把兩次調(diào)用SYNC的時間間隔定為30s。這樣,因系統(tǒng)故障所造成的工作損失不會超過30s的勞動量。
而在MS-DOS中所采用的方法是:只要高速緩存中的某盤塊數(shù)據(jù)被修改,便立即將它寫回磁盤,并將這種高速緩存稱為“寫穿透、高速緩存”(write-throughcache)。MS-DOS所采用的寫回方式,幾乎不會造成數(shù)據(jù)的丟失,但須頻繁地啟動磁盤。
5.6.3磁盤高速緩存★提前讀(Read-Ahead)
★延遲寫
★優(yōu)化物理塊的分布
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度土地儲備中心國有土地房屋出售合同(2024版升級)
- 市中心小區(qū)私人房屋轉(zhuǎn)租合同
- 產(chǎn)品部件加工合同范例
- 農(nóng)機用工勞動合同范例
- 修冷鏈凍庫合同范本
- 個人洗衣設備轉(zhuǎn)讓合同范本
- 2025年度家具設計版權采購合作協(xié)議
- 2025年度教師繼續(xù)教育與職業(yè)發(fā)展聘用合同范本
- 2025年度環(huán)保監(jiān)測與治理服務合同續(xù)簽申請書
- 2025年度教師教學科研設備共享使用合同
- 財務管控的間接成本
- 藏族唐卡藝術特色分析
- 操作系統(tǒng)課程設計報告
- 《學校體育科研方法》課件
- 護士團隊的協(xié)作和領導力培養(yǎng)培訓課件
- QFD模板含計算公式計分標準說明模板
- 慢阻肺試題練習
- 人工智能在生物醫(yī)學倫理與法律中的基因編輯與生命倫理問題研究
- 國有資產(chǎn)管理辦法-國有資產(chǎn)管理辦法條例
- 公務車輛定點維修車輛保養(yǎng)(附彩圖) 投標方案
- 00015-英語二自學教程-unit3
評論
0/150
提交評論