大連理工大學操作系統(tǒng)13章IO課件_第1頁
大連理工大學操作系統(tǒng)13章IO課件_第2頁
大連理工大學操作系統(tǒng)13章IO課件_第3頁
大連理工大學操作系統(tǒng)13章IO課件_第4頁
大連理工大學操作系統(tǒng)13章IO課件_第5頁
已閱讀5頁,還剩49頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、I/O輸入系統(tǒng)2CPU磁盤適配器USB適配器圖形適配器內(nèi)存操作系統(tǒng)如何管理設備的呢?CPU與內(nèi)存與內(nèi)存已經(jīng)講過已經(jīng)講過3內(nèi)容提要l設備管理的基本概念l數(shù)據(jù)傳送控制方式l中斷技術l緩沖技術l設備分配lI/O進程控制l設備驅(qū)動程序l小結4設備的類別l設備分類的原因設備種類繁多、特性各異,操作方式的區(qū)別也很大;包括常用的輸入輸出設備、外存設備和終端設備等;外設由單一走向多樣化:紙帶、卡片硬件設備和虛終端技術、仿真終端技術。5設備的類別l對設備分類的目的:簡化設備管理程序設備管理程序是和硬件打交道的,因此,不同的設備對應不同的管理程序;對于同類設備,由于設備的特性十分相似,從而可以利用相同的管理程序或

2、只需做很少的修改。6設備的分類l按設備的使用特性可以分為存儲設備、輸入輸出設備、終端設備以及脫機設備等。7設備的分類l按系統(tǒng)觀點數(shù)據(jù)傳輸率傳輸方式共享方式l I/O設備種類繁多,數(shù)據(jù)傳輸率存在很大差距低速設備:數(shù)據(jù)傳輸率在每秒幾個到幾百字節(jié)范圍,常見有鍵盤、鼠標、語音的輸入輸出等設備。中速設備:數(shù)據(jù)傳輸率一般在每秒數(shù)千字節(jié)到萬字節(jié)的范圍,常見的有針式、激光打印機等。高速設備:數(shù)據(jù)傳輸率在每秒十萬字節(jié)以上,典型的有磁帶、磁盤、光盤等。 104 鍵盤 鼠標 針式 軟盤 激光 光盤 硬盤 打印機 打印機 1081071061051031021018設備的分類:按系統(tǒng)觀點l按傳輸單位l按設備在傳輸時的

3、交換單位可以分為以下幾類:字符設備l傳輸單位為字節(jié),或字符,屬于無結構/慢速設備;l常見的交互式終端、打印機等;l不可尋址、I/O中斷驅(qū)動和傳輸率相對較低。塊設備l通常作為存儲設備,傳輸以塊為單位,塊大小為 512到4KB之間;l典型的為磁盤;l可尋址、一般為DMA(直接存儲器存取,直接存取)方式。 9設備的分類:按系統(tǒng)觀點l 按共享屬性l 設備的物理特性不同,其利用和使用的特點也不同,可以分為以下幾類:獨占設備獨占設備l一段時間內(nèi)只允許一個用戶(進程)訪問的設備;l如打印機、磁帶機等順序設備;l作為系統(tǒng)資源,也稱為臨界資源;l在多個進程并發(fā)運行的系統(tǒng)中,應互斥的訪問該類資源。l使用方式:申請

4、,使用,使用,使用,釋放。共享設備共享設備l一段時間內(nèi)可以允許多個用戶(進程)訪問的設備;l如磁盤可隨機訪問的隨機設備;l使用方式:使用,使用,使用。虛擬設備虛擬設備l通過虛擬技術將獨占設備變換成可以共享的邏輯設備,供多個進程同時訪問。spooling技術10設備管理的主要任務l 設備管理是對計算機輸入輸出系統(tǒng)的管理。 選擇和分配輸入輸出設備以便進行數(shù)據(jù)傳輸操作; 控制輸入輸出設備和CPU(或內(nèi)存)之間交換數(shù)據(jù); 提供友好的透明接口,屏蔽設備硬件特性; 實現(xiàn)操作系統(tǒng)的最佳效率:提高設備之間、CPU和設備之間以及進程間的并行操作度。11設備管理的主要功能l提供和進程管理系統(tǒng)的接口當進程要求設備資

5、源時,該接口將進程要求傳遞給設備管理程序。l進行設備分配按照設備類型及分配算法把相關設備分配給請求進程,未能獲得分配的進程放入等待隊列。l實現(xiàn)設備之間、CPU和設備之間的并行操作需要硬件支持l進行緩沖區(qū)管理解決外設和CPU(或內(nèi)存)的速度問題12內(nèi)容提要l設備管理的基本概念l數(shù)據(jù)傳送控制方式l中斷技術l緩沖技術l設備分配lI/O進程控制l設備驅(qū)動程序l小結13數(shù)據(jù)傳送控制方式l程序直接控制方式l中斷控制方式lDMA方式l通道方式一種循環(huán)I/O測試方式,通過執(zhí)行I/O測試指令測試設備忙/閑標志以確定是否進行數(shù)據(jù)傳輸。高速CPU和慢速I/O設備矛盾突出,CPU浪費嚴重,一般出現(xiàn)在早期計算機或者現(xiàn)在

6、微機系統(tǒng)中。當I/O操作正?;虍惓=Y束時中斷CPU,從而實現(xiàn)了I/O設備和CPU間一定程度的并行操作,改善了CPU的利用率,適用于字符設備的I/O。在外圍設備和內(nèi)存之間開辟直接的數(shù)據(jù)交換通道進行數(shù)據(jù)傳輸,適用于塊設備的I/O。使用通道來控制內(nèi)存或CPU和外圍設備之間的數(shù)據(jù)傳輸。大大提高了CPU和外設之間的并行能力,可把種類繁多,物理特性各異的外設以標準的接口方式連接到系統(tǒng)中。14程序直接控制方式l由用戶進程來直接控制內(nèi)存或CPU和外圍設備之間的信息傳送??刂普呤怯脩暨M程CPU直接與I/O設備(設備控制器)進行通信,負責將用戶數(shù)據(jù)傳送到I/O端口用戶程序通過系統(tǒng)調(diào)用來使用I/O設備CPU和外設速

7、度上的差異,使得要保持CPU和外設之間的同步,CPU必須知道外設當前的傳輸情況CPU需要不斷查詢I/O設備的端口狀態(tài),性能較低15程序直接控制方式的控制流程16程序直接控制方式l 優(yōu)點控制簡單,CPU和外設的操作可以通過狀態(tài)信息得到同步硬件結構簡單l 缺點CPU的利用率低下;CPU和外設速度上的差異導致CPU大量時間處于等待和空閑狀態(tài);尤其在多進程并發(fā)環(huán)境下。不能實現(xiàn)設備間的并行工作;因為CPU在一段時間內(nèi)只能和一臺外圍設備交換數(shù)據(jù)信息。數(shù)據(jù)傳輸完全在CPU的控制之下,對外部出現(xiàn)的異常事件無實時響應能力。l 適用范圍:早期計算機系統(tǒng),外圍設備比較少的系統(tǒng)。如單片機系統(tǒng)。17中斷方式l目的減少程

8、序直接控制方式中CPU等待時間提高系統(tǒng)的并行工作程度l條件要求CPU與設備(控制器)之間有相應的中斷請求線;在設備控制器的控制狀態(tài)寄存器中有相應的中斷允許位設備控制器中:中斷請求觸發(fā)器,中斷屏蔽觸發(fā)器CPU的PSW寄存器中:中斷允許位18中斷方式的傳送結構進程需要數(shù)據(jù)時,通過CPU發(fā)出”start”指令啟動外圍設備準備數(shù)據(jù);同時將控制狀態(tài)寄存器中斷允許位打開,使得中斷程序可以被調(diào)用執(zhí)行。進程發(fā)出指令啟動設備后,該進程放棄CPU,等待輸入完成;進程調(diào)度程序可以調(diào)度其他就緒進程使用CPU。輸入完成時,I/O控制器聽過中斷請求線向CPU發(fā)出中斷,CPU收到后轉(zhuǎn)向預先設計好的中斷處理程序?qū)?shù)據(jù)進行相應

9、處理。在以后的某個時刻,進程調(diào)度程序選中提出請求并得到數(shù)據(jù)的進程,該進程從約定的內(nèi)存特定單元取出數(shù)據(jù)繼續(xù)工作。19中斷控制方式的處理過程當CPU發(fā)出啟動設備和允許中斷指令后,并沒有象程序直接控制方式一樣循環(huán)檢測狀態(tài)控制寄存器的狀態(tài)位,而是調(diào)度其他進程執(zhí)行;當設備數(shù)據(jù)送入緩沖寄存器并發(fā)出中斷信號后,CPU才進行中斷處理。CPU在執(zhí)行其他進程時,也可以啟動其他設備工作,從而做到設備之間的并行操作以及設備和CPU間的并行操作。20中斷控制方式l 優(yōu)點能夠支持多道程序和設備的并行操作,CPU的利用率大大提高;具有實時響應能力,可應用于實時控制場合。l 缺點控制器數(shù)據(jù)緩沖寄存器較小,完成一次I/O可能要

10、多次中斷驅(qū)動,發(fā)生中斷次數(shù)較多;設備間并行操作,由于中斷次數(shù)的急劇增加而造成CPU無法響應中斷和出現(xiàn)數(shù)據(jù)丟失現(xiàn)象;對各種高速外圍設備,或希望成組數(shù)據(jù)交換時l一方面高速的外設由于中斷方式可能來不及響應而丟失數(shù)據(jù);l另一方面成組數(shù)據(jù)交換多次地通過中斷進行,也顯得速度太慢。中斷驅(qū)動方式僅適合于中、慢速設備。對于大批量成組數(shù)據(jù)交換,可以利用DMA和通道方式。21DMA控制方式lDMA方式又稱直接存取方式。l基本思想:在外圍設備和內(nèi)存之間開辟直接的數(shù)據(jù)交換通路。DMA方式中,I/O控制器除了控制狀態(tài)寄存器和數(shù)據(jù)緩沖寄存器外,還包括傳送字節(jié)數(shù)、內(nèi)存地址寄存器等;DMA控制器可用來代替CPU控制內(nèi)存和設備之

11、間進行成批的數(shù)據(jù)交換;除了在數(shù)據(jù)傳送開始時需要CPU的啟動指令和在結束時需發(fā)中斷通知CPU外,不再象中斷控制方式那樣需要CPU的頻繁干涉。2223DMA方式的數(shù)據(jù)傳送處理過程區(qū)別:中斷方式時是在數(shù)據(jù)緩沖寄存器滿之后發(fā)出中斷要求CPU進行中斷處理,而DMA方式則是在所要求傳送的數(shù)據(jù)塊全部結束時要求CPU中斷處理,大大減少CPU進行中斷處理的次數(shù)。區(qū)別:中斷方式的數(shù)據(jù)傳送是在中斷處理時由CPU控制完成的,DMA方式是在DMA控制器的控制下不經(jīng)過CPU控制完成的,這就排除了并行操作設備過多時CPU來不及處理或速度不匹配而造成數(shù)據(jù)丟失等現(xiàn)象24DMA控制方式l優(yōu)點數(shù)據(jù)在內(nèi)存和設備之間直接傳送,CPU不

12、干預。數(shù)據(jù)的傳輸控制完全由DMA控制器完成,速度快,適合高速成組數(shù)據(jù)傳輸。 數(shù)據(jù)塊在傳輸過程中,CPU與外設并行工作,比中斷控制方式的并行性高。l 局限性DMA方式對外圍設備的管理和某些操作仍由CPU控制。對外圍設備的管理和控制也就愈來愈復雜。多個DMA控制器(有的硬件會占用多個DMA號)的同時使用顯然會引起內(nèi)存地址的沖突并使得控制過程進一步復雜化。多個DMA控制器的同時使用也是不經(jīng)濟的。25通道控制方式l通道相當于一個功能單純的處理機,專門用于處理I/0操作。通道有自己的運控部件和指令系統(tǒng),但沒有專門的內(nèi)存,而是通過“周期竊取”方式與主機共享內(nèi)存。通道是一個專管輸入輸出操作控制的硬件。通道控

13、制方式是一種以內(nèi)存為中心,實現(xiàn)設備和內(nèi)存直接交換數(shù)據(jù)的控制方式。26l 一條通道指令可以傳送一組數(shù)據(jù),一個通道程序可以傳送多組數(shù)據(jù)。多組數(shù)據(jù)全部傳送完畢后(即一個通道程序執(zhí)行完畢),才向處理機發(fā)出一次中斷。l 通道不僅可以傳送數(shù)據(jù),更重要的是它還完成對設備的控制。在通道的協(xié)助下,主機只要發(fā)出一個啟動通道,執(zhí)行通道程序的指令。而不必考慮設備的具體控制以及如何完成數(shù)據(jù)傳送等問題,大大減輕了主機的負擔。區(qū)別:DMA方式中,數(shù)據(jù)的傳送方向、存放數(shù)據(jù)的內(nèi)存地址機長度由CPU控制,在通道方式中,這些由專管輸入輸出的硬件通道來進行控制。區(qū)別:與DMA方式時每臺設備至少一個DMA控制器相比,通道方式可以做到一

14、個通道控制多臺設備與內(nèi)存進行數(shù)據(jù)交換,使得通道方式進一步減輕了CPU的工作負擔和增加了計算機系統(tǒng)的并行工作程度。27內(nèi)容提要l設備管理的基本概念l數(shù)據(jù)傳送控制方式l中斷技術l緩沖技術l設備分配lI/O進程控制l設備驅(qū)動程序l小結28中斷技術l 定義指計算機在執(zhí)行期間,系統(tǒng)內(nèi)發(fā)生任何非尋常的或非預期的急需處理事件,使得CPU暫時中斷當前正在執(zhí)行的程序而轉(zhuǎn)去執(zhí)行相應的事件處理程序,待處理完畢后又返回原來被中斷處繼續(xù)執(zhí)行或調(diào)度新的進程執(zhí)行的過程。l 中斷源引起中斷發(fā)生的事件l 中斷請求中斷源向CPU發(fā)出的請求中斷處理信號l 中斷響應CPU收到中斷請求后轉(zhuǎn)相應的事件處理程序29中斷技術l禁止中斷在有些

15、情況下,盡管產(chǎn)生了中斷源和發(fā)出了中斷請求,但CPU內(nèi)部的處理機狀態(tài)字PSW的中斷允許位已被清除,從而不允許CPU響應中斷。CPU禁止中斷后只有等到PSW的中斷允許位被重新設置后才能接收中斷。禁止中斷也稱為關中斷。PSW的中斷允許位的設置也被稱為開中斷。中斷請求、關中斷、開中斷等都由硬件實現(xiàn)。開中斷和關中斷是為了保證某些程序執(zhí)行的原子性。30中斷技術l中斷屏蔽在中斷請求產(chǎn)生之后,系統(tǒng)用軟件方式有選擇地封鎖部分中斷而允許其余部分的中斷仍能得到響應。中斷屏蔽是通過每一類中斷源設置一個中斷屏蔽觸發(fā)器來屏蔽它們的中斷請求而實現(xiàn)的。有些中斷請求是不能屏蔽甚至不能禁止的,也就是說,這些中斷具有最高優(yōu)先級。不

16、管CPU是否是關中斷的,只要這些中斷請求一旦提出,CPU必須立即響應。例如,電源掉電事件所引起的中斷就是不可禁止和屏蔽中斷。31中斷的分類與優(yōu)先級l根據(jù)系統(tǒng)對中斷處理的需要,操作系統(tǒng)一般對中斷進行分類并對不同的中斷賦予不同的處理優(yōu)先級,以便在不同的中斷同時發(fā)生時,按輕重緩急進行處理。l根據(jù)中斷源產(chǎn)生的條件,可把中斷分為外中斷和內(nèi)中斷。l外中斷是指來自處理機和內(nèi)存外部的中斷,外中斷在狹義上一般被稱為中斷。l內(nèi)中斷主要指在處理機和內(nèi)存內(nèi)部產(chǎn)生的中斷。內(nèi)中斷一般稱為陷阱(trap)。32中斷的分類與優(yōu)先級l為了禁止中斷或屏蔽中斷,CPU的處理機狀態(tài)字PSW中也設置有相應的優(yōu)先級。如果中斷源的優(yōu)先級高

17、于PSW的優(yōu)先級,則CPU響應該中斷源的中斷請求,反之,CPU屏蔽該中斷源的中斷請求。l各中斷源的優(yōu)先級在系統(tǒng)設計時給定,在系統(tǒng)運行時是固定的。而處理機的優(yōu)先級則根據(jù)執(zhí)行情況由系統(tǒng)程序動態(tài)設定。33中斷和陷阱的區(qū)別l 陷阱通常由處理機正在執(zhí)行的現(xiàn)行指令引起,而中斷則是由與現(xiàn)行指令無關的中斷源引起的。l 陷阱處理程序提供的服務為當前進程所用,而中斷處理程序提供的服務則不是為了當前進程的。l CPU在執(zhí)行完一條指令之后,下一條指令開始之前響應中斷,而在一條指令執(zhí)行中也可以響應陷阱。例如執(zhí)行指令非法時,盡管被執(zhí)行的非法指令不能執(zhí)行結束,但CPU仍可對其進行處理。l 在有的系統(tǒng)中,陷阱處理程序被規(guī)定在

18、各自的進程上下文中執(zhí)行,而中斷處理程序則在系統(tǒng)上下文中執(zhí)行。34軟中斷l(xiāng)中斷和陷阱都可以看作是硬中斷,因為這些中斷和陷阱要通過硬件產(chǎn)生相應的中斷請求。l軟中斷則是通信進程之間用來模擬硬中斷的一種信號通信方式。其中斷源發(fā)中斷請求或軟中斷信號后,CPU或接收進程在適當?shù)臅r機自動進行中斷處理或完成軟中斷信號所對應的功能。在有些系統(tǒng)中,大部分的陷阱是轉(zhuǎn)化為軟中斷處理的。35中斷處理過程CPU檢查響應中斷的條件是否滿足。CPU響應中斷的條件是: 有來自于中斷源的中斷請求、CPU允許中斷。如果CPU響應中斷,則CPU關中斷,使其進入不可再次響應中斷的狀態(tài)。保存被中斷進程現(xiàn)場。分析中斷原因,調(diào)用中斷處理子程

19、序。在多個中斷請求同時發(fā)生時,處理優(yōu)先級最高的。執(zhí)行中斷處理子程序。對陷阱來說,在有些系統(tǒng)中則是通過陷阱指令向當前執(zhí)行進程發(fā)軟中斷信號后調(diào)用對應的處理子程序執(zhí)行。 退出中斷,恢復被中斷進程的現(xiàn)場或調(diào)度新進程占據(jù)處理機。開中斷,CPU繼續(xù)執(zhí)行。36內(nèi)容提要l設備管理的基本概念l數(shù)據(jù)傳送控制方式l中斷技術l緩沖技術l設備分配lI/O進程控制l設備驅(qū)動程序l小結37l為了匹配外設與CPU之間的處理速度,為了減少中斷次數(shù)和CPU的中斷處理時間,同時也是為了解決DMA或通道方式時的瓶頸問題,在設備管理中引入了用來暫存數(shù)據(jù)的緩沖技術。38緩沖的引入緩沖的引入 引入緩沖的必要性引入緩沖的必要性 引入緩沖的一

20、個例子是網(wǎng)絡通信:中斷方式,如果從遠地終端發(fā)來數(shù)據(jù)(串行)僅用1個bit緩沖來接收,則必須在每收到一位數(shù)據(jù)時便中斷CPU一次。對于速率為9.6 kb/s 數(shù)據(jù)通信來說,意味著中斷CPU的頻率也為9.6k次。39 緩沖的種類緩沖的種類 緩沖技術是利用空間來換取時間緩沖技術是利用空間來換取時間,加快系統(tǒng)I/O數(shù)據(jù)處理速度。緩沖區(qū)的設置也根據(jù)設備的類型有關 塊設備的緩沖區(qū)的大小應為塊的大?。?字符設備的緩沖區(qū)大小一般以一行大小設置。 根據(jù)系統(tǒng)不同配置,一般可把緩沖技術分為單緩沖、雙緩沖和多緩沖以及緩沖池幾種。 緩沖的引入緩沖的引入 40單緩沖是在設備和處理機之間設置一個緩沖器。設置雙緩沖解決兩臺外設

21、、打印機和終端之間的并行操作問題。多緩沖是把多個緩沖區(qū)連接起來組成兩部分,一部分專門用于輸入,另一部分專門用于輸出的緩沖結構.緩沖池則是把多個緩沖區(qū)連接起來統(tǒng)一管理,既可用于輸入又可用于輸出的緩沖結構。無論是多緩沖,還是緩沖池,由于緩沖器是臨界資源,在使用緩沖區(qū)時都有一個申請、釋放和互斥的問題。41操作系統(tǒng)用戶進程I/O設備進入進入移動到(a)無緩沖)無緩沖(b)單緩沖)單緩沖(c)雙緩沖)雙緩沖I/O設備I/O設備進入移動到(d)循環(huán)緩沖)循環(huán)緩沖I/O設備進入移動到 緩沖的種類緩沖的種類 42內(nèi)容提要l設備管理的基本概念l數(shù)據(jù)傳送控制方式l中斷技術l緩沖技術l設備分配lI/O進程控制l設備

22、驅(qū)動程序l小結43I/O設備分類傳輸速率信息交換單位設備共享特性低速設備中速設備高速設備字符設備塊設備獨占設備共享設備虛擬設備分類依據(jù)類別設備類型鍵盤激光打印機磁盤機打印機磁盤44I/O控制方式程序直接控制方式中斷控制方式DMA控制方式通道控制方式設備管理的主要任務:控制設備和內(nèi)存或CPU之間的數(shù)據(jù)傳送。無中斷機構引入中斷機構CPU和設備并行外設和內(nèi)存之間開辟直接的通道通道就是一個簡單的處理機45緩沖技術目的分類緩沖操作同步控制單緩沖信號量機制雙緩沖循環(huán)緩沖緩沖池匹配CPU和外設速度減少中斷頻率提高并行性緩沖技術是利用空間來換取時間緩沖技術是利用空間來換取時間,加快系統(tǒng)I/O數(shù)據(jù)處理速度。46問題1:中斷l(xiāng) 簡述中斷處理過程l 保護現(xiàn)場為了在中斷處理完之后可以返回程序原來被中斷的地方繼續(xù)執(zhí)行,系統(tǒng)需要保存中斷響應時CPU的工作現(xiàn)場。l 分析原因根據(jù)中斷源確定中斷原因,即根據(jù)中斷號檢索中斷向量表,得到中斷處理程序的入口地址。l 處理中斷核心調(diào)用中斷處理程序,完成中斷處理。l 中斷返回恢復中斷寄存器內(nèi)容和執(zhí)行核心棧退棧

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論