計算機操作系統(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頁,還剩36頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1設備管理

教學目的:設備管理不但要管理實際I/O操作的設備(如磁盤機、打印機),還要管理諸如設備控制器、DMA控制器、中斷控制器、I/O處理機(通道)等支持設備。設備管理包括各種設備分配、緩沖區(qū)管理和實際物理I/O設備操作,通過管理達到提高設備利用率和方便用戶的目的。 設備管理是操作系統(tǒng)中最繁雜而且與硬件緊密相關的部分。2教學要求:了解設備的分類,熟悉設備管理的目標和功能。熟悉程序I/O方式、中斷方式、DMA方式和通道方式四種I/O的控制方式;掌握通道的概念,熟悉通道類型。熟悉緩沖的概念,熟悉單緩沖、雙緩沖、多緩沖和緩沖池工作原理,了解UNIX系統(tǒng)的緩沖技術。了解在進行設備分配時應考慮的設備的固有屬性、設備的分配算法、設備分配的安全性和設備的獨立性等因素;掌握設備分配中數(shù)據(jù)結構,熟悉設備分配的流程;掌握SPOOLing技術概念和SPOOLing系統(tǒng)的組成。熟悉設備處理程序的功能和處理方式,熟悉設備處理程序的處理過程。3

存儲設備:用來存放各種信息的設備稱為存儲設備,例如,軟盤、硬盤、光盤和磁帶等;

I/O設備:用來向計算機輸入和輸出信息的設備,如鍵盤、鼠標、顯示器、打印機等。在現(xiàn)代計算機系統(tǒng)中有些設備既可以做存儲設備,也可以做I/O設備,例如,軟盤、硬盤等。

設備管理就是I/O管理,它是操作系統(tǒng)的一個重要的組成部分,負責管理系統(tǒng)中所有的外部設備。計算機外部設備:在計算機系統(tǒng)中除CPU和內存儲外所有的設備和裝置稱為計算機外部設備(外圍設備、I/O設備)。4計算機外部設備種類繁多,特性各異。主要表現(xiàn)在以下幾個方面:1.速度

不同的外部設備的傳輸速度的差別相當大,如鍵盤的傳輸速度不過幾十,上百個字符,而磁盤的傳輸速度則是60萬字節(jié)/每秒。2.傳輸單位

有的設備的傳輸單位是字節(jié),如鍵盤、打印機、顯示器;有的傳輸單位是字符塊(數(shù)據(jù)塊),如軟盤、硬盤、磁帶有的傳輸單位是位,如個人計算機中的SerialPort(s)COM1、COM23.容許的操作(操作特性)

設備完成的操作種類各不相同,如允許寫操作,只能做讀操作,既可讀,也可寫。4.出錯條件

不同的設備,其出錯條件也不相同,即數(shù)據(jù)傳輸失敗的原因各種各樣,如打印機有缺紙錯,磁盤I/O有奇偶校驗錯等。5設備管理功能

設備管理的主要任務,是完成用戶提出的I/O請求,為用戶分配I/O設備;提高CPU和I/O設備的利用率;提高I/O速度;以及方便用戶使用I/O設備。設備管理應具有設備分配與去配、外圍設備的啟動、磁盤的驅動調度、設備處理和虛擬設備、緩沖管理等功能。設備分配與去配的基本任務是根據(jù)用戶的I/O請求,為之分配其所需的設備。運行結束及時收回.設備處理(設備驅動程序)的基本任務是實現(xiàn)CPU和設備控制器之間的通信。虛擬設備的功能是把一個物理設備變換為多個對應的邏輯設備,以使一個物理設備能供多個用戶共享。緩沖管理的基本任務是管理好各種類型的緩沖區(qū),以緩和CPU和I/O速度不匹配的矛盾,最終達到提高CPU和I/O設備利用率。

6I/O系統(tǒng)

把I/O設備及其接口線路、控制部件、通道以及管理軟件統(tǒng)稱為I/O系統(tǒng).主存與處圍設備之間的信息傳輸操作,稱為I/O操作.I/O系統(tǒng)

把I/O設備及其接口線路、控制部件、通道以及管理軟件統(tǒng)稱為I/O系統(tǒng)。主存與外圍設備之間的信息傳輸操作,稱為I/O操作。典型的I/O系統(tǒng)具有四級結構:主機、通道、設備控制器和I/O設備。中央處理器(CPU)主存儲器(MM)通道1(CH1)通道2(CH2)通道3(CH3)磁盤控制器磁盤機卡片控制器打印機控制器卡片機打印機磁帶控制器磁帶機7I/O設備的種類繁多,其重要性能指標有:數(shù)據(jù)傳輸單位、數(shù)據(jù)傳輸速率和設備的共享屬性等。從不同的角度可以對I/O設備進行不同分類:1按使用特性分

存儲型設備

輸入輸出型設備(交互型設備)2按傳輸速率分低速設備:傳輸速率每秒幾個字節(jié)至數(shù)百個字節(jié);中速設備:傳輸速率每秒數(shù)千個字節(jié);高速設備:傳輸速率每秒數(shù)百個千字節(jié)至千兆字節(jié);I/O設備分類83按信息交換的單位分塊設備:以數(shù)據(jù)塊為單位存儲、傳輸信息,如磁盤、磁帶。字符設備:以字符為單位存儲、傳輸信息,如打印機、終端。4按設備的共享屬性分

獨占設備:在一段時間內只能有一個進程使用的設備,一般為低速I/O設備。(如打印機,磁帶等)

共享設備:在一段時間內可有多個進程共同使用的設備,多個進程以交叉的方式來使用設備,其資源利用率高。(如硬盤)

虛擬設備:在一類設備上模擬另一類設備,常用共享設備模擬獨占設備,用高速設備模擬低速設備,被模擬的設備稱為虛擬設備。目的:將慢速的獨占設備改造成多個用戶可共享的設備,提高設備的利用率。95按外部設備的從屬關系分

系統(tǒng)設備:指操作系統(tǒng)生成時,登記在系統(tǒng)中的標準設備(如終端、打印機、磁盤機等)

用戶設備:指在系統(tǒng)生成時,未登記在系統(tǒng)中的非標準設備。對于這類設備的處理程序由用戶提供,并將其納入系統(tǒng),由系統(tǒng)代替用戶實施管理。(如A/D,D/A轉換器,CAD所用專用設備)6從程序使用角度分邏輯設備物理設備10I/O設備一般由機械和電子兩部分組成。把這兩部分分開處理,以提供更加模塊化,更加通用的設計。1.物理設備機械部分是設備本身(物理裝置)。2.設備控制器(是設備與CPU的接口)電子部分叫做設備控制器或適配器、接口卡在小型和微型機中,它常采用印刷電路卡插入計算機中。設備組成11設備控制器

通常,外圍設備并不是直接與CPU進行通信,而是與設備控制器通信.在設備與設備控制器之間有一個接口,通過數(shù)據(jù)線、控制線和狀態(tài)線傳輸數(shù)據(jù)、控制和狀態(tài)三種類型信號.轉換器緩沖控制邏輯I/O設備數(shù)據(jù)信號線狀態(tài)信號線控制信號線至設備控制器信號數(shù)據(jù)設備與控制器之間的接口12

設備控制器位于CPU與設備之間,主要職責是控制一個或多個I/O設備,以實現(xiàn)I/O設備和主機之間的數(shù)據(jù)交換。它接受從CPU發(fā)來的命令,并去控制I/O設備工作。設備控制器是一個可編址的設備,當它只控制一個設備時,它只有一個唯一的設備地址;若它控制多個設備時,則它含有多個設備地址,并使每個設備對應一個設備地址,以區(qū)別各個設備??刂破鞯娜蝿帐前汛械奈涣鬓D換為字節(jié)塊,并進行必要的錯誤修正。首先,控制器按位進行組裝,然后存入控制器內部的緩沖區(qū)中形成以字節(jié)為單位的塊。在對塊驗證檢查和并證明無錯誤時,再將它復制到主存中。設備控制器可分為兩類:1用于控制字符設備的控制器2用于控制塊設備的控制器設備控制器131接受和識別命令通過控制器中的控制寄存器來存放和接受CPU發(fā)來的命令和參數(shù),并對這些命令進行譯碼。2數(shù)據(jù)交換通過控制器中的數(shù)據(jù)寄存器來實現(xiàn)CPU與控制器之間、控制器與設備之間的數(shù)據(jù)交換。3表示和報告設備的狀態(tài)通過控制器中的狀態(tài)寄存器記下設備的狀態(tài)供CPU了解。僅當設備處于發(fā)送就緒狀態(tài)時,CPU才能啟動設備控制器從中讀出數(shù)據(jù)。設備控制器基本功能144地址識別通過控制器中的地址譯碼器來識別各個設備。系統(tǒng)中的每一個設備都有一個地址,用來唯一的標示這臺設備,為此設備控制器必須能夠識別它所控制的每個設備的地址。5數(shù)據(jù)緩沖通過控制器中的緩沖器來緩解I/O設備與CPU之間速率不匹配的矛盾。6差錯控制

設備控制器兼管數(shù)據(jù)的差錯檢查。通過將差錯檢測碼置位來向CPU報告數(shù)據(jù)出錯。15設備控制器的組成設備控制器與CPU的接口:實現(xiàn)CPU與控制器之間的通信;設備控制器與設備的接口:用于與設備的連接,一個設備控制器上可以連接多個設備,因而一個設備控制器便有多個設備接口,一個接口連接一個設備;

I/O邏輯:實現(xiàn)設備的控制;16數(shù)據(jù)寄存器控制/狀態(tài)寄存器I/O邏輯控制器與設備接口1控制器與設備接口n…....數(shù)據(jù)線地址線控制線……數(shù)據(jù)狀態(tài)控制數(shù)據(jù)狀態(tài)控制CPU與控制器接口控制器與設備接口設備控制器的組成17I/OCPU內存18CPU內存設備控制器I/O19CPU內存設備控制器通道I/O201.定義:I/O通道是獨立于CPU的專門負責數(shù)據(jù)輸入/輸出傳輸工作的處理機,對外部設備實現(xiàn)統(tǒng)一管理,代替CPU對輸入/輸出操作進行控制,從而使輸入/輸出操作可與CPU并行操作,又稱I/O處理器。通道工作原理

通道相當于一個功能簡單的處理機,包含通道指令(讀操作,寫操作,控制,轉移操作),并可執(zhí)行用這些指令編寫的通道程序。

通道程序啟動I/O設備,執(zhí)行完畢后,如果還有下一條指令,則繼續(xù)執(zhí)行,否則表示傳輸完成。

執(zhí)行通道程序,向控制器發(fā)出命令,并具有向CPU發(fā)中斷信號的功能。一旦CPU發(fā)出指令,啟動通道,則通道獨立于CPU工作。一個通道可連接多個控制器,一個控制器可連接多個設備,形成樹形交叉連接。

I/O通道212.引入通道的目的

為了使CPU從I/O事務中解脫出來,同時為了提高CPU與設備,設備與設備之間的并行工作能力。

建立獨立的I/O操作,使一些原來由CPU處理的I/O任務轉由通道來承擔。3.特點

1)指令類型單一:所執(zhí)行的命令僅局限于與I/O操作有關的指令。

2)沒有自己的內存:通道與CPU共享內存。224.分類根據(jù)信息交換的方式不同,通道可分為三種類型:字節(jié)多路通道、數(shù)組選擇通道和數(shù)組多路通道。1)字節(jié)多路通道

字節(jié)多路通道以字節(jié)為單位傳輸信息,它可以分時地執(zhí)行多個通道程序。當一個通道程序控制某臺設備傳送一個字節(jié)后,通道硬件就控制轉去執(zhí)行另一個通道程序,控制另一臺設備傳送信息。主要連接以字節(jié)為單位的低速I/O設備。如打印機,終端。以字節(jié)為單位交叉?zhèn)鬏敚斠慌_傳送一個字節(jié)后,立即轉去為另一臺傳送字節(jié)23子通道子通道子通道子通道控制器A控制器B控制器C控制器N……設備主通道字節(jié)多路通道的工作原理242)數(shù)組選擇通道數(shù)組選擇通道是以塊為單位成批傳送數(shù)據(jù),即每次傳送一批數(shù)據(jù),故傳送速度很高。選擇通道在一段時間內只能執(zhí)行一個通道程序,只允許一臺設備進行數(shù)據(jù)傳輸,當一臺設備數(shù)據(jù)傳輸完成后,再選擇與通道連接的另一臺設備,執(zhí)行它的相應的通道程序。

主要連接磁盤,磁帶等高速I/O設備。選擇通道253)數(shù)組多路通道

它結合了選擇通道傳送速度高和字節(jié)多路通道能進行分時并行操作的優(yōu)點。它先為一臺設備執(zhí)行一條通道指令,然后自動轉接,為另一臺設備執(zhí)行一條通道指令。

主要連接高速設備。這樣,對于連接多臺磁盤機的數(shù)組多路通道,它可以啟動它們同時執(zhí)行移動定位操作,然后,按序交叉地傳輸一批批數(shù)據(jù)。數(shù)據(jù)多路通道實際上是對通道程序采用多道程序設計的硬件實現(xiàn)。26

由于通道的價格較貴,致使計算機系統(tǒng)中通道的數(shù)量遠比設備少。這樣,往往因通道數(shù)量不足,產(chǎn)生一種“瓶頸”現(xiàn)象,影響整個系統(tǒng)的處理能力。解決“瓶頸”問題的最有效的方法,便是增加設備到主機間的通路而不增加通道。也就是,把一個設備連接到多個控制器上,而一個控制器又連接到多個通道上。

“瓶頸”問題272829總線:控制器和設備之間的接口以及計算機系統(tǒng)中的各個子系統(tǒng)(CPU、內存、外設等)相互連接的線路,且連接是共享的。優(yōu)點:低成本(一線多用)靈活性(易于增加設備,便于兩個計算機系統(tǒng)之間共享外設)總線分類:

數(shù)據(jù)總線(DB)、地址總線(AB)、控制總線(CB)總線30I/O控制方式

按照I/O控制器功能的強弱以及和CPU之間聯(lián)系方式的不同,把I/O設備的控制方式分為以下四類:1程序I/O方式2中斷驅動I/O控制方式3直接存儲器訪問(DMA)I/O控制方式4I/O通道控制方式

I/O控制方式發(fā)展的目標是盡量減少主機對I/O控制的干預,更多地進行數(shù)據(jù)處理,提高計算機效率和資源的利用率。主要差別在于CPU與外圍設備并行工作的方式不同,并行工作的程度不同。31程序I/O方式

程序I/O控制方式是指由程序直接控制內存或CPU和外圍設備之間進行信息傳送的方式。通常又稱為“忙/等待”方式或詢問方式。

以數(shù)據(jù)輸入為例,當用戶進程需要輸入數(shù)據(jù)時,由處理機向設備控制器發(fā)出I/O指令啟動設備進行輸入,同時把狀態(tài)寄存器中的忙/閑狀態(tài)busy置為1。在設備輸入期間,CPU通過循環(huán)執(zhí)行測試指令不間斷地檢測設備狀態(tài)寄存器的值,當狀態(tài)寄存器的值顯示設備輸入完成時,處理機將數(shù)據(jù)寄存器中的數(shù)據(jù)取走,送入內存指定單元,然后再啟動設備去讀下一個數(shù)據(jù)。反之,當用戶進程需要向設備輸出數(shù)據(jù)時,也必須同樣發(fā)啟動命令啟動設備輸出并等待輸出操作完成。32向I/O控制器發(fā)讀命令讀I/O控制器的狀態(tài)檢查狀態(tài)?從I/O控制器讀入字向主存中寫字傳送完成?下條指令完成忙就緒未完CPUI/OI/OCPU出錯I/OCPUCPU主存程序I/O方式33(1)把一個啟動位為“1”的控制字寫入該設備的控制狀態(tài)寄存器;

(2)將需輸出數(shù)據(jù)的一個字(節(jié))送到數(shù)據(jù)緩沖寄存器;

(3)測試控制狀態(tài)寄存器中的“busy”,若為1,轉(2),否則轉(4);

(4)輸出設備將數(shù)據(jù)緩沖寄存器中的數(shù)據(jù)取走進行實際的輸出。直接控制方式的輸出數(shù)據(jù)時的工作過程:優(yōu)點:控制簡單,不需要多少硬件支持。(循環(huán)測試方式)缺點:CPU和外設只能串行工作,CPU利用率低。設備之間不能并行工作。(忙—等待方式)34

為了提高CPU和設備的利用率,就應使CPU與設備并行工作。在現(xiàn)代計算機系統(tǒng)中,對I/O設備的控制廣泛采用I/O中斷方式。采用這種方式要求CPU與設備之間有相應的中斷請求線,且在控制寄存器中有一個中斷位。中斷驅動I/O控制方式

計算機在運行過程中,可能會發(fā)生運算溢出、除數(shù)為零、無休止循環(huán)或電壓下降等事先無法預料的故障,這些都是運行中非正常的現(xiàn)象。

CPU收到中斷請求后轉相應事件處理程序的過程稱為中斷響應。35向I/O控制器發(fā)讀命令讀I/O控制器的狀態(tài)檢查狀態(tài)?從I/O控制器讀字向主存中寫字傳送完成?下條指令完成就緒未完CPUI/OI/OCPU出錯I/OCPUCPU主存CPU做其他事中斷中斷驅動方式流程36

優(yōu)點:實現(xiàn)主機和外部設備并行工作,CPU原來用于查詢外設狀態(tài)的時間被充分地利用起來了,其工作效率得到了顯著的提高,大大地提高了CPU的利用效率。

缺點:傳送信息的單位通常是一個字(節(jié)),對于塊設備(磁盤、磁帶)數(shù)據(jù)交換是成批的,且單位數(shù)據(jù)之間的時間間隔較短,如果也采用程序中斷方式,將造成信息的丟失。且每傳送一個字符或一個字,都要發(fā)生一次中斷。37DMA方式又稱直接存儲器訪問I/O控制方式

程序中斷控制方式提高了主機和外設并行工作的效率,但是每傳送一個字或一個字節(jié)的數(shù)據(jù)就要執(zhí)行一遍中斷服務程序,數(shù)據(jù)傳送時仍然要占用CPU的時間,整個系統(tǒng)的效率還是沒有充分發(fā)揮。對于一些高速傳送的外部設備,這種傳送方式的傳輸速度就顯得太低了。其基本思想是在外設和主存之間開辟直接的數(shù)據(jù)交換通路。如圖所示,使CPU不介入傳送時的操作,數(shù)據(jù)也不經(jīng)過CPU。這樣就減少了CPU的開銷,系統(tǒng)效率得到了提高。CPU主存DMA接口接口38向I/O控制器發(fā)布讀塊命令CPUDMACPU做其他事讀DMA控制器的狀態(tài)中斷DMACPU下條指令DMA方式39DMA方式的特點是:

(1)數(shù)據(jù)傳送的基本單位是數(shù)據(jù)塊。(2)所傳送的數(shù)據(jù)是從設備送內存,或者相反。(3)僅在傳送一個或多個數(shù)據(jù)塊的開始和結束時,才需中斷CPU,請求干預,整塊數(shù)據(jù)的傳送是在DMA控制器控制下完成的。

采用DMA方式時,允許DMA控制器接管地址線的控制權,直接控制DMA控制器與內存的數(shù)據(jù)交換。從而使磁盤設備與存儲器之間的數(shù)據(jù)傳送不需要CPU介入,因而減輕了CPU負擔。當采用DMA時,除向控制器提供要讀塊的磁盤地址外,還要向控制器提供兩個信息:要讀塊送往內存的起始地址和要傳送的字節(jié)數(shù)40DMA方式與中斷方式的主要區(qū)別

1)中斷方式是每傳送一個字節(jié)之后發(fā)中斷請求,請求CPU進行中斷處理;

DMA方式則是在所要求傳送的數(shù)據(jù)塊全部傳送結束時要求CPU進行中斷處理,大大減少了CPU進行中斷處理的次數(shù)

2)中斷方式的數(shù)據(jù)傳送是由CPU控制完成的;

DMA方式則是在DMA控制器的控制下不經(jīng)過CPU控制完成的41DMA方式的一個顯著特點是數(shù)據(jù)傳送時,CPU仍然執(zhí)行主程序,那么,有可能DMA控制邏輯與CPU同時要訪問主存,引起主存使用權的沖突。如何處理這種沖突呢?周期挪用法:

當DMA要求訪問主存時,CPU暫時停頓一個存儲周期。一個數(shù)據(jù)傳送結束后,CPU立即繼續(xù)運行。由于CPU現(xiàn)場并沒有變動,只是延緩了對指令的執(zhí)行,因此,這種技術稱為周期挪用,或稱周期竊取。思考:M1M2

存儲周期

M3DMA挪用42

雖然DMA方式比中斷驅動方式已顯著地減少了CPU的干預,即由以字(節(jié))為單位的干預減少到以數(shù)據(jù)塊為單位的干預。但是CPU每發(fā)出一條I/O指令,也只能去讀(或寫)一個連續(xù)的數(shù)據(jù)塊。而當我們需要一次去讀多個離散的數(shù)據(jù)塊且將它們分別傳送到不同的內存區(qū)域,或者相反時,則需由CPU分別發(fā)出多條I/O指令及進行多次中斷處理,才能完成。I/O通道控制方式的引入

由于DMA每次只能執(zhí)行一條I/O指令,不能滿足復雜的I/O操作要求。在大、中型計算機系統(tǒng)中,普遍采用由專用的I/O處理器來接受CPU的委托,獨立執(zhí)行自己的通道程序來實現(xiàn)I/O設備與內存之間的信息交換,這就是通道技術。

通道技

溫馨提示

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

評論

0/150

提交評論