版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第四章輸入輸出系統(tǒng)信息科學(xué)分院張軍【課前思考】
1.輸入輸出系統(tǒng)有什么特點?如何組織輸入輸出系統(tǒng)來體現(xiàn)這些特點?
2.在一般計算機系統(tǒng)中,基本的輸入輸出方式有哪幾種?他們分別適用于什么場合?
3.程序控制輸入輸出方式有哪些主要特點?能夠畫出用程序控制輸入輸出方式控制輸入輸出設(shè)備工作的程序框圖。
4.在現(xiàn)代計算機系統(tǒng)中,為什么必須設(shè)置中斷輸入輸出方式?中斷方式有什么特點?
5.什么是DMA輸入輸出方式?在什么情況下必須使用DMA方式來傳送數(shù)據(jù)?對于輸入設(shè)備和輸出設(shè)備,分別敘述用DMA方式傳送數(shù)據(jù)的主要過程,目前DMA方式主要有幾種,分別是什么?
6.在現(xiàn)代的計算機系統(tǒng)中,為什么設(shè)置中斷系統(tǒng),包括哪些中斷源?
7.在現(xiàn)代計算機的中斷系統(tǒng)中,為什么設(shè)置中斷優(yōu)先級,如何設(shè)置中斷優(yōu)先級?中斷系統(tǒng)中的軟硬件功能如何分配,需要考慮什么因素?
8.識別中斷源主要有幾種方法,它們的優(yōu)缺點各是什么?
9.中斷發(fā)生時,現(xiàn)場的保存和恢復(fù)需要做哪些工作?
10.設(shè)置中斷屏蔽有什么好處?
11.通道的有什么作用,它是如何工作的,通道有幾種類型,相互之間有什么區(qū)別?
12.輸入輸出處理機有什么作用,與通道處理機有什么區(qū)別?
【學(xué)習(xí)目標(biāo)】
1.掌握計算機系統(tǒng)中的三種基本輸入輸出方式,即程序控制輸入輸出方式、中斷輸入輸出方式和直接存儲器訪問方式的原理和特點。
2.能夠根據(jù)要求,畫出某一種輸入輸出設(shè)備采用程序控制輸入輸出方式或DMA輸入輸出方式的程序流程圖。
3.掌握楚在中斷系統(tǒng)中如何設(shè)置優(yōu)先級,學(xué)會如何設(shè)置中斷屏蔽位。
4.了解中斷發(fā)生時需要做的現(xiàn)場保存和恢復(fù)工作,以及中斷發(fā)生時的軟硬件功能分配。
5.掌握通道的流量計算和分析。
6.了解通道的工作原理和三種通道的數(shù)據(jù)傳送過程?!倦y重點】
1.中斷優(yōu)先級和中斷屏蔽的原理和方法2.通道中的數(shù)據(jù)傳送過程及流量分析計算。
3.三種基本輸入輸出方式特點及使用場合,能夠使用程序控制輸入輸出方式和直接存儲器訪問方式(DMA方式)編寫基本的輸入輸出程序(要求能夠畫出程序框圖)。
4.中斷系統(tǒng)的軟硬件功能分配。4.1輸入輸出原理輸入輸出系統(tǒng)是處理機與外部世界進行交往或通信的手段,計算機用戶通過輸入輸出設(shè)備來訪問處理機。
輸入輸出系統(tǒng):在計算機系統(tǒng)中,通常把處理機和主存儲器之外的部分統(tǒng)稱為輸入輸出系統(tǒng),它包括輸入輸出設(shè)備、輸入輸出接口和輸入輸出軟件等。
外部世界:指處理機以外的需要與處理機交換信息的人和物,主要包括本地和遠程用戶、系統(tǒng)操作員、操作控制臺、輸入輸出設(shè)備、輔助存儲器、其它處理機、各種通信設(shè)備和虛擬現(xiàn)實系統(tǒng)等。
輸入輸出設(shè)備:與處理機交換信息的各種設(shè)備統(tǒng)稱為輸入輸出設(shè)備,或者稱為外圍設(shè)備。4.1.1輸入輸出系統(tǒng)的特點輸入輸出系統(tǒng)品種繁多,性能迥異,使得輸入輸出系統(tǒng)在計算機系統(tǒng)中具有多樣性和復(fù)雜性。
輸入輸出系統(tǒng)的特點集中反映在異步性、實時性和與設(shè)備無關(guān)性三個基本項上,這些特點對輸入輸出系統(tǒng)的組織將產(chǎn)生決定性的影響。輸入輸出系統(tǒng)的多樣性不僅表現(xiàn)在輸入輸出設(shè)備的品種、功能、技術(shù)指標(biāo)等諸方面,還表現(xiàn)在這些設(shè)備廣泛地涉及到機、光、電、磁、聲、自動控制等多種學(xué)科。從計算機學(xué)科來看,輸入輸出系統(tǒng)最典型地反映著硬件與軟件的相互結(jié)合。
現(xiàn)代計算機輸入輸出系統(tǒng)的復(fù)雜性一般都隱藏在操作系統(tǒng)之中,一般用戶只需通過一些簡單的命令或程序調(diào)用就能使用各種輸入輸出設(shè)備,而無需了解各種輸入輸出設(shè)備的具體工作細節(jié)。
輸入輸出系統(tǒng)的復(fù)雜性還表現(xiàn)在處理機本身和操作系統(tǒng)所產(chǎn)生的一系列隨機事件也要調(diào)用輸入輸出系統(tǒng)來進行處理,例如,中斷和自陷等。
輸入輸出系統(tǒng)所處理的外部世界的多樣性和復(fù)雜性。圖中列出了各類的外圍設(shè)備、隨機事件的類型以及處理機所提供的處理環(huán)境。如果不借助功能強大、靈活多變的軟件,便不可能解決輸入輸出系統(tǒng)的多樣性、復(fù)雜性與使用的統(tǒng)一性、方便性之間的矛盾。1、異步性
外圍設(shè)備相對于處理機通常是異步工作的。
輸入輸出設(shè)備的工作在很大程度上獨立于處理機之外,通常不使用統(tǒng)一的中央時鐘,各個設(shè)備按照自己的時鐘工作,但又要在某些時刻接受處理機的控制。
外圍設(shè)備的工作過程通常是這樣的,當(dāng)設(shè)備準備好與處理機交往時(對于輸入設(shè)備是指數(shù)據(jù)寄存器滿,對于輸出設(shè)備是指數(shù)據(jù)寄存器空),要向處理機申請服務(wù)。對于處理機來說,這個時刻一般隨機的,兩次申請之間可能要經(jīng)過恒長時間,這就造成了輸入輸出相對于處理機的異步性和時間的任意性。
當(dāng)一個處理機管理多臺外圍設(shè)備時,必須做到在任意兩次處理機與設(shè)備交往的時刻之間,處理機仍然能夠全速運行它本身的程序,或者管理其它外圍設(shè)備,從而保證處理機與外圍設(shè)備之間,外圍設(shè)備與外圍設(shè)備之間能夠并行工作,無需互相等待。為了能夠?qū)崿F(xiàn)一個處理機與多臺外圍設(shè)備并行工作,必須采用中斷輸入輸出方式或直接存儲器存取(DMA)方式工作。
2、實時性當(dāng)外圍設(shè)備與處理機交往時,由于設(shè)備的類型不同,它們的工作步調(diào)是很不相同的,信息傳輸?shù)乃俾室蚕嗖顟沂猓瑐魉头绞綐O不統(tǒng)一。有的設(shè)備每次只傳送一個字符,如打印機和終端設(shè)備等,傳輸速度為每秒鐘幾個到幾十個字符。有的設(shè)備按數(shù)據(jù)塊或按文件為單位傳送,如磁盤、磁帶存儲器等,每秒鐘要傳送幾到幾十兆字符。處理機必須按照不同設(shè)備所要求傳送方式和傳輸速率不失時機地為設(shè)備提供服務(wù),包括從設(shè)備接收數(shù)據(jù),向設(shè)備發(fā)送數(shù)據(jù)及對設(shè)備進行控制等。如果錯過了服務(wù)的時機,就可能丟失數(shù)據(jù),或造成外圍設(shè)備工作的錯誤。3、與設(shè)備無關(guān)性
外圍設(shè)備的類型、規(guī)格、特性多種多樣,它們輸出數(shù)據(jù)和接收數(shù)據(jù)的方式,數(shù)據(jù)的格式差異很大,因此,設(shè)備與處理機的連接方式也很不相同。計算機系統(tǒng)為了能夠適應(yīng)各種外圍設(shè)備的不同要求,規(guī)定了一些獨立于具體設(shè)備的標(biāo)準接口。各種外圍設(shè)備必須根據(jù)自己的特點和要求,選擇其中的一種標(biāo)準接口與處理機進行連接。凡是連接到同一種標(biāo)準接口上的不同類型設(shè)備,它們之間的差異必須由設(shè)備本身的控制器通過硬件和軟件來進行填補。這樣,處理機本身就無需了解各種外圍設(shè)備特定的具體工作細節(jié),可以采用統(tǒng)一的硬件和軟件對品種繁多的設(shè)備進行管理。3、與設(shè)備無關(guān)性
最近,在某些計算機系統(tǒng)中已經(jīng)實現(xiàn)了所謂即插即用技術(shù)。例如,在WINDOWS95和WINDOWSNT操作系統(tǒng)中,凡是經(jīng)過MICROSOFT公司測試過的機型及外圍設(shè)備都可以直接連接,由操作系統(tǒng)統(tǒng)一分配輸入輸出地址,中斷號和DMA接口號,并采用操作系統(tǒng)中提供的驅(qū)動軟件。在操作系統(tǒng)安裝過程中能夠自動識別各種外圍設(shè)備,自動調(diào)用相應(yīng)的驅(qū)動軟件,無需用戶自己安裝。對于新加入的外圍設(shè)備,操作系統(tǒng)也能自動識別,為它分配輸入輸出地址,中斷號、DMA接口號,并調(diào)用相應(yīng)的驅(qū)動軟件。4.1.2輸入輸出系統(tǒng)的組織方式輸入輸出設(shè)備的異步性、實時性、與設(shè)備無關(guān)性三個特點是現(xiàn)代計算機系統(tǒng)必須具備的共同特性。異步性體現(xiàn)了輸入輸出系統(tǒng)相對于處理機的獨立自主關(guān)系。實時性反映了按照不同設(shè)備響應(yīng)時間的不同要求,劃分和實現(xiàn)輸入輸出系統(tǒng)內(nèi)部不同功能之間的關(guān)系。設(shè)備無關(guān)性貫徹了輸入輸出系統(tǒng)標(biāo)準化接口與非標(biāo)準外圍設(shè)備之間的關(guān)系。根據(jù)各種外圍設(shè)備的不同特點處理好這三方面的關(guān)系,就成為輸入輸出系統(tǒng)組織的基本內(nèi)容。輸入輸出系統(tǒng)組織的具體內(nèi)容主要包括:針對異步性,采用自治控制的方法,針對實時性,采用層次結(jié)構(gòu)的方法,針對與設(shè)備無關(guān)性,采用分類處理的方法。1、自治控制
在一般計算機系統(tǒng)中,輸入輸出系統(tǒng)是一個獨立于處理機之外的自治系統(tǒng)。外圍設(shè)備本身通過它內(nèi)部的控制器自己獨立擔(dān)負許多輸入輸出功能,只在某些必要的時刻才要求處理機給予很少的服務(wù)。自治控制實際上也就是把外圍設(shè)備所要完成的功能分散開來,即把設(shè)備的輸入輸出功能最大限度地從處理機中分離出來,由專門的設(shè)備控制器通過它自身地硬件和軟件去完成,從而使處理機能夠擺脫繁重的輸入輸出任務(wù)。2、層次結(jié)構(gòu)
對于不同類型的外圍設(shè)備,輸入輸出系統(tǒng)要完成的具體內(nèi)容是不同的,采用可編程序來進行控制,能比較好地適應(yīng)各種不同設(shè)備的控制需要,賦予固定的硬件設(shè)備以很大的靈活性。
在外圍設(shè)備比較多的情況下,輸入輸出系統(tǒng)一般要采用層次結(jié)構(gòu)來進行組織。
靠近處理機和主存儲器的最高層采用標(biāo)準的控制功能,如輸入輸出處理機、輸入輸出通道等。中間層是標(biāo)準接口。外圍設(shè)備通過設(shè)備控制器與標(biāo)準接口相連接。2、層次結(jié)構(gòu)
外圍設(shè)備一般要按照工作方式和工作速度等進行分類,不同類型的設(shè)備連接到不同的輸入輸出通道或輸入輸出處理機上。當(dāng)需要對某一臺外圍設(shè)備實現(xiàn)輸入或輸出操作時,CPU只需要組織好輸入輸出程序,并啟動相關(guān)的輸入輸出通道或輸入輸出處理機即可。具體的輸入輸出操作在輸入輸出通道或輸入輸出處理機的控制下完成,不需要CPU干預(yù)。
輸入輸出通道或輸入輸出處理機:通常是一臺小型的專用處理機,它能夠執(zhí)行與輸入輸出操作有關(guān)的程序。
輸入輸出通道或輸入輸出處理機執(zhí)行CPU為它組織好的程序,通過輸入輸出指令控制標(biāo)準接口,標(biāo)準接口在指令控制下發(fā)出一系列標(biāo)準的控制信號,送往設(shè)備控制器。設(shè)備控制器根據(jù)具體設(shè)備的不同需要,在自己的硬件和軟件的控制下,可以產(chǎn)生設(shè)備所需要的各種非標(biāo)準信號,最終完成各種輸入輸出操作。3、分類組織
輸入輸出系統(tǒng)通常要根據(jù)各種外圍設(shè)備的不同性質(zhì)分類進行組織。可以根據(jù)工作方式、工作速度及使用場合等進行分類。
如果按照工作速度進行分類,可以分為面向字符的設(shè)備(Character-orienteddevice)和面向數(shù)據(jù)塊的設(shè)備(Block-orientedDevice)兩類。4.1.3基本輸入輸出方式對于工作速度、工作方式和工作性質(zhì)不同的外圍設(shè)備,通常要采用不同的輸入輸出方式。目前常用的基本輸入輸出方式有三種:方式1:程序控制輸入輸出方式
程序控制輸入輸出方式又稱為狀態(tài)驅(qū)動輸入輸出方式、應(yīng)答輸入輸出方式、查詢輸入輸出方式、條件驅(qū)動輸入輸出方式等。
采用程序控制輸入輸出方式一個很明顯的優(yōu)點是靈活性很好。
程序控制輸入輸出方式一個很大缺點是:在一般情況下不能實現(xiàn)處理機與外圍設(shè)備并行工作。
方式2:中斷輸入輸出方式
采用中斷輸入輸出方式能夠完全克服程序控制輸入輸出方式中處理機與外圍設(shè)備之間不能并行工作缺點。為了實現(xiàn)中斷輸入輸出方式,外圍設(shè)備和CPU都必須增加相關(guān)的功能。在外圍設(shè)備方面,要改變被動地等待CPU來為它服務(wù)的工作方式。當(dāng)輸入設(shè)備已經(jīng)把數(shù)據(jù)準備就緒,或者輸出設(shè)備已經(jīng)空閑時,要主動向CPU發(fā)出服務(wù)的請求。在CPU方面,每當(dāng)執(zhí)行完成一條指令后都要測試有沒有外圍設(shè)備的中斷服務(wù)請求,如果發(fā)現(xiàn)有外圍設(shè)備的中斷服務(wù)請求,則要暫時停止當(dāng)前正在執(zhí)行的程序,先去為外圍設(shè)備服務(wù),等服務(wù)完成后再繼續(xù)執(zhí)行原來的程序。方式2:中斷輸入輸出方式
中斷輸入輸出方式:當(dāng)出現(xiàn)來自系統(tǒng)外部,機器內(nèi)部,甚至處理機本身的任何例外的,或者雖然是事先安排的,但出現(xiàn)在現(xiàn)行程序的什么地方是事先不知道的事件時,CPU暫停執(zhí)行現(xiàn)行程序,轉(zhuǎn)去處理這些事件,等處理完成后再返回來繼續(xù)執(zhí)行原先的程序。
中斷輸入輸出方式的特點是:
1、CPU與外圍設(shè)備能夠并行工作。
2、能夠處理例外事件。例如,電源掉電、非法指令、地址越界、數(shù)據(jù)溢出、數(shù)據(jù)校驗錯、頁面失效等。
另外兩個特點與程序控制輸入輸出方式相同。
3、數(shù)據(jù)的輸入和輸出都要經(jīng)過CPU,要在程序的控制下完成從輸入設(shè)備中讀入數(shù)據(jù)到主存儲器,或者把主存儲器中的數(shù)據(jù)輸出到輸出設(shè)備中去。因此,中斷輸入輸出方式與程序控制輸入輸出方式一樣具有靈活性好的特點。
4、一般用于連接低速外圍設(shè)備。這是因為每輸入或輸出一個數(shù)據(jù)都必須執(zhí)行一段程序才能完成。方式3:直接存儲器訪問(DMA)方式
直接存儲器服務(wù)方式又稱為DMA(DirectMemoryAccess)方式,這種輸入輸出方式主要用來連接高速外圍設(shè)備。例如,磁盤存儲器,磁帶存儲器等。DMA方式具有如下特點:
1、外部設(shè)備的輸入輸出請求直接發(fā)給主儲存器。
2、不需要做保存現(xiàn)場和恢復(fù)現(xiàn)場等工作,從而使DMA方式的工作速度大大加快。
3、在DMA控制器中,除了需要設(shè)置數(shù)據(jù)緩沖寄存器、設(shè)備狀態(tài)寄存器或控制寄存器之外,還要設(shè)置主存儲器地址寄存器,設(shè)備地址寄存器和數(shù)據(jù)交換個數(shù)計數(shù)器。
4、在DMA方式開始之前要對DMA控制器進行初始化,包括向DMA控制器傳送主存緩沖區(qū)首地址、設(shè)備地址、交換的數(shù)據(jù)塊的長度等,并啟動設(shè)備開始工作。在DMA方式結(jié)束之后,要向CPU申請中斷,在中斷服務(wù)程序中對主存儲器中數(shù)據(jù)緩沖區(qū)進行后處理。如果需要繼續(xù)傳送數(shù)據(jù)的話,要再次對DMA控制器進行初始化。
5、在DMA方式中,CPU不僅能夠與外圍設(shè)備并行工作,而且整個數(shù)據(jù)的傳送過程不需要CPU的干預(yù)。如果主存儲器的頻帶寬度足夠的話,外圍設(shè)備的工作可以絲毫不影響CPU運行它自身的程序。DMA方式的工作流程
對于輸入設(shè)備:
從輸入介質(zhì)上讀一個字節(jié)或字到DMA控制器中的數(shù)據(jù)緩沖寄存器BD中,如果輸入設(shè)備是面向字符的,則要把讀入的字符裝配成字。
若一個字還沒有裝配滿,則返回到上面;若校驗出錯,則發(fā)中斷申請;若一個字已經(jīng)裝配滿,則將BD中的數(shù)據(jù)送入主存數(shù)據(jù)寄存器。
把主存地址寄存器BA(在DMA控制器中)中的地址送入主存地址寄存器,并且將BA中的地址增值至下一個字地址。
把DMA控制器內(nèi)的數(shù)據(jù)交換個數(shù)計數(shù)器BC中的內(nèi)容減"1"。
若BC中的內(nèi)容為"0",則整個DMA數(shù)據(jù)傳送過程全部結(jié)束,否則返回到最上面繼續(xù)進行。DMA方式的工作流程
對于輸出設(shè)備:
把主存地址寄存器BA(在DMA控制器中)中的地址送入主存地址寄存器,并啟動主存儲器,同時將BA中的地址增值至下一個字地址。
將主存儲器數(shù)據(jù)寄存器中的數(shù)據(jù)送入DMA控制器的數(shù)據(jù)緩沖寄存器BD中。如果輸出設(shè)備是面向字符的,則要把BD中的數(shù)據(jù)拆卸字符。
把BD中數(shù)據(jù)逐個字符(對于面向字符的設(shè)備)或整個字寫到輸出介質(zhì)上。
把DMA控制器內(nèi)的數(shù)據(jù)交換個數(shù)計數(shù)器BC中的內(nèi)容減"1"。
若BC中的內(nèi)容為"0",則整個DMA數(shù)據(jù)傳送過程全部結(jié)束,否則返回到最上面繼續(xù)進行。目前使用的DMA方式實際上有如下三種:
1、周期竊取方式2、直接存取方式3、數(shù)據(jù)塊傳送方式4.2中斷系統(tǒng)在現(xiàn)代計算機系統(tǒng)中,中斷系統(tǒng)已經(jīng)不僅僅屬于輸入輸出系統(tǒng)。它除了被用來管理各種各樣的外圍設(shè)備之外,在整個計算機系統(tǒng)起著重要的作用。本節(jié)主要介紹在中斷系統(tǒng)設(shè)計過程中軟件與硬件的功能分配及其相關(guān)的一些問題。4.2.1中斷源的組織中斷系統(tǒng)的復(fù)雜性實際上是由中斷源的多樣性引起的。中斷源可以來自系統(tǒng)外部,也可以來自機器內(nèi)部,甚至處理機本身。中斷可以是硬件引起的,也可以是軟件引起的。把各種各樣的中斷源分類、分級組織好,是設(shè)計中斷系統(tǒng)時首先要做好的一件事情。中斷源:引起中斷的各種事件稱為中斷源。常見的中斷源有如下幾種類型:
1、由外圍設(shè)備引起的中斷。2、由處理機產(chǎn)生的中斷。3、由存儲器產(chǎn)生的中斷。4、由控制器產(chǎn)生的中斷。5、由總線產(chǎn)生的中斷。6、實時過程控制產(chǎn)生的中斷。7、實時鐘的定時中斷。8、多處理機系統(tǒng)中,從其它處理機發(fā)送來的中斷,控制臺開關(guān)中斷等。常見的中斷源有如下幾種類型:
9、程序調(diào)試過程中,執(zhí)行完一條指令或程序運行到一個實現(xiàn)事先設(shè)置的斷點時,通過中斷進入監(jiān)控程序,以便對被調(diào)試程序進行跟蹤或監(jiān)測。10、硬件故障中斷。11、電源故障中斷。IBM公司的機器,通常把中斷源分為6類:
1、重新啟動中斷。2、機器檢驗出錯中斷。3、程序性錯誤引起的中斷。4、訪問管理程序中斷。5、外部事件中斷。6、輸入輸出中斷。
有許多機器把中斷源分為可屏蔽中斷和不可屏蔽中斷兩大類,或稱為一般中斷和異常中斷(ExceptionInterrupt)。對于不可屏蔽中斷,不能通過軟件屏蔽它,它一旦申請中斷服務(wù),處理機必定會響應(yīng)。對于可屏蔽中斷,可以通過軟件把它屏蔽掉。例如,如果不希望某一臺打印機工作,可以通過一條指令向這臺打印機發(fā)一個中斷屏蔽碼。在這以后,即使這臺打印機申請中斷服務(wù),這個中斷申請信號也不能送往處理機。
有的機器按照中斷事件的緊迫程度來劃分可屏蔽中斷和不可屏蔽中斷,例如,把電源掉電、機器硬故障誤等劃分為不可屏蔽中斷。在異常中斷中,有一類稱為自陷(trap)中斷,它的中斷請求發(fā)生在一些特殊指令的末尾,經(jīng)中斷服務(wù)程序處理后返回到正常執(zhí)行程序的下一條指令繼續(xù)執(zhí)行。另一類稱為故障(Fault)中斷,它的中斷請求可能發(fā)生在任何一條指令的執(zhí)行過程中,經(jīng)中斷服務(wù)程序處理后,要返回到原先發(fā)生故障的那條指令處重新執(zhí)行引起故障的那條指令。還有一類稱為失效(Abort)中斷,它的中斷請求也可能發(fā)生在一條指令的執(zhí)行過程中,但是,除非強制干預(yù)或系統(tǒng)重新復(fù)位,否則機器無法繼續(xù)正常工作下去。4.2.2中斷優(yōu)先級中斷源的中斷請求一般是隨機的,在中斷源比較多的情況下,很可能同時發(fā)生多個中斷請求。CPU必須安排一個響應(yīng)和處理中斷的優(yōu)先順序。中斷優(yōu)先級的確定是一個涉及計算機系統(tǒng)全局的問題,主要由下列因素來決定:
1、中斷源的急迫性。
2、設(shè)備的工作速度。
3、數(shù)據(jù)恢復(fù)的難易程度。
4、要求處理機提供的服務(wù)量。4.2.3中斷系統(tǒng)的軟硬件功能分配
從中斷源發(fā)出中斷服務(wù)請求,到這個中斷服務(wù)請求被處理機響應(yīng)并全部處理完成,其過程是相當(dāng)復(fù)雜的。在設(shè)計一臺計算機的中斷系統(tǒng)時,如何恰當(dāng)?shù)头峙渲袛嘞到y(tǒng)的軟件與硬件功能,是設(shè)計好中斷系統(tǒng)最關(guān)鍵的一個問題。中斷系統(tǒng)中軟件與硬件的功能分配主要考慮如下兩個因素:
1、中斷響應(yīng)時間
2、靈活性4.2.4中斷源的識別方法1、軟件查詢法識別中斷源最簡單的一種方法是軟件查詢法(PoolingMethod)。這種方法所需要的硬件非常簡單,幾乎全部用軟件來實現(xiàn)。
查詢法的主要優(yōu)點是靈活性好。因為用程序?qū)υO(shè)備進行測試的順序?qū)嶋H上就是中斷源的中斷優(yōu)先級,而測試順序是程序員可以通過軟件任意改變的。
查詢法的主要缺點的是速度太慢,特別是在中斷源比較多的時候。4.2.4中斷源的識別方法2、串行排隊鏈法為了提高識別中斷源的速度,必須用硬件來完成中斷源的排隊,這種方法稱為串行排隊鏈法(Claisy-chainMethod)。
用硬件串行排隊器和編碼器在所有申請中斷服務(wù)的中斷源中,產(chǎn)生具有最高優(yōu)先級的中斷源的相對編號。硬件的排隊器分布在各個中斷源中,編碼器可以集中放在處理機中。這種方法由于使用了硬件排隊器和編碼器,因此識別中斷源的速度比較快。在進入公共的中斷服務(wù)程序入口之后,由于已經(jīng)知道要響應(yīng)哪個中斷源的中斷請求,可以通過跳轉(zhuǎn)指令直接進入該中斷源的中斷服務(wù)程序中。4.2.4中斷源的識別方法3、中斷向量法(VectorInterruptMethod)采用中斷向量法,識別中斷源的速度更快,使用也更為廣泛。
中斷向量法:把識別中斷源的全部工作全部用硬件來實現(xiàn)。在主存儲器的固定區(qū)域中開辟出一個專用的中斷向量區(qū),用硬件排隊器和編碼器在所有請求中斷服務(wù)的中斷源中,產(chǎn)生具有最高優(yōu)先級的中斷源編號,然后直接通過硬件轉(zhuǎn)向這個中斷源的中斷服務(wù)程序入口。
中斷向量法不需要進入公共的中斷服務(wù)程序,處理機響應(yīng)中斷源的中斷服務(wù)請求后,通過硬件直接進入中斷服務(wù)程序入口,因此,中斷響應(yīng)的速度很快。4.2.4中斷源的識別方法4、獨立請求法為了克服串行排隊鏈法可靠性差的缺點,提出了獨立請求法(IndependentRequestMethod)獨立請求法:各個中斷源使用自己獨立的中斷請求線INIR,每一根中斷請求線在處理機中都有固定的或可編程的中斷優(yōu)先級。如果同時有多個中斷源請求中斷服務(wù),處理機可以通過它的仲裁線路立即選擇其中具有最高優(yōu)先級的中斷源,向它發(fā)出中斷響應(yīng)信號INIT,中斷源用INIT信號清除它的中斷請求信號,處理機就可以立即轉(zhuǎn)入這個中斷源的中斷服務(wù)程序。這樣,不需要用軟件或硬件對中斷源進行掃描,也不需要中斷源回送中斷源編號或中斷向量。4.2.4中斷源的識別方法與串行排隊鏈法相比,獨立請求法實際上是把分布在各個中斷源內(nèi)的串行排隊器都集中到處理機中,從而克服了串行排隊鏈法可靠性差的缺點,但靈活性差的缺點仍然存在。另外,中斷源與處理機的連線比較多。因此,在中斷源很多時,要把獨立請求法與串行排隊鏈法結(jié)合起來。把中斷源分組,組內(nèi)采用串行排隊鏈法,組間采用獨立請求法。這種方法稱為分組獨立請求法。
4.2.5中斷現(xiàn)場的保存和恢復(fù)中斷現(xiàn)場的保存和恢復(fù)分別是中斷處理機過程開始和結(jié)束時必須執(zhí)行的步驟?,F(xiàn)場信息可分為三類:第一類,主要指程序計數(shù)器PC中的內(nèi)容,它必須由硬件來完成保存,可以保存到主存儲器的固定單元中,也可以壓入系統(tǒng)堆棧。第二類,是指記錄當(dāng)前程序狀態(tài)的有關(guān)信息,包括處理機狀態(tài)字、堆棧指針、基址寄存器、中斷屏蔽碼等。第三類,是指在中斷服務(wù)程序中將要被破壞的通用寄存器中內(nèi)容。
4.2.6中斷屏蔽為了縮短中斷響應(yīng)時間,目前大多數(shù)機器中都采用硬件來識別中斷源,如串行排隊鏈法、中斷向量法、獨立請求法和分組獨立請求法等。這些方法雖然識別中斷源的速度很快,但是,由于中斷源的中斷優(yōu)先級是由硬件固定死的,不能由程序員通過軟件來改變,因此靈活性差。采用中斷屏蔽方法可以比較好地解決快速識別中斷源和靈活性之間的矛盾。
4.2.6中斷屏蔽通常為每一個中斷源設(shè)置一個中斷屏蔽位。這些中斷屏蔽位可以分布存放在各個中斷源中,也可以集中存放在處理機內(nèi)。另外,處理機要設(shè)置專門的指令來管理這些中斷屏蔽位。當(dāng)中斷屏蔽位為"1"時,表示對應(yīng)的中斷源不能請求中斷服務(wù),為"0"時,對應(yīng)的中斷源可以請求中斷服務(wù)。
4.2.6中斷屏蔽設(shè)置中斷屏蔽有如下3個用處:
1、在中斷優(yōu)先級已經(jīng)由硬件確定了的情況下,改變中斷源的中斷服務(wù)順序。
2、決定設(shè)備是否采用中斷方式工作。
3、在多處理機系統(tǒng)中,可以通過中斷屏蔽,把對外圍設(shè)備的輸入輸出服務(wù)工作分配到各個處理機中。
4.2.6中斷屏蔽中斷屏蔽的實現(xiàn)方法主要有兩種:
第一種中斷屏蔽方法:每級中斷源設(shè)置一個中斷屏蔽位
第二種中斷屏蔽方法:改變處理機優(yōu)先級
4.3.1通道的作用和功能
在大型計算機系統(tǒng)中,如果僅僅采用前面介紹過的程序控制、中斷和DMA這三種基本的輸入輸出方式來管理外圍設(shè)備,會引起如下兩個問題:
1、所有外圍設(shè)備的輸入輸出工作全部都要由CPU來承擔(dān),CPU的輸入輸出負擔(dān)很重,不能專心于用戶程序的計算。
2、大型計算機系統(tǒng)中的外圍設(shè)備臺數(shù)雖然很多,但是一般并不同時工作。如果為每一臺設(shè)備都配置一個接口,必然是一種浪費。特別是DMA接口,它的硬件代價很高。連接DMA接口的磁盤或磁帶存儲器等一般并不同時工作。
4.3.1通道的作用和功能
一般說來,通道的功能應(yīng)該包括如下幾個方面:
1、接受CPU發(fā)來的輸入輸出指令,根據(jù)指令要求選擇一臺指定的外圍設(shè)備與通道相連接。
2、執(zhí)行CPU為通道組織的通道程序,從主存中取出通道指令,對通道指令進行譯碼,并根據(jù)需要向被選中的設(shè)備控制器發(fā)出各種操作命令。
3、給出外圍設(shè)備的有關(guān)地址,即進行讀/寫操作的數(shù)據(jù)所在的位置。如,磁盤存儲器的拄面號、磁頭號、扇區(qū)號等。
4、給出主存緩沖區(qū)的首地址,這個緩沖區(qū)用來暫時存放從外圍設(shè)備上輸入的數(shù)據(jù),或者暫時存放將要輸出到外圍設(shè)備中去的數(shù)據(jù)。
5、控制外圍設(shè)備與主存緩沖區(qū)之間數(shù)據(jù)交換的個數(shù),對交換的數(shù)據(jù)個數(shù)進行計數(shù),并判斷數(shù)據(jù)傳送工作是否結(jié)束。
6、指定傳送工作結(jié)束時要進行的操作。例如,將外圍設(shè)備的中斷請求及通道的中斷請求送往CPU等。
7、檢查外圍設(shè)備的工作狀態(tài),是正?;蚬收稀8鶕?jù)需要將設(shè)備的狀態(tài)信息送往主存指定單元保存。
8、在數(shù)據(jù)傳輸過程中完成必要的格式的變換,例如,把字拆卸為字節(jié),或者把字節(jié)裝配成字等。
4.3.2通道的工作過程1、在用戶程序中使用訪管指令進入管理程序,由CPU通過管理程序組織一個通道程序,并啟動通道。2、通道處理機執(zhí)行CPU為它組織的通道程序,完成指定的數(shù)據(jù)輸入輸出工作。3、通道程序結(jié)束后向CPU發(fā)中斷請求。CPU響應(yīng)這個中斷請求后,第二次進入操作系統(tǒng),調(diào)用管理程序?qū)斎胼敵鲋袛嗾埱筮M行處理。
4.3.3通道種類根據(jù)多臺外圍設(shè)備共享通道的不同情況,可將通道分為三種類型:字節(jié)多路通道、選擇通道和數(shù)組多路通道,這三種類型的通道與CPU、設(shè)備控制器和外圍設(shè)備的連接。1、字節(jié)多路通道
字節(jié)多路通道(ByteMultiplexorChannel)是一種簡單的共享通道,主要為多臺低速或中速的外圍設(shè)備服務(wù)。字節(jié)多路通道采用分時方式工作,依靠它與CPU之間的高速數(shù)據(jù)通路分時為多臺設(shè)備服務(wù)。
4.3.3通道種類
2、選擇通道
高速外圍設(shè)備,如磁盤存儲器等需要很高的數(shù)據(jù)傳輸率,因此不能字節(jié)多路通道那樣的控制方式。高速外圍設(shè)備必須設(shè)置專門的通道在一段時間內(nèi)單獨為一臺外圍設(shè)備服務(wù),但在不同的時間內(nèi)仍可以選擇不同的設(shè)備。一旦選中某一設(shè)備,通道就進入"忙"狀態(tài),直到該設(shè)備的數(shù)據(jù)傳輸工作全部結(jié)束為止,這就是選擇通道(SelectorChannel)。選擇通道可以認為是只有一個以成組方式工作的子通道,只有一套完整的硬件,它逐個為幾個物理上連接的幾臺高速外圍設(shè)備服務(wù)。
4.3.4通道流量分析
通道流量:又稱為通道吞吐率,通道數(shù)據(jù)傳輸率等,它是指一個通道在數(shù)據(jù)傳送期間,單位時間內(nèi)能夠傳送的最大數(shù)據(jù)量,一般用字節(jié)個數(shù)來表示。
通道最大流量:一個通道在滿負荷工作狀態(tài)下的流量。
通道最大流量主要與通道的工作方式(是指字節(jié)多路通道、選擇通道和數(shù)組多路通道)、在數(shù)據(jù)傳送期內(nèi)通道選擇一次設(shè)備所用的時間TS和傳送一個字節(jié)所用的時間TD等因素有關(guān)。
4.3.4通道流量分析
為了保證字節(jié)多路通道能夠正常工作,即不丟失數(shù)據(jù),可以采取下列幾種方法:
1.增加通道的最大流量,保證連接在通道上的所有設(shè)備的數(shù)據(jù)傳送請求能夠及時得到通道的響應(yīng)。
2.動態(tài)改變設(shè)備的優(yōu)先級。例如,在圖4.23中,只要在30至70微秒之間臨時提高設(shè)備D5的優(yōu)先級,那么,設(shè)備D5的第一次數(shù)據(jù)傳送請求就能及時得到通道的響應(yīng),其它設(shè)備的數(shù)據(jù)傳送請求也能正常得到通道的響應(yīng)。當(dāng)然,也可以采用臨時降低設(shè)備優(yōu)先級的辦法,其效果是相同的。
3.增加一定數(shù)量的數(shù)據(jù)緩沖器,特別是對優(yōu)先級比較低的設(shè)備。
4.4輸入輸出處理機
采用輸入輸出處理機來分擔(dān)中央處理機的輸入輸出任務(wù)是目前使用很普遍的一種方案。輸入輸出處理機又稱為外圍處理機,I/O處理機等,鎖寫為IOP,或PPU。
輸入輸出處理機主要用在除IBM公司以外的其它計算機公司研制的巨型、大型計算機系統(tǒng)中,甚至在有些中小型及微型計算機系統(tǒng)中也有輸入輸出處理機。
4.4.1輸入輸出處理機的作用
在高性能的巨型和大型計算機系統(tǒng)中,如果仍然采用通道處理機方式,存在如下問題:
1、每調(diào)用一次輸入輸出操作的前處理和后處理仍然要CPU來完成,需要兩次用中斷方式中斷CPU的現(xiàn)行程序,調(diào)用操作系統(tǒng)的管理程序為輸入輸出操
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度智慧城市交通管理平臺建設(shè)合同3篇
- 2024年版:房屋交易定金合同協(xié)議書
- 2024年門窗行業(yè)品牌授權(quán)與合作協(xié)議3篇
- 2024年面料設(shè)計版權(quán)授權(quán)使用合同3篇
- 2025年度高毒性?;愤\輸及應(yīng)急處置服務(wù)合同3篇
- 2025年度化工行業(yè)HSE風(fēng)險預(yù)防與應(yīng)急預(yù)案協(xié)議3篇
- 液壓油箱課程設(shè)計
- 2025年度新能源汽車充電站UPS電源系統(tǒng)維護服務(wù)合同3篇
- 2025年度禮品包裝定制及市場推廣合作協(xié)議3篇
- 移動web課程設(shè)計
- (八省聯(lián)考)2025年高考綜合改革適應(yīng)性演練 語文試卷(含答案解析)
- 廣東省廣州海珠區(qū)2023-2024學(xué)年八年級上學(xué)期期末數(shù)學(xué)試卷(含答案)
- 2024年《論教育》全文課件
- 生命安全與救援學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- (2024年)面神經(jīng)炎課件完整版
- 華電行測題庫及答案2024
- 文創(chuàng)園項目可行性方案
- 馬工程版《中國經(jīng)濟史》各章思考題答題要點及詳解
- 一年級口算天天練(可直接打印)
- 廣州三年級上冊英語期末復(fù)習(xí)知識歸類
- 高端大氣中國風(fēng)年會邀請函
評論
0/150
提交評論