第五章計算機操作系統設備管理課件_第1頁
第五章計算機操作系統設備管理課件_第2頁
第五章計算機操作系統設備管理課件_第3頁
第五章計算機操作系統設備管理課件_第4頁
第五章計算機操作系統設備管理課件_第5頁
已閱讀5頁,還剩237頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

學院:計算機與信息技術學院教師:劉賢梅第五章設備管理12/3/20221學院:計算機與信息技術學院第五章設備管理12/1/2內容概述5.1I/O系統5.2I/O控制方式5.3緩沖管理I/O系統包括用于實現數據輸入、輸出、存儲功能的設備和相應的控制器,設備管理的基本任務是完成用戶提出的I/O請求,提高I/O速率以及改善I/O的利用率。設備管理的主要功能有緩沖區(qū)管理、設備分配、磁盤管理、虛擬設備及實現設備獨立性。5.4I/O軟件5.5設備分配5.6磁盤存儲器管理12/3/20222內容概述5.1I/O系統I/O系統包括用于實現數據輸入、5.1I/O系統5.1.1I/O設備5.1.2設備控制器5.1.3I/O通道5.1.4總線系統12/3/202235.1I/O系統5.1.1I/O設備12/1/202235.1.1I/O設備1.按設備的使用特性分類存儲設備磁帶、磁盤、光盤等。輸入/輸出設備鍵盤、鼠標、掃描儀、視頻攝像、傳感器等。12/3/202245.1.1I/O設備1.按設備的使用特性分類12/1/202.按傳輸速率分類低速設備每秒幾個字節(jié)至數百字節(jié)。鍵盤、鼠標、語音輸入輸出設備等。中速設備每秒數千至數萬字節(jié)。行式打印機、激光打印機等。高速設備每秒數百K至數十M字節(jié)。磁盤機、磁帶機、光盤機等。12/3/202252.按傳輸速率分類12/1/202253.按信息交換的單位分類塊設備信息的存取以數據塊為單位,有結構設備。基本特征是其傳輸速率較高,通常每秒鐘為幾兆位,可尋址,即對它可隨機地讀/寫任一塊。例:磁盤字符設備基本單位是字符,無結構設備?;咎卣魇瞧鋫鬏斔俾瘦^低,通常每秒鐘為幾個字節(jié)到數千字節(jié),不可尋址。例:交互式終端、打印機12/3/202263.按信息交換的單位分類12/1/202264.按設備的共享屬性分類獨占設備(臨界資源)如打印機共享設備可供多個多個進程同時訪問,如磁盤。共享設備必須是可尋址的和可隨機訪問的設備。虛擬設備通過虛擬技術將一臺獨占設備變換為若干個邏輯設備,供若干個進程同時使用。12/3/202274.按設備的共享屬性分類12/1/202275.1I/O系統5.1.1I/O設備5.1.2設備控制器5.1.3I/O通道5.1.4總線系統12/3/202285.1I/O系統5.1.1I/O設備12/1/202285.1.2設備控制器1.設備控制器概述設備控制器是CPU與I/O設備之間的硬件接口,常做成印刷電路卡形式,也稱接口卡。接收從CPU發(fā)來的命令,并控制一個或多個I/O設備,以實現I/O設備和計算機之間的數據交換,減輕CPU的負擔。12/3/202295.1.2設備控制器1.設備控制器概述12/1/202292.設備控制器的組成設備控制器與處理機的接口 該接口用于實現設備控制器與CPU之間的通信。在該接口中有三類信號線:數據線、地址線、控制線。設備控制器與設備的接口 在一個設備控制器上,可以連接一臺或多臺設備(一個或多個設備接口),一個接口連接一臺設備,在每個接口中都有數據、控制和狀態(tài)三種類型的信號。I/O邏輯 控制器對設備的控制通過I/O邏輯實現的。包括對收到命令和地址進行譯碼。12/3/2022102.設備控制器的組成12/1/202210圖5-2設備控制器的組成12/3/202211圖5-2設備控制器的組成12/1/2022115.1I/O系統5.1.1I/O設備5.1.2設備控制器5.1.3I/O通道5.1.4總線系統12/3/2022125.1I/O系統5.1.1I/O設備12/1/202215.1.3I/O通道1.I/O通道設備的引入是一種特殊處理機,專門負責輸入/輸出工作,具有執(zhí)行I/O指令的能力。主要目的是為了建立獨立的I/O操作,使有關對I/O操作的組織、管理及其結束處理也獨立于CPU。CPU向I/O通道發(fā)送I/O命令,由通道執(zhí)行程序。通道與一般處理機的區(qū)別指令類型單一,局限于與I/O操作有關命令。沒有獨立的內存,通道與CPU共享內存。12/3/2022135.1.3I/O通道1.I/O通道設備的引入12/圖5-3字節(jié)多路通道的工作原理2.通道類型 (1)字節(jié)多路通道一個主通道連接多個子通道,以時間片輪轉方式共享主通道。每個子通道每次只傳送一個字節(jié),連接中低速設備。12/3/202214圖5-3字節(jié)多路通道的工作原理2.通道類型 12/1/2

(2)數組選擇通道(BlockSelectorChannel)(1)不適合高速設備。以數組方式工作,高速傳輸數據??梢赃B接多臺高速設備。每次只有一臺設備進行數據傳送,形成獨占,如果它不傳數據,別的設備也傳不了。通道利用率較低。12/3/202215 (2)數組選擇通道(BlockSelectorChan

(3)數組多路通道(BlockMultiplexorChannel)(2)有獨占性。將數組選擇通道傳輸速率高和字節(jié)多路通道分時并行操作的優(yōu)點相結合而形成的一種新通道。其數據傳送是按數組方式。采用分時并行傳送多個非分配型子通道,因而這種通道既具有很高的數據傳輸速率,又能獲得令人滿意的通道利用率。12/3/202216 (3)數組多路通道(BlockMultiplexorC圖5-5多通路I/O系統12/3/202217圖5-5多通路I/O系統12/1/2022175.1I/O系統5.1.1I/O設備5.1.2設備控制器5.1.3I/O通道5.1.4總線系統12/3/2022185.1I/O系統5.1.1I/O設備12/1/202215.1.4總線系統圖5-6總線型I/O系統結構 在計算機系統中的各部件,如CPU、存儲器以及各種I/O設備之間都是通過總線來聯系。12/3/2022195.1.4總線系統圖5-6總線型I/O系統結構 1.ISA(IndustryStandardArchitecture)總線這是為了1984年推出的80286型微機而設計的總線結構。其總線的帶寬為8位,最高傳輸速率為2Mb/s。之后不久又推出了16位的(EISA)總線,其最高傳輸速率為8Mb/s,后又升至16Mb/s,能連接12臺設備。2.EISA(ExtendedISA)總線到80年代末期,ISA總線已難于滿足帶寬和傳輸速率的要求,于是人們又開發(fā)出擴展ISA(EISA)總線,其帶寬為32位,總線的傳輸速率高達32Mb/s,同樣可以連接12臺外部設備。12/3/2022201.ISA(IndustryStandardArchit3.VESA(VideoElectronicStandardAssociation)總線以ISA為基礎的局部總線,帶寬為32位,工作頻率為33MHz,最高傳輸速率為132Mb/s,為486設計的。4.PCI(PeripheralComponentInterface)總線局部總線,最大傳輸速率為132Mb/s,既可以連接ISA、EISA等傳統型總線,又可支持Pentium的64位系統。12/3/2022213.VESA(VideoElectronicStanda內容概述5.1I/O系統5.2I/O控制方式

5.3緩沖管理5.4I/O軟件5.5設備分配5.6磁盤存儲器管理12/3/202222內容概述5.1I/O系統12/1/2022225.2I/O控制方式5.2.1程序I/O方式5.2.2中斷驅動I/O方式5.2.3直接存儲器訪問DMAI/O控制方式5.2.4I/O通道控制方式設備管理的主要任務之一是控制設備和內存或CPU之間的數據傳送。I/O控制方式主要有四種:程序I/O方式、中斷驅動I/O方式、直接存儲訪問DMAI/O控制方式和I/O通道控制方式。12/3/2022235.2I/O控制方式5.2.1程序I/O方式設備5.2.1程序I/O方式程序I/O控制方式(“忙—等待”方式):在一個設備的操作沒有完成時,控制程序一直檢測設備的狀態(tài),直到該操作完成,才能進行下一個操作。CPU通過I/O測試指令測試設備接口中的狀態(tài)位,當為“忙”時則一直測試,當為“閑”時,可進行數據傳送,每次傳送一個字符。CPU的絕大部分時間都處于等待I/O設備完成數據I/O的循環(huán)測試中。外設不能合理使用,也無法支持多道程序。CPU的高速性和I/O設備的低速性。12/3/2022245.2.1程序I/O方式程序I/O控制方式(“忙—等待”圖5-7程序I/O方式的流程12/3/202225圖5-7程序I/O方式的流程12/1/2022255.2I/O控制方式5.2.1程序I/O方式5.2.2中斷驅動I/O方式5.2.3直接存儲器訪問DMAI/O控制方式5.2.4I/O通道控制方式12/3/2022265.2I/O控制方式5.2.1程序I/O方式12/1/25.2.2中斷驅動I/O控制方式中斷是指計算機在執(zhí)行期間,系統內發(fā)生任何非尋常的或非預期的急需處理事件,使得CPU暫時中斷當前正在執(zhí)行的程序而轉去執(zhí)行相應的事件處理程序,待處理完畢后又返回原來被中斷處繼續(xù)執(zhí)行或調度新的進程執(zhí)行的過程。中斷驅動方式:當某進程要啟動某個I/O設備工作時,便由CPU向相應的設備控制器發(fā)出一條I/O命令,然后立即返回繼續(xù)執(zhí)行原來的任務。設備控制器按命令要求去控制指定的I/O設備,完成后,通過中斷向CPU發(fā)送一中斷信號。在I/O設備輸入數據的過程中,無須CPU干預。每次傳送一個字符。12/3/2022275.2.2中斷驅動I/O控制方式中斷是指計算機在執(zhí)行期間在I/O中斷方式下,數據的輸入(或輸出)步驟如下:1、要求輸入數據的進程把一個啟動命令和允許中斷位“1”寫入相應設備的控制狀態(tài)寄存器中,從而啟動了該設備。2、該進程因等待輸入的完成進入睡眠狀態(tài)。3、當輸入完成后,輸入設備向CPU發(fā)出完成中斷請求信號。4、處理機響應中斷,處理該中斷,并喚醒等待輸入完成的進程。5、在以后的某個時期,該程序被調度到后,繼續(xù)運行。12/3/202228在I/O中斷方式下,數據的輸入(或輸出)步驟如下:12/1/圖5-7中斷驅動方式的流程12/3/202229圖5-7中斷驅動方式的流程12/1/2022295.2I/O控制方式5.2.1程序I/O方式5.2.2中斷驅動I/O方式5.2.3直接存儲器訪問DMAI/O控制方式5.2.4I/O通道控制方式12/3/2022305.2I/O控制方式5.2.1程序I/O方式12/1/25.2.3直接存儲器訪問DMAI/O控制方式1.DMA(DirectMemoryAccess)控制方式的引入

中斷驅動I/O控制方式:以字節(jié)為單位的。每完成一個字節(jié)的I/O,控制器便向CPU發(fā)一中斷,請求CPU中斷處理。例如,為了從磁盤中讀出1KB的數據塊,需要中斷1K次CPU。直接存儲器存取控制:是指對I/O設備的控制由DMA控制器完成,在DMA控制器的作用下,設備和主存之間可以成批地進行數據交換,而不用CPU的干涉。12/3/2022315.2.3直接存儲器訪問DMAI/O控制方式1.DMA圖5-7DMA方式的流程12/3/202232圖5-7DMA方式的流程12/1/202232圖5-8DMA控制器的組成2.DMA控制器的組成主機與DMA控制器的接口DMA控制器與塊設備的接口I/O控制邏輯12/3/202233圖5-8DMA控制器的組成2.DMA控制器的組成12/1為了實現在主機與控制器之間成塊數據的直接交換,必須在DMA控制器中設置如下四類寄存器:(1)命令/狀態(tài)寄存器CR。用于接收從CPU發(fā)來的I/O命令或有關控制信息,或設備的狀態(tài)。(2)內存地址寄存器MAR。在輸入時,它存放把數據從設備傳送到內存的起始目標地址;在輸出時,它存放由內存到設備的內存源地址。(3)數據寄存器DR。用于暫存從設備到內存,或從內存到設備的數據。(4)數據計數器DC。存放本次CPU要讀或寫的字(節(jié))數。12/3/202234為了實現在主機與控制器之間成塊數據的直接交換,必須3.DMA工作過程

圖5-9DMA方式的工作流程12/3/2022353.DMA工作過程圖5-9DMA方式的工作流程12/1

4.直接存儲器存取控制方式的步驟①當進程要求設備輸入一批數據時,CPU將設備存放輸入數據的內存始址以及要傳送的字節(jié)數分別送入DMA控制器中的地址寄存器和傳送字節(jié)計數器;另外,還要將中斷位和啟動位置為1,以啟動設備開始進行數據輸入并允許中斷。②發(fā)出數據要求的進程進入等待狀態(tài),進程調度程序調度其他進程占據CPU。③輸入設備不斷地挪用CPU工作周期,將數據寄存器中的數據源源不斷地寫入內存,直到所要求的字節(jié)全部傳送完畢。④DMA控制器在傳送字節(jié)數完成時,通過中斷請求線發(fā)出中斷信號,CPU收到中斷信號后轉中斷處理程序,喚醒等待輸入完成的進程,并返回被中斷的程序。⑤在以后的某個時刻,進程調度程序選中提出請求輸入的進程,該進程從指定的內存始址取出數據做進一步處理。12/3/2022364.直接存儲器存取控制方式的步驟12/1/2022365.2I/O控制方式5.2.1程序I/O方式5.2.2中斷驅動I/O方式5.2.3直接存儲器訪問DMAI/O控制方式5.2.4I/O通道控制方式12/3/2022375.2I/O控制方式5.2.1程序I/O方式12/1/25.2.4I/O通道控制方式通道控制方式的概念

是一種以內存為中心,是設備與內存直接交換數據的控制方式。CPU只需要發(fā)出啟動指令,指出通道相應的操作和I/O設備,該指令就可以啟動通道并使該通道從內存中調出相應的通道指令執(zhí)行。12/3/2022385.2.4I/O通道控制方式通道控制方式的概念121.I/O通道控制方式的引入

與DMA類似,是以內存為中心的數據交換方式。它可進一步減少CPU的干預,即把對一個數據塊的讀(寫)為單位的干預,減少為對一組數據塊的讀(寫)及有關的控制和管理為單位的干預。一個通道控制多臺設備。CPU僅在I/O操作的開始和結束時花費少量時間處理與I/O有關的工作。實現CPU、通道和I/O設備三者的并行操作,從而更有效地提高整個系統的資源利用率。5.2.4I/O通道控制方式12/3/2022391.I/O通道控制方式的引入5.2.4I/O通道控制2.通道程序與設備控制器共同實現對I/O設備的控制的。指令中含:(1)操作碼:規(guī)定指令所執(zhí)行的操作,如讀、寫、控制等。(2)內存地址:標明字符送入內存或從內存取出的內存首址。(3)計數:本條指令所要讀/寫的字節(jié)數。(4)通道程序結束位:表示通道程序是否結束,P=1表示結束。(5)記錄結束標志:R=0,表示本指令與下一指令處理同一個記錄;R=1表示處理某記錄的最后一條指令。12/3/2022402.通道程序12/1/202240操作PR計數內存地址WRITE0080813WRITE001401034WRITE01605830WRITE013002000WRITE002501850WRITE1125072012/3/202241操作PR計數內存地址WRITE0080813WRITE0圖通道的工作流程12/3/202242圖通道的工作流程12/1/2022423.通道控制方式的步驟①當進程要求輸入數據時,CPU發(fā)啟動指令指明I/O操作、設備號和對應通道。②對應通道接收到CPU發(fā)來的啟動指令后,把存放在內存中的通道指令程序讀出,并執(zhí)行通道程序,控制設備將數據傳送到內存中指定的區(qū)域。③若數據傳輸結束,則向CPU發(fā)出中斷請求。CPU收到中斷信號后轉中斷處理程序,喚醒等待輸入完成的進程,并返回被中斷的程序。④在以后的某個時刻,進程調度程序選中提出請求輸入的進程,該進程從指定的內存始址取出數據做進一步處理。12/3/2022433.通道控制方式的步驟12/1/202243內容概述5.1I/O系統5.2I/O控制方式5.3緩沖管理5.4I/O軟件5.5設備分配5.6磁盤存儲器管理12/3/202244內容概述5.1I/O系統12/1/2022445.3緩沖管理5.3.1緩沖的引入5.3.2單緩沖和雙緩沖5.3.3循環(huán)緩沖5.3.4緩沖池(BufferPool)12/3/2022455.3緩沖管理5.3.1緩沖的引入12/1/2022455.3.1緩沖的引入(1)緩和CPU與I/O設備間速度不匹配的矛盾。(2)減少對CPU的中斷頻率,放寬對CPU中斷響應時間的限制。(3)提高CPU和I/O設備之間的并行性。12/3/2022465.3.1緩沖的引入(1)緩和CPU與I/O設備間速度不匹圖5-10利用緩沖寄存器實現緩沖12/3/202247圖5-10利用緩沖寄存器實現緩沖12/1/2022475.3緩沖管理5.3.1緩沖的引入5.3.2單緩沖和雙緩沖5.3.3循環(huán)緩沖5.3.4緩沖池(BufferPool)12/3/2022485.3緩沖管理5.3.1緩沖的引入12/1/2022485.3.2單緩沖和雙緩沖1.單緩沖(SingleBuffer)圖5-11單緩沖工作示意圖12/3/2022495.3.2單緩沖和雙緩沖1.單緩沖(SingleBuf2.雙緩沖(DoubleBuffer)

圖5-12雙緩沖工作示意圖12/3/2022502.雙緩沖(DoubleBuffer)圖5-12雙緩沖圖5-13雙機通信時緩沖區(qū)的設置12/3/202251圖5-13雙機通信時緩沖區(qū)的設置12/1/2022515.3緩沖管理5.3.1緩沖的引入5.3.2單緩沖和雙緩沖5.3.3循環(huán)緩沖5.3.4緩沖池(BufferPool)12/3/2022525.3緩沖管理5.3.1緩沖的引入12/1/2022525.3.3循環(huán)緩沖循環(huán)緩沖的引入:

當輸入與輸出速度基本匹配時,雙緩沖能獲得較好效果;當速度相差較大時,可引入多個緩沖,組織成循環(huán)緩沖的形式。12/3/2022535.3.3循環(huán)緩沖循環(huán)緩沖的引入:12/1/2022535.3緩沖管理5.3.1緩沖的引入5.3.2單緩沖和雙緩沖5.3.3循環(huán)緩沖5.3.4緩沖池(BufferPool)12/3/2022545.3緩沖管理5.3.1緩沖的引入12/1/2022545.3.4緩沖池(BufferPool)1.緩沖池的組成

專用緩沖的利用率不高,因此設置公用緩沖池,其中至少應含有以下三種類型的緩沖區(qū): ①空(閑)緩沖區(qū); ②裝滿輸入數據的緩沖區(qū); ③裝滿輸出數據的緩沖區(qū)。 為了管理上的方便,可將相同類型的緩沖區(qū)鏈成一個隊列,于是可形成以下三個隊列:(1)空緩沖隊列emq(2)輸入隊列inq(3)輸出隊列outq12/3/2022555.3.4緩沖池(BufferPool)1.緩沖2.緩沖區(qū)的工作方式

圖5-15緩沖區(qū)的工作方式12/3/2022562.緩沖區(qū)的工作方式圖5-15緩沖區(qū)的工作方式12/1內容概述5.1I/O系統5.2I/O控制方式5.3緩沖管理5.4I/O軟件

5.5設備分配

5.6磁盤存儲器管理12/3/202257內容概述5.1I/O系統12/1/2022575.4I/O軟件5.4.1I/O軟件的設計目標和原則5.4.2中斷處理程序5.4.3設備驅動程序5.4.4設備獨立性軟件5.4.5用戶層的I/O軟件12/3/2022585.4I/O軟件5.4.1I/O軟件的設計目標和原則125.4.1I/O軟件的設計目標和原則I/O系統的層次及功能用戶層軟件設備獨立性軟件設備驅動程序中斷處理程序硬件產生I/O請求、格式化I/O、Spooling映射、保護、分塊、緩沖、分配設置設備寄存器,檢查寄存器狀態(tài)執(zhí)行I/O操作圖5-16I/O系統的層次及功能12/3/2022595.4.1I/O軟件的設計目標和原則I/O系統的層次及功能5.4I/O軟件5.4.1I/O軟件的設計目標和原則5.4.2中斷處理程序5.4.3設備驅動程序5.4.4設備獨立性軟件5.4.5用戶層的I/O軟件12/3/2022605.4I/O軟件5.4.1I/O軟件的設計目標和原則125.4.2中斷處理程序中斷處理程序的處理過程:(1)喚醒被阻塞的驅動進程(2)保護被中斷進程的CPU環(huán)境(3)轉入相應的設備處理程序(4)中斷處理(5)恢復被中斷進程的現場12/3/2022615.4.2中斷處理程序中斷處理程序的處理過程:12/1/2圖5-17中斷現場保護示意圖12/3/202262圖5-17中斷現場保護示意圖12/1/202262圖5-18中斷處理流程12/3/202263圖5-18中斷處理流程12/1/2022635.4.3設備驅動程序設備驅動程序又稱為設備處理程序,是I/O進程與設備控制器之間的通信程序。1.設備驅動程序功能(1)接收由I/O進程發(fā)來的命令和參數,并將命令中的抽象要求轉換為具體要求。(2)檢查用戶I/O請求的合法性,了解I/O設備的狀態(tài),傳遞有關參數,設置設備的工作方式。(3)發(fā)出I/O命令并檢查設備狀態(tài)。(4)及時響應由控制器或通道發(fā)來的中斷請求并處理。(5)對于設置有通道的計算機系統,驅動程序還應能夠根據用戶的I/O請求,自動地構成通道程序。12/3/2022645.4.3設備驅動程序設備驅動程序又稱為設備處理程序,2.設備處理方式

在不同的操作系統中所采用的設備處理方式并不完全相同。根據在設備處理時是否設置進程,以及設置什么樣的進程而把設備處理方式分成以下三類:(1)為每一類設備設置一個進程,專門用于執(zhí)行這類設備的I/O操作。(2)在整個系統中設置一個I/O進程,專門用于執(zhí)行系統中所有各類設備的I/O操作。(3)不設置專門的設備處理進程,而只為各類設備設置相應的設備處理程序(模塊),供用戶進程或系統進程調用。12/3/2022652.設備處理方式12/1/2022653.設備驅動程序的特點(1)驅動程序主要是指在請求I/O的進程與設備控制器之間的一個通信和轉換程序。(2)驅動程序與設備控制器和I/O設備的硬件特性緊密相關,因而對不同類型的設備應配置不同的驅動程序。(3)驅動程序與I/O設備所采用的I/O控制方式緊密相關,常用中斷驅動和DMA方式。(4)由于驅動程序與硬件緊密相關,因而其中的一部分必須用匯編語言書寫。12/3/2022663.設備驅動程序的特點12/1/2022664.設備驅動程序的處理過程(1)將抽象要求轉換為具體要求。設置控制器中的寄存器(2)檢查I/O請求的合法性。若請求的設備不支持本次的I/O請求,認為是非法操作。(3)讀出和檢查設備的狀態(tài)。檢查設備是否空閑或是否就緒。(4)傳送必要的參數。如數據量、起始地址等。(5)工作方式的設置。對于有多種工作方式的設備進行設置。(6)啟動I/O設備12/3/2022674.設備驅動程序的處理過程12/1/202267設備驅動程序工作流程12/3/202268設備驅動程序工作流程12/1/2022681.設備獨立性的概念為了提高OS的可適應性和可擴展性,在現代OS中實現了設備獨立性,也稱為設備無關性。含義:應用程序獨立于具體使用的物理設備,即是指用戶在編程序時所使用的設備與實際設備無關。引入邏輯設備和物理設備這兩個概念。在應用程序中,使用邏輯設備名稱來請求使用某類設備;而系統在實際執(zhí)行時,還必須使用物理設備名稱。系統須具有將邏輯設備名稱轉換為某物理設備名稱的功能,這非常類似于存儲器管理中所介紹的邏輯地址和物理地址的概念5.4.4設備獨立性軟件12/3/2022691.設備獨立性的概念5.4.4設備獨立性軟件12/1/2設備獨立性的優(yōu)點(1)設備分配時的靈活性系統可將該邏輯設備類中的任一臺分配給進程使用所有設備均占用時才阻塞(2)易于實現I/O重定向所謂I/O重定向,指用于I/O操作的設備可以更換,而不必變應用程序如調試程序時輸出到屏幕,而實際應用時改為輸出到打印機(邏輯設備表中的顯示終端改為打印機)12/3/202270設備獨立性的優(yōu)點12/1/2022702.設備獨立性軟件為了實現設備獨立性,必須在設備驅動程序上設置一層軟件,稱為設備獨立性軟件。設備獨立性軟件主要功能(1)執(zhí)行所有設備的公有操作對獨立設備的分配與回收將邏輯設備名映射為物理設備名,進一步可以找到相應物理設備的驅動程序對設備進行保護,禁止用戶直接訪問設備緩沖管理,即對字符設備和塊設備的緩沖區(qū)進行有效的管理差錯控制(2)向用戶層(或文件層)軟件提供統一接口無論何種設備,它們向用戶所提供的接口應該是相同的對各種設備的讀操作,在應用程序中都使用read;而對各種設備的寫操作,也都使用write12/3/2022712.設備獨立性軟件12/1/202271圖5-18邏輯設備表3.邏輯設備名到物理設備名映射的實現

(1)邏輯設備表(LUT)用于實現將應用程序中的邏輯設備名映射為物理設備名。(2)邏輯設備表的設置整個系統中設置一張LUT為每個用戶設置一張LUT12/3/202272圖5-18邏輯設備表3.邏輯設備名到物理設備名映射的實現5.4.5用戶層的I/O軟件大部分I/O軟件都在操作系統內部,只有一小部分在用戶層。用戶層軟件必須通過一組系統調用來取得操作系統服務?,F代高級語言通常提供了與各系統調用一一對應的庫函數,用戶程序通過調用對應的庫函數使用系統調用。12/3/2022735.4.5用戶層的I/O軟件大部分I/O軟件都在操作系統內容概述5.1I/O系統5.2I/O控制方式5.3緩沖管理5.4I/O軟件

5.5

設備分配

5.6磁盤存儲器管理12/3/202274內容概述5.1I/O系統12/1/2022745.4設備分配5.4.1設備分配中的數據結構5.4.2設備分配時應考慮的因素5.4.3獨占設備的分配程序5.4.4SPOOLing技術12/3/2022755.4設備分配5.4.1設備分配中的數據結構12/1/25.4.1設備分配中的數據結構在多道程序環(huán)境下,系統中的設備所有進程共享,為防止進程對系統資源的無序競爭,必須由系統統一分配設備。為確保CPU與設備之間能進行通信,還應分配相應的控制器和通道。為實現設備分配,系統中應設置相應的數據結構。12/3/2022765.4.1設備分配中的數據結構在多道程序環(huán)境下,系統中的設圖5-20設備控制表1.設備控制表DCT系統為每個設備配置一張設備控制表,用于記錄設備的特性及I/O控制器連接的情況。請求隊列,指向PCB發(fā)生錯誤時的重傳可連多個控制器12/3/202277圖5-20設備控制表1.設備控制表DCT請求隊列,指向P圖5-21COCT、CHCT和SDT表2.控制器控制表、通道控制表和系統設備表(1)控制器控制表。每個控制器配置一張表,它反映控制器的使用狀態(tài)以及和通道的連接狀況等。12/3/202278圖5-21COCT、CHCT和SDT表2.控制器控制表、圖5-21COCT、CHCT和SDT表(2)通道控制表。為每個通道配置一張表,它反映通道的使用狀態(tài)。12/3/202279圖5-21COCT、CHCT和SDT表(2)通道控制表。圖5-21COCT、CHCT和SDT表(3)系統設備表。它記錄已被連接到系統中的所有物理設備的情況,每個物理設備占一個表目。整個系統配置一張。12/3/202280圖5-21COCT、CHCT和SDT表(3)系統設備表。5.4設備分配5.4.1設備分配中的數據結構5.4.2設備分配時應考慮的因素5.4.3獨占設備的分配程序5.4.4SPOOLing技術12/3/2022815.4設備分配5.4.1設備分配中的數據結構12/1/25.4.2設備分配時應考慮的因素1.設備的固有屬性(1)獨占性。獨占設備是不能同時共用的設備,即在一段時間內,該設備只允許一個進程獨占。臨界資源(2)共享性。允許多個進程同時共享。(3)可虛擬性。虛擬設備是利用某種技術把獨占設備改造成可由多個進程共享的設備。2.設備分配算法(1)先來先服務(2)優(yōu)先級高者優(yōu)先12/3/2022825.4.2設備分配時應考慮的因素1.設備的固有屬性12/13.設備分配中的安全性(1)安全分配方式每當進程發(fā)出I/O請求后,便進入阻塞狀態(tài),I/O操作完成后喚醒。摒棄了“請求和保持”條件,不會產生死鎖。缺點:進程進展緩慢,即CPU與I/O設備串行工作的。(2)不安全分配方式

進程發(fā)出I/O請求后仍繼續(xù)運行??刹僮鞫鄠€設備,推進迅速。缺點:不安全,具備“請求和保持”條件,可能死鎖。12/3/20228312/1/2022835.4設備分配5.4.1設備分配中的數據結構5.4.2設備分配時應考慮的因素5.4.3獨占設備的分配程序5.4.4SPOOLing技術12/3/2022845.4設備分配5.4.1設備分配中的數據結構12/1/25.4.3獨占設備的分配程序1.基本的設備分配程序(1)分配設備。查找系統設備表SDT和設備控制表DCT。(2)分配控制器。查找控制器控制表COCT。(3)分配通道。查找通道控制表CHCT。只有在設備、控制器和通道三者都分配成功時,此次設備分配才算成功。12/3/2022855.4.3獨占設備的分配程序1.基本的設備分配程序12/2.設備分配程序的改進基本分配程序的問題進程以物理設備名提出I/O請求,無設備獨立性。采用單通路I/O系統結構,容易產生瓶頸。改進方案(1)增加設備獨立性。(2)考慮多通路情況。12/3/2022862.設備分配程序的改進12/1/2022865.4設備分配5.4.1設備分配中的數據結構5.4.2設備分配時應考慮的因素5.4.3獨占設備的分配程序5.4.4SPOOLing技術12/3/2022875.4設備分配5.4.1設備分配中的數據結構12/1/21.什么是SPOOLing技術(1)脫機輸入、輸出技術(2)在主機的直接控制下,實現脫機輸入、輸出功能,此時的外圍操作與CPU對數據的處理同時進行。把這種在聯機情況下實現的同時外圍操作稱為SPOOLing(SimultaneausPeriphernalOperatingOn-Line),或稱為假脫機操作。5.4.4SPOOLing技術12/3/2022881.什么是SPOOLing技術5.4.4SPOOLing技2.SPOOLing系統的組成輸入井和輸出井在磁盤上的兩個存儲空間輸入井模擬脫機輸入,暫存輸入數據輸出井模擬脫機輸出,暫存輸出數據輸入緩沖區(qū)和輸出緩沖區(qū)(內存中)用來緩和CPU與磁盤之間的速度的矛盾輸入進程SPi和輸出進程SPo模擬脫機I/O時的外圍控制機12/3/2022892.SPOOLing系統的組成12/1/202289圖5-19SPOOLing系統的組成12/3/202290圖5-19SPOOLing系統的組成12/1/202293.共享打印機打印機為獨占設備,利用SPOOLing技術,可將之改造為共享設備用戶請求打印時,SPOOLing系統處理如下由輸出進程在輸出井中為之申請一個空閑磁盤塊區(qū),并將要打印的數據送入其中輸出進程再為用戶進程申請一張空白的用戶請求打印表,并將用戶的打印要求填入其中,再將該表掛到請求打印隊列上12/3/2022913.共享打印機12/1/202291內容概述5.1I/O系統5.2I/O控制方式5.3緩沖管理5.4I/O軟件5.5設備分配5.6磁盤存儲器管理12/3/202292內容概述5.1I/O系統12/1/2022925.6磁盤存儲器管理5.6.1磁盤性能簡述5.6.2磁盤調度5.6.3磁盤高速緩存(DiskCache)5.6.4提高磁盤I/O速度的其它方法5.6.5廉價磁盤冗余陣列12/3/2022935.6磁盤存儲器管理5.6.1磁盤性能簡述12/1/205.6.1磁盤性能簡述圖5-24磁盤的格式化1.數據的組織和格式盤片、盤面、磁道、扇區(qū)扇區(qū)有標識符字段和數據字段12/3/2022945.6.1磁盤性能簡述圖5-24磁盤的格式化1.數據的2.磁盤的類型(1)固定頭磁盤這種磁盤在每條磁道上都有一讀/寫磁頭,所有的磁頭都被裝在一剛性磁臂中。通過這些磁頭可訪問所有各磁道,并進行并行讀/寫,有效地提高了磁盤的I/O速度。(2)移動頭磁盤每一個盤面僅配有一個磁頭,也被裝入磁臂中。為能訪問該盤面上的所有磁道,該磁頭必須能移動以進行尋道。12/3/2022952.磁盤的類型12/1/2022953.磁盤訪問時間

(1)尋道時間Ts

這是指把磁臂(磁頭)移動到指定磁道上所經歷的時間。該時間是啟動磁臂的時間s與磁頭移動n條磁道所花費的時間之和,即Ts=m×n+s(2)旋轉延遲時間Tτ這是指定扇區(qū)移動到磁頭下面所經歷的時間。12/3/2022963.磁盤訪問時間12/1/202296(3)傳輸時間Tt這是指把數據從磁盤讀出或向磁盤寫入數據所經歷的時間。Tt的大小與每次所讀/寫的字節(jié)數b和旋轉速度有關r為磁盤每秒鐘的轉數;N為一條磁道上的字節(jié)數。12/3/202297(3)傳輸時間Tt12/1/2022975.6磁盤存儲器管理5.6.1磁盤性能簡述5.6.2磁盤調度5.6.3磁盤高速緩存(DiskCache)5.6.4提高磁盤I/O速度的其它方法5.6.5廉價磁盤冗余陣列12/3/2022985.6磁盤存儲器管理5.6.1磁盤性能簡述12/1/205.6.2磁盤調度圖5-25FCFS調度算法1.先來先服務FCFS根據進程請求訪問磁盤的先后次序進行調度。簡單、公平,每個進程得到滿足。適合請求磁盤進程數目少。對尋道未優(yōu)化。平均尋道時間可能較長。12/3/2022995.6.2磁盤調度圖5-25FCFS調度算法1.先來先0383955589010015016018418圖5-25FCFS調度算法12/3/20221000383955589010015016018418圖5-252.最短尋道時間優(yōu)先SSTF與當前磁頭所在磁道距離最近。每次尋道時間最短。不能保證平均尋道時間最短。有“饑餓”現象。圖5-26SSTF調度算法27.512/3/20221012.最短尋道時間優(yōu)先SSTF圖5-26SSTF調度算法0383955589010015016018418圖5-26SSTF調度算法27.512/3/20221020383955589010015016018418圖5-263.掃描(SCAN)算法

SSTF算法雖然能獲得較好的尋道性能,但卻可能導致某個進程發(fā)生“饑餓”(Starvation)現象。05016012/3/20221033.掃描(SCAN)算法05016012/1/2022SCAN算法圖5-27SCAN調度算法示例12/3/2022104SCAN算法圖5-27SCAN調度算法示例12/1/20038395558901001501601841812/3/2022105038395558901001501601841812/1/圖5-28CSCAN調度算法示例4.循環(huán)掃描(CSCAN)算法

規(guī)定磁頭單向移動減少剛移過的磁道的等待時間35.812/3/2022106圖5-28CSCAN調度算法示例4.循環(huán)掃描(CSCAN038395558901001501601841835.812/3/2022107038395558901001501601841835.815.N-Step-SCAN和FSCAN調度算法

(1)N-Step-SCAN算法在以前講的算法都對于先來和后來的請求同等處理(除FCFS),不好,應該考慮。N步SCAN算法是將磁盤請求隊列分成若干個長度為N的子隊列,磁盤調度將按FCFS算法依次處理這些子隊列。而每處理一個隊列時又是按SCAN算法,對一個隊列處理完后,再處理其他隊列。(2)FSCAN算法FSCAN算法實質上是N步SCAN算法的簡化,即FSCAN只將磁盤請求隊列分成兩個子隊列。一個是由當前所有請求磁盤I/O的進程形成的隊列,由磁盤調度按SCAN算法進行處理。在掃描期間,將新出現的所有請求磁盤I/O的進程,放入另一個等待處理的請求隊列。12/3/20221085.N-Step-SCAN和FSCAN調度算法12/1/25.6磁盤存儲器管理5.6.1磁盤性能簡述5.6.2磁盤調度5.6.3磁盤高速緩存(DiskCache)5.6.4提高磁盤I/O速度的其它方法5.6.5廉價磁盤冗余陣列12/3/20221095.6磁盤存儲器管理5.6.1磁盤性能簡述12/1/205.6.3磁盤高速緩存(DiskCache)1.磁盤高速緩存的形式利用內存中的存儲空間,來暫存從磁盤中讀出的一系列盤塊中的信息。高速緩存是一組在邏輯上屬于磁盤,而物理上是駐留在內存中的盤塊。高速緩存在內存中可分成兩種形式第一種是在內存中開辟一個單獨的存儲空間來作為磁盤高速緩存,其大小是固定的。第二種是把所有未利用的內存空間變?yōu)橐粋€緩沖池,供請求分頁系統和磁盤I/O時(作為磁盤高速緩存)共享。12/3/20221105.6.3磁盤高速緩存(DiskCache)1.磁2.數據交付方式數據交付是指將磁盤高速緩存中的數據傳送給請求者進程。當有進程請求訪問某個盤塊時,選查看磁盤高速緩存系統可以采取兩種方式,將數據交付給請求進程:(1)數據交付。這是直接將高速緩存中的數據,傳送到請求者進程的內存工作區(qū)中。(2)指針交付。只將指向高速緩存中某區(qū)域的指針,交付給請求者進程。后一種方式由于所傳送的數據量少,因而節(jié)省了數據從磁盤高速緩存存儲空間到進程的內存工作區(qū)的時間12/3/20221112.數據交付方式12/1/20221113.置換算法將磁盤中的盤塊寫入高速緩存時,會出現因為高速緩存中已裝滿盤塊而需要將高速緩存中的數據先換出的問題,常用算法有最近最久未使用LRU,最近未用NRU,最少使用LFU等同時還需考慮以下幾點(1)訪問頻率(2)可預見性(3)數據的一致性12/3/20221123.置換算法12/1/20221124.周期性寫回磁盤在LRU算法中,經常被訪問的盤塊數據可能一直保留在高速緩存中,長期不被寫回磁盤(有可能丟數據)在UNIX系統中專門增設了一個修改程序,使之在后臺運行,該程序周期性地調用一個系統調用SYNC。該調用的主要功能是強制性地將所有在高速緩存中已修改的盤塊數據寫回磁盤在MS-DOS中所采用的方法是:只要高速緩存中的某盤塊數據被修改,便立即將它寫回磁盤,并將這種高速緩存稱為“寫穿透、高速緩存”。12/3/20221134.周期性寫回磁盤12/1/20221135.6磁盤存儲器管理5.6.1磁盤性能簡述5.6.2磁盤調度5.6.3磁盤高速緩存(DiskCache)5.6.4提高磁盤I/O速度的其它方法5.6.5廉價磁盤冗余陣列12/3/20221145.6磁盤存儲器管理5.6.1磁盤性能簡述12/1/205.6.4提高磁盤I/O速度的其它方法1.提前讀(Read-Ahead)在讀當前塊的同時,將下一盤塊讀入緩沖區(qū)2.延遲寫緩沖區(qū)中的數據不立即寫回磁盤,而掛在隊尾3.優(yōu)化物理塊分布使文件的物理塊集中,減小磁頭移動距離4.虛擬盤利用內存空間仿真磁盤,又稱為RAM盤虛擬盤與磁盤高速緩存的主要區(qū)別:(1)虛擬盤內容完全由用戶控制(用戶那他當磁盤用)(2)而高速磁盤緩存內容由操作系統OS控制(用戶不知道其存在)12/3/20221155.6.4提高磁盤I/O速度的其它方法1.提前讀(Rea5.6磁盤存儲器管理5.6.1磁盤性能簡述5.6.2磁盤調度5.6.3磁盤高速緩存(DiskCache)5.6.4提高磁盤I/O速度的其它方法5.6.5廉價磁盤冗余陣列12/3/20221165.6磁盤存儲器管理5.6.1磁盤性能簡述12/1/205.6.5廉價磁盤冗余陣列圖5-29磁盤并行交叉存取方式

1.并行交叉存取將一個盤塊中的數據分成若干個子盤塊數據,分別存儲在不同磁盤的相同位置上。數據傳送時采用并行傳輸方式12/3/20221175.6.5廉價磁盤冗余陣列圖5-29磁盤并行交叉存取方2.RAID的分級(1)RAID0僅提供了并行交叉存取無校驗(2)RAID1具有磁盤鏡像功能(3)RAID3具有并行傳輸功能的磁盤陣列利用一臺校驗盤來完成校驗(4)RAID5具有獨立傳送功能的磁盤陣列,每個驅動器有各自獨立的數據通路,獨立地進行讀寫,無專門校驗盤(5)RAID6和RAID712/3/20221182.RAID的分級12/1/20221183.RAID的優(yōu)點(1)可靠性高采用容錯技術可實現鏡像、雙工等冗余方式(2)磁盤I/O速度高采用并行交叉存取,提高速度(3)性能/價格比高與其他高性能磁盤系統相比,容量、速度、可靠性高,但價格低12/3/20221193.RAID的優(yōu)點12/1/2022119本章小結設備管理的主要任務是分配I/O設備。主要目的是提高I/O設備的使用效率。它的主要功能有:緩沖區(qū)管理、設備分配、設備處理、虛擬設備及實現設備獨立性。I/O4種控制方式:程序I/O方式、中斷驅動I/O方式、直接存儲訪問DMAI/O控制方式和I/O通道控制方式緩沖技術的概念及4種常見的緩沖技術:單緩沖、雙緩沖、循環(huán)緩沖及緩沖池設備分配、設備處理、SPOOLing技術磁盤和磁盤高速緩存作業(yè):P202,12/3/2022120本章小結設備管理的主要任務是分配I/O設備。12/1/20第五章授課結束,歡迎討論!12/3/2022121第五章授課結束,歡迎討論!12/1/2022121學院:計算機與信息技術學院教師:劉賢梅第五章設備管理12/3/2022122學院:計算機與信息技術學院第五章設備管理12/1/2內容概述5.1I/O系統5.2I/O控制方式5.3緩沖管理I/O系統包括用于實現數據輸入、輸出、存儲功能的設備和相應的控制器,設備管理的基本任務是完成用戶提出的I/O請求,提高I/O速率以及改善I/O的利用率。設備管理的主要功能有緩沖區(qū)管理、設備分配、磁盤管理、虛擬設備及實現設備獨立性。5.4I/O軟件5.5設備分配5.6磁盤存儲器管理12/3/2022123內容概述5.1I/O系統I/O系統包括用于實現數據輸入、5.1I/O系統5.1.1I/O設備5.1.2設備控制器5.1.3I/O通道5.1.4總線系統12/3/20221245.1I/O系統5.1.1I/O設備12/1/202235.1.1I/O設備1.按設備的使用特性分類存儲設備磁帶、磁盤、光盤等。輸入/輸出設備鍵盤、鼠標、掃描儀、視頻攝像、傳感器等。12/3/20221255.1.1I/O設備1.按設備的使用特性分類12/1/202.按傳輸速率分類低速設備每秒幾個字節(jié)至數百字節(jié)。鍵盤、鼠標、語音輸入輸出設備等。中速設備每秒數千至數萬字節(jié)。行式打印機、激光打印機等。高速設備每秒數百K至數十M字節(jié)。磁盤機、磁帶機、光盤機等。12/3/20221262.按傳輸速率分類12/1/202253.按信息交換的單位分類塊設備信息的存取以數據塊為單位,有結構設備?;咎卣魇瞧鋫鬏斔俾瘦^高,通常每秒鐘為幾兆位,可尋址,即對它可隨機地讀/寫任一塊。例:磁盤字符設備基本單位是字符,無結構設備?;咎卣魇瞧鋫鬏斔俾瘦^低,通常每秒鐘為幾個字節(jié)到數千字節(jié),不可尋址。例:交互式終端、打印機12/3/20221273.按信息交換的單位分類12/1/202264.按設備的共享屬性分類獨占設備(臨界資源)如打印機共享設備可供多個多個進程同時訪問,如磁盤。共享設備必須是可尋址的和可隨機訪問的設備。虛擬設備通過虛擬技術將一臺獨占設備變換為若干個邏輯設備,供若干個進程同時使用。12/3/20221284.按設備的共享屬性分類12/1/202275.1I/O系統5.1.1I/O設備5.1.2設備控制器5.1.3I/O通道5.1.4總線系統12/3/20221295.1I/O系統5.1.1I/O設備12/1/202285.1.2設備控制器1.設備控制器概述設備控制器是CPU與I/O設備之間的硬件接口,常做成印刷電路卡形式,也稱接口卡。接收從CPU發(fā)來的命令,并控制一個或多個I/O設備,以實現I/O設備和計算機之間的數據交換,減輕CPU的負擔。12/3/20221305.1.2設備控制器1.設備控制器概述12/1/202292.設備控制器的組成設備控制器與處理機的接口 該接口用于實現設備控制器與CPU之間的通信。在該接口中有三類信號線:數據線、地址線、控制線。設備控制器與設備的接口 在一個設備控制器上,可以連接一臺或多臺設備(一個或多個設備接口),一個接口連接一臺設備,在每個接口中都有數據、控制和狀態(tài)三種類型的信號。I/O邏輯 控制器對設備的控制通過I/O邏輯實現的。包括對收到命令和地址進行譯碼。12/3/20221312.設備控制器的組成12/1/202210圖5-2設備控制器的組成12/3/2022132圖5-2設備控制器的組成12/1/2022115.1I/O系統5.1.1I/O設備5.1.2設備控制器5.1.3I/O通道5.1.4總線系統12/3/20221335.1I/O系統5.1.1I/O設備12/1/202215.1.3I/O通道1.I/O通道設備的引入是一種特殊處理機,專門負責輸入/輸出工作,具有執(zhí)行I/O指令的能力。主要目的是為了建立獨立的I/O操作,使有關對I/O操作的組織、管理及其結束處理也獨立于CPU。CPU向I/O通道發(fā)送I/O命令,由通道執(zhí)行程序。通道與一般處理機的區(qū)別指令類型單一,局限于與I/O操作有關命令。沒有獨立的內存,通道與CPU共享內存。12/3/20221345.1.3I/O通道1.I/O通道設備的引入12/圖5-3字節(jié)多路通道的工作原理2.通道類型 (1)字節(jié)多路通道一個主通道連接多個子通道,以時間片輪轉方式共享主通道。每個子通道每次只傳送一個字節(jié),連接中低速設備。12/3/2022135圖5-3字節(jié)多路通道的工作原理2.通道類型 12/1/2

(2)數組選擇通道(BlockSelectorChannel)(1)不適合高速設備。以數組方式工作,高速傳輸數據??梢赃B接多臺高速設備。每次只有一臺設備進行數據傳送,形成獨占,如果它不傳數據,別的設備也傳不了。通道利用率較低。12/3/2022136 (2)數組選擇通道(BlockSelectorChan

(3)數組多路通道(BlockMultiplexorChannel)(2)有獨占性。將數組選擇通道傳輸速率高和字節(jié)多路通道分時并行操作的優(yōu)點相結合而形成的一種新通道。其數據傳送是按數組方式。采用分時并行傳送多個非分配型子通道,因而這種通道既具有很高的數據傳輸速率,又能獲得令人滿意的通道利用率。12/3/2022137 (3)數組多路通道(BlockMultiplexorC圖5-5多通路I/O系統12/3/2022138圖5-5多通路I/O系統12/1/2022175.1I/O系統5.1.1I/O設備5.1.2設備控制器5.1.3I/O通道5.1.4總線系統12/3/20221395.1I/O系統5.1.1I/O設備12/1/202215.1.4總線系統圖5-6總線型I/O系統結構 在計算機系統中的各部件,如CPU、存儲器以及各種I/O設備之間都是通過總線來聯系。12/3/20221405.1.4總線系統圖5-6總線型I/O系統結構 1.ISA(IndustryStandardArchitecture)總線這是為了1984年推出的80286型微機而設計的總線結構。其總線的帶寬為8位,最高傳輸速率為2Mb/s。之后不久又推出了16位的(EISA)總線,其最高傳輸速率為8Mb/s,后又升至16Mb/s,能連接12臺設備。2.EISA(ExtendedISA)總線到80年代末期,ISA總線已難于滿足帶寬和傳輸速率的要求,于是人們又開發(fā)出擴展ISA(EISA)總線,其帶寬為32位,總線的傳輸速率高達32Mb/s,同樣可以連接12臺外部設備。12/3/20221411.ISA(IndustryStandardArchit3.VESA(VideoElectronicStandardAssociation)總線以ISA為基礎的局部總線,帶寬為32位,工作頻率為33MHz,最高傳輸速率為132Mb/s,為486設計的。4.PCI(PeripheralComponentInterface)總線局部總線,最大傳輸速率為132Mb/s,既可以連接ISA、EISA等傳統型總線,又可支持Pentium的64位系統。12/3/20221423.VESA(VideoElectronicStanda內容概述5.1I/O系統5.2I/O控制方式

5.3緩沖管理5.4I/O軟件5.5設備分配5.6磁盤存儲器管理12/3/2022143內容概述5.1I/O系統12/1/2022225.2I/O控制方式5.2.1程序I/O方式5.2.2中斷驅動I/O方式5.2.3直接存儲器訪問DMAI/O控制方式5.2.4I/O通道控制方式設備管理的主要任務之一是控制設備和內存或CPU之間的數據傳送。I/O控制方式主要有四種:程序I/O方式、中斷驅動I/O方式、直接存儲訪問DMAI/O控制方式和I/O通道控制方式。12/3/20221445.2I/O控制方式5.2.1程序I/O方式設備5.2.1程序I/O方式程序I/O控制方式(“忙—等待”方式):在一個設備的操作沒有完成時,控制程序一直檢測設備的狀態(tài),直到該操作完成,才能進行下一個操作。CPU通過I/O測試指令測試設備接口中的狀態(tài)位,當為“忙”時則一直測試,當為“閑”時,可進行數據傳送,每次傳送一個字符。CPU的絕大部分時間都處于等待I/O設備完成數據I/O的循環(huán)測試中。外設不能合理使用,也無法支持多道程序。CPU的高速性和I/O設備的低速性。12/3/20221455.2.1程序I/O方式程序I/O控制方式(“忙—等待”圖5-7程序I/O方式的流程12/3/2022146圖5-7程序I/O方式的流程12/1/2022255.2I/O控制方式5.2.1程序I/O方式5.2.2中斷驅動I/O方式5.2.3直接存儲器訪問DMAI/O控制方式5.2.4I/O通道控制方式12/3/20221475.2I/O控制方式5.2.1程序I/O方式12/1/25.2.2中斷驅動I/O控制方式中斷是指計算機在執(zhí)行期間,系統內發(fā)生任何非尋常的或非預期的急需處理事件,使得CPU暫時中斷當前正在執(zhí)行的程序而轉去執(zhí)行相應的事件處理程序,待處理完畢后又返回原來被中斷處繼續(xù)執(zhí)行或調度新的進程執(zhí)行的過程。中斷驅動方式:當某進程要啟動某個I/O設備工作時,便由CPU向相應的設備控制器發(fā)出一條I/O命令,然后立即返回繼續(xù)執(zhí)行原來的任務。設備控制器按命令要求去控制指定的I/O設備,完成后,通過中斷向CPU發(fā)送一中斷信號。在I/O設備輸入數據的過程中,無須CPU干預。每次傳送一個字符。12/3/20221485.2.2中斷驅動I/O控制方式中斷是指計算機在執(zhí)行期間在I/O中斷方式下,數據的輸入(或輸出)步驟如下:1、要求輸入數據的進程把一個啟動命令和允許中斷位“1”寫入相應設備的控制狀態(tài)寄存器中,從而啟動了該設備。2、該進程因等待輸入的完成進入睡眠狀態(tài)。3、當輸入完成后,輸入設備向CPU發(fā)出完成中斷請求信號。4、處理機響應中斷,處理該中斷,并喚醒等待輸入完成的進程。5、在以后的某個時期,該程序被調度到后,繼續(xù)運行。12/3/2022149在I/O中斷方式下,數據的輸入(或輸出)步驟如下:12/1/圖5-7中斷驅動方式的流程12/3/2022150圖5-7中斷驅動方式的流程12/1/2022295.2I/O控制方式5.2.1程序I/O方式5.2.2中斷驅動I/O方式5.2.3直接存儲器訪問DMAI/O控制方式5.2.4I/O通道控制方式12/3/20221515.2I/O控制方式5.2.1程序I/O方式12/1/25.2.3直接存儲器訪問DMAI/O控制方式1.DMA(DirectMemoryAccess)控制方式的引入

中斷驅動I/O控制方式:以字節(jié)為單位的。每完成一個字節(jié)的I/O,控制器便向CPU發(fā)一中斷,請求CPU中斷處理。例如,為了從磁盤中讀出1KB的數據塊,需要中斷1K次CPU。直接存儲器存取控制:是指對I/O設備的控制由DMA控制器完成,在DMA控制器的作用下,設備和主存之間可以成批地進行數據交換,而不用CPU的干涉。12/3/20221525.2.3直接存儲器訪問DMAI/O控制方式1.DMA圖5-7DMA方式的流程12/3/2022153圖5-7DMA方式的流程12/1/202232圖5-8DMA控制器的組成2.DMA控制器的組成主機與DMA控制器的接口DMA控制器與塊設備的接口I/O控制邏輯12/3/2022154圖5-8DMA控制器的組成2.DMA控制器的組成12/1為了實現在主機與控制器之間成塊數據的直接交換,必須在DMA控制器中設置如下四類寄存器:(1)命令/狀態(tài)寄存器CR。用于接收從CPU發(fā)來的I/O命令或有關控制信息,或設備的狀態(tài)。(2)內存地址寄存器MAR。在輸入時,它存放把數據從設備傳送到內存的起始目標地址;在輸出時,它存放由內存到設備的內存源地址。(3)數據寄存器DR。用于暫存從設備到內存,或從內存到設備的數據。(4)數據計數器DC。存放本次CPU要讀或寫的字(節(jié))數。12/3/2022155為了實現在主機與控制器之間成塊數據的直接交換,必須3.DMA工作過程

圖5-9DMA方式的工作流程12/3/20221563.DMA工作過程圖5-9DMA方式的工作流程12/1

4.直接存儲器存取控制方式的步驟①當進程要求設備輸入一批數據時,CPU將設備存放輸入數據的內存始址以及要傳送的字節(jié)數分別送入DMA控制器中的地址寄存器和傳送字節(jié)計數器;另外,還要將中斷位和啟動位置為1,以啟動設備開始進行數據輸入并允許中斷。②發(fā)出數據要求的進程進入等待狀態(tài),進程調度程序調度其他進程占據CPU。③輸入設備不斷地挪用CPU工作周期,將數據寄存器中的數據源源不斷地寫入內存,直到所要求的字節(jié)全部傳送完畢。④DMA控制器在傳送字節(jié)數完成時,通過中斷請求線發(fā)出中斷信號,CPU收到中斷信號后轉中斷處理程序,喚醒等待輸入完成的進程,并返回被中斷的程序。⑤在以后的某個時刻,進程調度程序選中提出請求輸入的進程,該進程從指定的內存始址取出數據做進一步處理。12/3/20221574.直接存儲器存取控制方式的步驟12/1/2022365.2I/O控制方式5.2.1程序I/O方式5.2.2中斷驅動I/O方式5.2.3直接存儲器訪問DMAI/O控制方式5.2.4I/O通道控制方式12/3/20221585.2I/O控制方式5.2.1程序I/O方式12/1/25.2.4I/O通道控制方式通道控制方式的概念

是一種以內存為中心,是設備與內存直接交換數據的控制方式。CPU只需要發(fā)出啟動指令,指出通道相應的操作和I/O設備,該指令就可以啟動通道并使該通道從內存中調出相應的通道指令執(zhí)行。12/3/20221595.2.4I/O通道控制方式通道控制方式的概念121.I/O通道控制方式的引入

與DMA類似,是以內存為中心的數據交換方式。它可進一步減少CPU的干預,即把對一個數據塊的讀(寫)為單位的干預,減少為對一組數據塊的讀(寫)及有關的控制和管理為單位的干預。一個通道控制多臺設備。CPU僅在I/O操作的開始和結束時花費少量時間處理與I/O有關的工作。實現CPU、通道和I/O設備三者的并行操作,從而更有效地提高整個系統的資源利用率。5.2.4I/O通道控制方式12/3/20221601.I/O通道控制方式的引入5.2.4I/O通道控制2.通道程序與設備控制器共同實現對I/O設備的控制的。指令中含:(1)操作碼:規(guī)定指令所執(zhí)行的操作,如讀、寫、控制等。(2)內存地址:標明字符送入內存或從內存取出的內存首址。(3)計數:本條指令所要讀/寫的字節(jié)數。(4)通道程序結束位:表示通道程序是否結束,P=1表示結束。(5)記錄結束標志:R=0,表示本指令與下一指令處理同一個記錄;R=1表示處理某記錄的最后一條指令。12/3/20221612.通道程序12/1/202240操作PR計數內存地址WRITE0080813WRITE001401034WRITE01605830WRITE013002000WRITE002501850WRITE1125072012/3/2022162操作PR計數內存地址WRITE0080813WRITE0圖通道的工作流程12/3/2022163圖通道的工作流程12/1/2022423.通道控制方式的步驟①當進程要求輸入數據時,CPU發(fā)啟動指令指明I/O操作、設備號和對應通道。②對應通道接收到CPU發(fā)來的啟動指令后,把存放在內存中的通道指令程序讀出,并執(zhí)行通道程序,控制設備將數據傳送到內存中指定的區(qū)域。③若數據傳輸結束,則向CPU發(fā)出中斷請求。CPU收到中斷信號后轉中斷處理程序,喚醒等待輸入完成的進程,并返回被中斷的程序。④在以后的某個時刻,進程調度程序選中提出請求輸入的進程,該進程從指定的內存始址取出數據做進一步處理。12/3/20221643.通道控制方式的步驟12/1/202243內容概述5.1I/O系統5.2I/O控制方式5.3緩沖管理5.4I/O軟件5.5設備分配5.6磁盤存儲器管理12/3/2022165內容概述5.1I/O系統12/1/2022445.3緩沖管理5.3.1緩沖的引入5.3.2單緩沖和雙緩沖5.3.3循環(huán)緩沖5.3.4緩沖池(BufferPool)12/3/20221665.3緩沖管理5.3.1緩沖的引入12/1/2022455.3.1緩沖的引入(1)緩和CPU與I/O設備間速度不匹配的矛盾。(2)減少對CPU的中斷頻率,放寬對CPU中斷響應時間的限制。(3)提高CPU和I/O設備之間的并行性。12/3/20221675.3.1緩沖的引入(1)緩和CPU與I/O設備間速度不匹圖5-10利用緩沖寄存器實現緩沖12/3/2022168圖5-10利用緩沖寄存器實現緩沖12/1/2022475.3緩沖管理5.3.1緩沖的

溫馨提示

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

評論

0/150

提交評論