操作系統(tǒng)湯子瀛本科操作系統(tǒng)講課文檔_第1頁
操作系統(tǒng)湯子瀛本科操作系統(tǒng)講課文檔_第2頁
操作系統(tǒng)湯子瀛本科操作系統(tǒng)講課文檔_第3頁
操作系統(tǒng)湯子瀛本科操作系統(tǒng)講課文檔_第4頁
操作系統(tǒng)湯子瀛本科操作系統(tǒng)講課文檔_第5頁
已閱讀5頁,還剩96頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

操作系統(tǒng)課件湯子瀛本科操作系統(tǒng)第一頁,共一百零一頁。5.1.1I/O設備1、I/O設備的類型2)按傳輸速率分類(1)低速設備:每秒十幾個字節(jié)至數(shù)百個字節(jié)。(2)中速設備:每秒數(shù)千個字節(jié)至數(shù)十千個字節(jié)。(3)高速設備:每秒數(shù)百千個字節(jié)至數(shù)兆個字節(jié)。第二頁,共一百零一頁。3)按信息交換的單位分類(1)塊設備:以塊為單位進行信息交換的設備,例如:磁盤。(2)字符設備:以單個字符為單位進行信息交換的設備,例如:打印機、鍵盤。第三頁,共一百零一頁。4)按設備的共享屬性分類(1)獨占設備:在一段時間內只能被一個進程訪問的設備。例:打印機。(2)共享設備:在一段時間內,多個進程可交替訪問的設備。例:磁盤。(3)虛擬設備:通過虛擬技術模擬的設備。第四頁,共一百零一頁。2、設備與控制器之間的接口接口中有數(shù)據(jù)、狀態(tài)、控制三種類型的寄存器,用于傳輸數(shù)據(jù)信號、狀態(tài)信號、控制信號。第五頁,共一百零一頁。1)數(shù)據(jù)信號線傳送輸入輸出數(shù)據(jù)。2)控制信號線由設備控制器向I/O設備發(fā)送控制命令。3)狀態(tài)信號線由設備向控制器傳送設備狀態(tài)信息。第六頁,共一百零一頁。緩沖轉換器控制邏輯I/O設備數(shù)據(jù)信號線狀態(tài)信號線控制信號線信號數(shù)據(jù)至設備控制器第七頁,共一百零一頁。5.1.2設備控制器設備控制器分為兩大類:字符設備的控制器和塊設備的控制器。1、設備控制器的基本功能1)接收和識別命令控制器用控制寄存器接收CPU的命令,并對命令進行譯碼識別。2)數(shù)據(jù)交換:用數(shù)據(jù)寄存器進行輸入輸出的數(shù)據(jù)交換。第八頁,共一百零一頁。3)標識和報告設備的狀態(tài)利用狀態(tài)寄存器來反映設備的當前狀態(tài)。4)地址識別每個設備接口寄存器都有唯一的地址,在控制器中配置地址譯碼器來識別接口寄存器的地址。第九頁,共一百零一頁。5)數(shù)據(jù)緩沖由于I/O設備的速率遠遠低于CPU和內存的速率,故在控制器中設置緩沖器,用于暫存輸入輸出數(shù)據(jù)。6)差錯控制設備控制器對由I/O設備傳送來的數(shù)據(jù)進行差錯檢測,發(fā)現(xiàn)錯誤,報告CPU。第十頁,共一百零一頁。2、設備控制器的組成控制器在CPU與設備之間,控制器即要與CPU通信,也要與設備通信,因此,設備控制器主要由三部分組成。1)設備控制器與處理機的接口通過數(shù)據(jù)線、地址線、控制線進行通信,數(shù)據(jù)線與數(shù)據(jù)寄存器和控制/狀態(tài)寄存器兩類寄存器相連。第十一頁,共一百零一頁。2)設備控制器與設備的接口一個控制器可連接多臺設備,有多個設備接口,每個設備接口都有一組寄存器來傳送數(shù)據(jù)、控制和狀態(tài)信號。3)I/O邏輯通過控制線接收CPU的I/O命令,并對收到的命令進行譯碼,通過地址線接收I/O地址并對地址進行譯碼,用I/O命令實現(xiàn)對指定設備的控制。第十二頁,共一百零一頁。CPU與控制器接口控制器與設備接口數(shù)據(jù)寄存器控制/狀態(tài)寄存器數(shù)據(jù)線I/O邏輯地址線控制線控制器與設備接口1控制器與設備接口i…數(shù)據(jù)狀態(tài)控制數(shù)據(jù)狀態(tài)控制第十三頁,共一百零一頁。5.1.3I/O通道1、I/O通道設備的引入引入通道的主要目的是為了建立獨立的I/O操作,CPU向通道發(fā)I/O指令,通道收到指令后,從內存指定位置取出通道程序,執(zhí)行通道程序完成I/O操作,完成后向CPU發(fā)中斷信號。第十四頁,共一百零一頁。2、通道類型1)字節(jié)多路通道通道中含有多個非分配型子通道,每個子通道連接一臺I/O設備,所有子通道按時間片輪轉方式共享主通道,一個子通道占用主通道完成一個字節(jié)的交換后,立即讓給另一子通道使用。第十五頁,共一百零一頁。A1B1C1…A2B2C2…控制器控制器控制器控制器控制器設備A1A2A3…子通道AB1B2B3…子通道BC1C2C3…子通道CN1N2N3…子通道N字節(jié)多路通道第十六頁,共一百零一頁。2)數(shù)組選擇通道通道內只含有一個分配型的子通道,連接一臺設備傳送一組數(shù)據(jù)。3)數(shù)組多路通道通道內含有多個非分配型子通道,連接多臺設備,以時間片輪轉方式進行數(shù)組方式的多路傳送,一個子通道傳送一組數(shù)據(jù)后,讓給下一子通道。第十七頁,共一百零一頁。A1B1C1…A2B2C2…控制器控制器控制器控制器控制器設備A1B1C1…A2B2C2…數(shù)組選擇通道第十八頁,共一百零一頁?!瑼1B1C1…A2B2C2…控制器控制器控制器控制器控制器設備A1B1C1…子通道AA2B2C2…子通道BA3B3C3…子通道CA14B14C14…子通道N數(shù)組多路通道第十九頁,共一百零一頁。3、“瓶頸”問題通道價格昂貴,機器配置的通道少,致使主機與設備的通路較少,這往往成為I/O的“瓶頸”。在不增加通道的前題下,采用交叉連接的方式,增加主機到設備的通路,是解決瓶頸問題最有效的方法。第二十頁,共一百零一頁。存儲器設備1通道2控制器1控制器2控制器3控制器4通道1設備3設備2設備4設備5設備6設備77條通路第二十一頁,共一百零一頁。存儲器通道1通道2控制器1控制器2I/O設備I/O設備I/O設備I/O設備16條通路第二十二頁,共一百零一頁。5.1.4總線系統(tǒng)CPU存儲器磁盤控制器打印機控制器其它控制器打印機磁盤驅動器…第二十三頁,共一百零一頁。1、ISA和EISA總線1)ISA總線為80286微機設計的總線結構,帶寬8位,傳輸率為2Mb/s.2)EISA總線帶寬為32位,傳輸率為32Mb/s,可以連接12臺設備。第二十四頁,共一百零一頁。2、局部總線1)VESA

帶寬為32位,最高傳輸率132Mb/s,應用于486微機中。2)PCI總線

PCI在CPU與外設之間插入一復雜的管理層,用于協(xié)調數(shù)據(jù)傳輸和提供一致的接口,配有數(shù)據(jù)緩沖,最多能支持10種外設,可連接ISA、EISA等總線。第二十五頁,共一百零一頁。5.2I/O控制方式5.2.1程序I/O方式處理機向設備控制器發(fā)出一條I/O指令,然后循環(huán)測試設備的狀態(tài),直至設備狀態(tài)為就緒時,處理機讀走數(shù)據(jù)寫入內存,反復進行直至數(shù)據(jù)傳送完成。程序I/O方式使CPU等待設備,CPU利用率低。第二十六頁,共一百零一頁。向I/O控制器發(fā)讀命令讀I/O控制器的狀態(tài)檢查狀態(tài)從I/O控制器中讀入字就緒向存儲器中寫字傳送完成未完未就緒CPU→I/OI/O→CPU出錯I/O→CPUCPU→內存完成第二十七頁,共一百零一頁。5.2.2中斷驅動I/O控制方式

CPU向設備控制器發(fā)I/O命令,控制按命令控制設備,I/O操作完成后,控制器發(fā)出中斷請求,CPU響應中斷進行中斷處理,反復進行直至數(shù)據(jù)傳送完成。第二十八頁,共一百零一頁。向I/O控制器發(fā)讀命令讀I/O控制器的狀態(tài)檢查狀態(tài)從I/O控制器中讀入字就緒向存儲器中寫字傳送完成未完CPU→I/OI/O→CPU出錯I/O→CPUCPU→內存完成CPU做其它事中斷第二十九頁,共一百零一頁。5.2.3直接存儲器訪問DMAI/O控制方式1、DMA控制方式的引入用中斷驅動I/O方式,每次中斷只能傳送一個字節(jié),傳送1000個字節(jié),產生1000次中斷,引入DMA方式后,一次中斷可傳送一組數(shù)據(jù)。第三十頁,共一百零一頁。DMA方式的特點:(1)傳輸?shù)幕締挝皇菈K(2)設備直接訪問存儲器(3)傳送的開始和結束才需CPU干預。第三十一頁,共一百零一頁。向I/O控制器發(fā)布讀塊命令讀DMA控制器的狀態(tài)下條指令CPU→DMACPU做其它事中斷DMA→CPU第三十二頁,共一百零一頁。2、DMA控制器組成(1)命令/狀態(tài)寄存器CR:存放I/O命令或設備狀態(tài)。(2)內存地址寄存器MAR:存放輸入/輸出數(shù)據(jù)的內存地址。(3)數(shù)據(jù)寄存器DR:存放輸入輸出數(shù)據(jù)。(4)數(shù)據(jù)計數(shù)器DC:存放傳送字節(jié)數(shù)。第三十三頁,共一百零一頁。CPU內存countDRMARDCCR主機與控制器接口I/O控制邏輯控制器與設備接口命令系統(tǒng)總線DMA控制器第三十四頁,共一百零一頁。3、DMA工作過程

CPU命令傳入CR,內存地址填入MAR,數(shù)據(jù)字節(jié)數(shù)填入DC,DMA控制器每傳送一個字節(jié),DC-1,MAR+1,直至DC=0,DMA控制器發(fā)出中斷請求,CPU處理中斷收回總線。第三十五頁,共一百零一頁。設置MAR和DC初值啟動DMA傳送命令挪用存儲器周期傳送數(shù)據(jù)字存儲器地址增1字計數(shù)寄存器減1DC=0?是請求中斷否在繼續(xù)執(zhí)行用戶程序的同時,準備下一次傳送。第三十六頁,共一百零一頁。5.2.4I/O通道控制方式1、I/O通道控制方式的引入

DMA方式,CPU每發(fā)出一條I/O指令,只能讀/寫一組數(shù)據(jù),引入通道控制方式,CPU用一條I/O指令,啟動通道執(zhí)行通道程序,傳送多組數(shù)據(jù)后,通道發(fā)出中斷請求,CPU進行中斷處理。即DMA方式一次中斷傳一組數(shù)據(jù),通道方式一次中斷傳多組數(shù)據(jù)。第三十七頁,共一百零一頁。2、通道程序由若干條通道指令組成,通道通過執(zhí)行通道程序,并與控制器共同實現(xiàn)對設備的控制。第三十八頁,共一百零一頁。通道指令的格式:(1)操作碼(2)內存地址(3)計數(shù)(4)通道程序結束位P:P=1表示通道程序結束(5)記錄結束標志R:記錄由多條指令組成,表示記錄結束。第三十九頁,共一百零一頁。操作PR計數(shù)內存地址WRITE0080813WRITE001401034WRITE01605830WRITE013002000WRITE002501850WRITE11250720記錄1記錄2記錄3通道程序第四十頁,共一百零一頁。5.3緩沖管理5.3.1緩沖的引入(1)緩和CPU與I/O設備間速度不匹配的矛盾設置緩沖區(qū),避免CPU等待I/O設備。(2)減少對CPU的中斷頻率,放寬對中斷響應時間的限止.在緩沖區(qū)滿時才中斷,在第2緩沖區(qū)滿時響應中斷。第四十一頁,共一百零一頁。(3)提高CPU和I/O設備之間的并行性

CPU處理第一批數(shù)據(jù)的同時,I/O設備輸入第二批數(shù)據(jù)。第四十二頁,共一百零一頁。5.3.2單緩沖和雙緩沖1、單緩沖用戶進程操作系統(tǒng)I/O設備輸入T傳送M計算C因為M遠小于T或C,不加緩沖的處理時間是T+C,加緩沖的處理時間是MAX(C,T)+M,T+C>MAX(C,T)+M緩沖區(qū)內存第四十三頁,共一百零一頁。2、雙緩沖用戶進程操作系統(tǒng)I/O設備輸入T傳送M計算C在傳送第一批數(shù)據(jù)處理結果的同時,CPU在處理第二批數(shù)據(jù),I/O設備在輸入第三批數(shù)據(jù)。處理時間為:MAX(T,C)。例如:使用雙緩沖使CPU與讀卡機、打印機并行工作;用雙緩沖實現(xiàn)雙向通信。第四十四頁,共一百零一頁。A機緩沖區(qū)B機緩沖區(qū)A機發(fā)送緩沖區(qū)接收緩沖區(qū)B機接收緩沖區(qū)發(fā)送緩沖區(qū)第四十五頁,共一百零一頁。5.3.3循環(huán)緩沖用戶進程操作系統(tǒng)I/O設備輸入T傳送M計算C第四十六頁,共一百零一頁。1、循環(huán)緩沖的組成(1)多個緩沖區(qū)空緩沖區(qū)R已裝滿數(shù)據(jù)的緩沖區(qū)G現(xiàn)行工作緩沖區(qū)CRRGGGGNEXTiNEXTgRRGGGGNEXTicurrentNEXTg第四十七頁,共一百零一頁。(2)多個指針Nextg:指向下一個可用緩沖區(qū)GNexti:指向下一個可用空緩沖區(qū)RCurrent:正在使用的緩沖區(qū)。第四十八頁,共一百零一頁。2、循環(huán)緩沖區(qū)的使用(1)getbuf過程:計算進程調用getbuf,獲得緩沖區(qū)G;輸入進程調用getbuf,獲得空緩沖區(qū)R。(2)Releasebuf過程:計算進程調用releasebuf將現(xiàn)行工作區(qū)C改為空緩沖區(qū)R;輸入進程調releasebuf將空緩沖區(qū)R改為緩沖區(qū)G。第四十九頁,共一百零一頁。3、進程同步(1)Nexti指針追趕上Nextg指針表示輸入快于處理,輸入進程阻塞。(2)Nextg指針追趕上Nexti指針表示處理快于輸入,處理進程阻塞。第五十頁,共一百零一頁。5.3.4緩沖池1、緩沖池的組成緩沖池由空閑緩沖區(qū)、輸入緩沖區(qū)、輸出緩沖區(qū)三種類型的緩沖區(qū)組成,將相同類型的緩沖區(qū)組成隊列。第五十一頁,共一百零一頁。緩沖池的三個隊列。(1)空緩沖隊列emq:隊首指針F(emq),隊尾指針L(emq)。(2)輸入隊列inq:隊首指針F(inq),隊尾指針L(inq)。(3)輸出隊列outq:隊首指針F(outq),隊尾指針L(outq)。第五十二頁,共一百零一頁。四種工作緩沖區(qū):①用于收容輸入的工作緩沖區(qū);②用于提取輸入的工作緩沖區(qū);③用于收容輸出的工作緩沖區(qū);④用于提取輸出的工作緩沖區(qū)。第五十三頁,共一百零一頁。2、getbuf過程和putbuf過程

getbuf和putbuf過程分別要調用addbuf和takebuf過程來實現(xiàn)隊列操作,由于隊列必須互斥訪問,設置互斥信號MS(type)和同步信號RS(type),實現(xiàn)隊列的互斥訪問以及getbuf和putbuf間的半同步。第五十四頁,共一百零一頁。

proceduregetbuf(type)beginwait(RS(type))wait(MS(type))B(num):=takebuf(type)signal(MS(type))end

procedureputbuf(type,num)beginwait(MS(type))addbuf(type,num)signal(MS(type))signal(RS(type))end第五十五頁,共一百零一頁。3、緩沖區(qū)的工作方式(1)收容輸入從emq獲空緩沖區(qū),作為hin,裝滿輸入數(shù)據(jù),插入inq隊列。(2)提取輸入從inq獲輸入緩沖區(qū),作為sin,取空輸入數(shù)據(jù),插入emq。第五十六頁,共一百零一頁。(3)收容輸出從emq獲空緩沖區(qū),作為hout,裝滿輸出數(shù)據(jù),插入outq。(4)提取輸出從outq獲輸出緩沖區(qū),作為sout,取空輸出數(shù)據(jù),插入emq。第五十七頁,共一百零一頁。5.4I/O軟件5.4.1I/O軟件的設計目標和原則設計目標:1)與具體設備無關2)統(tǒng)一命名3)對錯誤的處理4)緩沖技術5)設備的分配和釋放6)I/O控制方式第五十八頁,共一百零一頁。I/O軟件的層次:(1)用戶層軟件(2)設備獨立性軟件(3)設備驅動程序(4)中斷處理程序第五十九頁,共一百零一頁。5.4.2中斷處理程序1、喚醒被阻塞的驅動程序進程。2、保護被中斷進程的CPU環(huán)境。3、轉入相應的設備處理程序。4、中斷處理5、恢復被中斷進程的現(xiàn)場第六十頁,共一百零一頁。PSW程序狀態(tài)字PC(N+1)程序計數(shù)器…寄存器PSWPC(N+1)棧指針……NN+1開始…返回用戶程序中斷處理程序中斷棧第六十一頁,共一百零一頁。5.4.3設備驅動程序1、設備驅動程序的功能(1)將抽象的I/O請求轉換為具體的I/O請求。(2)檢查I/O的合法性,了解設備狀態(tài),設置設備的工作方式。(3)啟動I/O設備。(4)響應中斷請求。(5)構成通道程序。第六十二頁,共一百零一頁。2、設備處理方式(1)為每一類設備設置一個I/O進程。(2)整個系統(tǒng)設置一個I/O進程(3)為各類設備設置相應的設備處理程序,供用戶進程或系統(tǒng)進程調用。第六十三頁,共一百零一頁。3、設備驅動程序的特點(1)驅動程序是請求I/O的進程與設備控制器之間的一個通信程序。(2)不同類型的設備應配置不同的驅動程序。(3)驅動程序與I/O控制方式緊密相關。(4)驅動程序必須用匯編語言書寫,基本設備的驅動程序已固化在ROM中。(5)驅動程序應允許可重入。(6)驅動程序不允許系統(tǒng)調用。第六十四頁,共一百零一頁。4、設備驅動程序的處理過程1)將抽象要求轉換為具體要求例:盤塊號轉換為盤面、磁道及扇區(qū)。2)檢查I/O請求的合法性例:請求從打印機輸入數(shù)據(jù)將被拒絕。第六十五頁,共一百零一頁。3)讀出和檢查設備的狀態(tài):從設備控制器的狀態(tài)寄存器中讀出設備的狀態(tài)。4)傳送必要的參數(shù)例:讀寫磁盤前,要將字節(jié)數(shù)和內存地址傳送到控制器。5)工作方式的設置:設置設備的工作方式。6)啟動I/O設備:驅動程序發(fā)出I/O命令,由控制器控制設備完成基本的I/O。第六十六頁,共一百零一頁。5.4.4設備獨立性軟件1、設備獨立性的概念設備改變了,使用設備的應用程序不需要修改,即應用程序獨立于具體使用的物理設備。為保證設備的獨立性,在應用程序中使用邏輯設備名來使用物理設備。第六十七頁,共一百零一頁。設備獨立性實現(xiàn)了:1)設備分配時的靈活性:當進程用邏輯設備名來請求某類設備時,系統(tǒng)可分配該類設備的任意一臺給進程。2)易于實現(xiàn)I/O重定向:用于I/O操作的設備可以更換,而不必改動應用程序。第六十八頁,共一百零一頁。2、設備獨立性軟件為實現(xiàn)設備獨立性,在設備驅動程序之上設置的一層軟件,稱為設備獨立性軟件。第六十九頁,共一百零一頁。設備獨立性軟件的功能:(1)執(zhí)行所有設備的公有操作:①獨占設備的分配與回收②邏輯設備映射為物理設備③設備保護④緩沖管理⑤差錯控制⑥提供獨立于設備的邏輯塊。(2)向用戶層(或文件層)軟件提供統(tǒng)一接口:即無論何種設備,它們向用戶提供的接口是相同的。第七十頁,共一百零一頁。3、邏輯設備名到物理設備名映射的實現(xiàn)1)邏輯設備表:每個表項包括邏輯設備名、物理設備名、驅動程序入口地址,當進程用邏輯設備名來請求分配I/O設備時,系統(tǒng)為它分配相應的物理設備,并在邏輯設備表中建立一個表目。第七十一頁,共一百零一頁。2)LUT的設置問題(1)整個系統(tǒng)設置一張LUT:不允許有相同的邏輯設備名,用于單用戶系統(tǒng)。(2)為每個用戶設置一張LUT:適用于多用戶系統(tǒng)。邏輯設備名物理設備名驅動程序入口地址/dev/tty31024/dev/print52046………LUT第七十二頁,共一百零一頁。5.4.5用戶層的I/O軟件大部分的I/O軟件都在操作系統(tǒng)內部,但仍有一小部分在用戶層,包括與用戶程序鏈接在一起的庫函數(shù),以及完全運行于內核之外的一些程序。第七十三頁,共一百零一頁。5.5設備分配5.5.1設備分配中的數(shù)據(jù)結構1、設備控制表DCT

每個設備有一張設備控制表,記錄設備的類型、設備標識符、設備狀態(tài)、設備隊列隊首指針、指向控制器表的指針、重復執(zhí)行次數(shù)等。第七十四頁,共一百零一頁。2、控制器控制表、通道控制表和系統(tǒng)設備表(1)、控制器控制表COCT

每個控制器設置一張COCT,記錄控制器的情況。(2)、通道控制表CHCT

每個通道設置一張CHCT,記錄通道的情況。(3)、系統(tǒng)設備表SDT:整個系統(tǒng)一張表,每個設備在SDT中占一個表項。第七十五頁,共一百零一頁。表目1…表目I…SDT設備類設備標識DCT指針驅動程序入口設備類型設備標識符設備狀態(tài)控制器表指針重復執(zhí)行次數(shù)設備隊列指針DCT控制器標識符控制器狀態(tài)通道表指針控制器隊列隊首指針控制器隊列隊尾指針通道標識符通道狀態(tài)控制器表指針通道隊列隊首指針通道隊列隊尾指針COCTCHCT第七十六頁,共一百零一頁。5.5.2設備分配時應考慮的因素1、設備的固有屬性(1)獨占設備:只能分配給一個進程使用。(2)共享設備:可同時分配給多個進程使用。(3)虛擬設備:已屬可共享設備,也可分配給多個進程使用。第七十七頁,共一百零一頁。2、設備分配算法(1)先來先服務:按設備提出請求的先后順序排成設備請求隊列,設備分配給隊首的進程。(2)優(yōu)先級高者優(yōu)先:按進程優(yōu)先級從高到低組成設備請求隊列,設備分配給隊首進程。第七十八頁,共一百零一頁。3、設備分配中的安全性1)安全分配方式每當進程發(fā)出I/O請求后,便進入阻塞狀態(tài),直到I/O完成后被喚醒。2)不安全分配方式進程發(fā)出I/O請求后仍繼續(xù)運行,需要時又可發(fā)出第二個I/O請求。第七十九頁,共一百零一頁。5.5.3獨占設備的分配程序1、基本的設備分配程序1)分配設備:根據(jù)物理設備名查SDT,找到設備的DCT,分配設備。2)分配控制器:查DCT,得控制器控制表COCT,分配控制器。3)分配通道:查COCT,得通道控制表CHCT,分配通道。第八十頁,共一百零一頁。2、設備分配程序的改進1)增進設備的獨立性:進程用邏輯設備名請求I/O時,系統(tǒng)從SDT中找到第一個該類設備的DCT,如該設備忙,可查找第二個該類設備。2)考慮多通路情況:查看與設備連接的所有控制器,查看與控制器連接的所有通道。第八十一頁,共一百零一頁。5.5.4SPOOLING技術1、什么是SPOOLING

外圍設備同時聯(lián)機操作或稱假脫機操作。2、SPOOLING系統(tǒng)的組成(1)輸入井和輸出井:是磁盤上開辟的兩大存儲空間,輸入井存放從I/O設備輸入的多組數(shù)據(jù)(相當于多臺輸入機),輸出井存放多個程序的輸出結果(相當于多臺輸出機)。第八十二頁,共一百零一頁。(2)輸入緩沖區(qū)和輸出緩沖區(qū):在內存開辟的兩個緩沖區(qū),I/O設備→輸入緩沖區(qū)→輸入井;輸出井→輸出緩沖區(qū)→I/O設備。(3)輸入進程Spi和輸出進程Spo輸入進程Spi的工作:I/O設備→輸入緩沖區(qū)→輸入井→內存。輸出進程Spo的工作:內存→輸出井→輸入緩沖區(qū)→I/O設備。第八十三頁,共一百零一頁。3、共享打印機當用戶進程請求打印輸出時,輸出進程為其申請輸出井空間并將打印內容送入其中,再申請一張用戶請求打印表填入用戶的打印要求,最后請求打印表被掛到請求打印隊列上,打印機按隊列順序逐個打印。第八十四頁,共一百零一頁。請求打印隊列:由若干進程的請求打印表組成的隊列。輸入進程SPi輸出進程SPo輸入設備輸出設備輸入緩沖區(qū)Bi輸出緩沖區(qū)Bo磁盤輸入井輸出井第八十五頁,共一百零一頁。4、SPOOLING系統(tǒng)的特點(1)提高了I/O速度:從對低速I/O設備的I/O操作,演變?yōu)閷斎刖蜉敵鼍拇嫒〔僮鳌?2)將獨占設備改造為共享設備:輸入井和輸出井的每一個存儲區(qū)(共享設備),相當于一臺輸入機或打印機(獨占設備)。(3)實現(xiàn)了虛擬設備的功能:輸入井和輸出井的每一個存儲區(qū),相當于一臺虛擬設備。第八十六頁,共一百零一頁。5.6磁盤存儲器管理5.6.1磁盤性能簡述1、數(shù)據(jù)的組織和格式磁盤由若干個面組成,每個面有若干個磁道,每個磁道有若干個扇區(qū),每個扇區(qū)存放512字節(jié)的數(shù)據(jù)。第八十七頁,共一百零一頁。Gap1IDField0Gap2DataField0Gap31774151520SynchByteTrack#Head#Sector#CRC12112SynchByteTrack#CRC15122磁盤扇區(qū)格式第八十八頁,共一百零一頁。2、磁盤的類型1)固定頭磁盤:每條磁道上有一個磁頭。2)移動頭磁盤:每個盤面有一個磁頭。3、磁盤訪問時間1)尋道時間:磁頭從當前位置移動到指定磁道的時間。2)旋轉延時時間:指定扇區(qū)轉到磁頭下的時間。3)傳輸時間:讀寫磁盤數(shù)據(jù)的時間。第八十九頁,共一百零一頁。5.6.2磁盤調度1、先來先服務根據(jù)進程請求訪問磁盤的先后順序進行調度。2、最短尋道時間優(yōu)先離當前磁道位置最近的磁道優(yōu)先調度。第九十頁,共一百零一頁。FCFS調度算法示例:磁道號:555839189016015038184移動距離:4531921727010112146平均尋道長度:55.3SSTF調度算法示例:磁道號:905855393818150160184移動距離:10323161201321024平均尋道長度:27.5第九十一頁,共一百零一頁。3、掃描(SCAN)算法1)進程“饑餓”現(xiàn)象離當前磁頭位置遠的磁道,長時間得不到訪問。2)SCAN算法磁頭從里到外再從外到里地移動,在移動方向上優(yōu)先調度最近的磁道。第九十二頁,共一百零一頁。

4、循環(huán)掃描(CSCAN)算法

規(guī)定只在從外向內(從內向外)移動時依次掃描所有經過的磁道,然后迅速返回,再次從外向內掃描,返回時不掃描。SCAN調度算

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論