

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第六章 設備管理Devices Management,設備管理不但要管理實際I/O操作的設備(如磁盤機、打印機),還要管理諸如設備控制器、DMA控制器、中斷控制器、I/O處理機(通道)等支持設備。設備管理包括各種設備分配、緩沖區(qū)管理和實際物理I/O設備操作,通過管理達到提高設備利用率和方便用戶。設備管理是操作系統(tǒng)中最繁雜而且與硬件緊密相關(guān)的部分。,外設特性差異的表現(xiàn),速度(數(shù)據(jù)傳輸速度差別相當大)千兆網(wǎng)卡顯示卡硬盤以太網(wǎng)卡
2、光盤掃描儀激光打印機軟盤調(diào)制解調(diào)器鼠標鍵盤,傳輸單位字節(jié)(鍵盤、打印機)/字符塊(軟硬盤)/位(串口)具體操作方式僅寫/僅讀/可讀寫出錯原因:打印機的缺紙、磁盤的校驗錯誤等,高數(shù)據(jù)傳輸率,I/O設備的分類,按與主機間數(shù)據(jù)傳輸?shù)膯挝环肿址O備:以字符為單位進行輸入、輸出的設備。每輸入或輸出一個字符就要中斷一次主機CPU請求進行處理,所以又稱慢速字符設備。塊設備:以字符塊為單位進行輸入、輸出的設備。例如:硬盤,I
3、/O設備的分類,按與主機之間的交互方式分詢問方式(Query):實時系統(tǒng)中必需采用,在一般簡單系統(tǒng)中也廣泛采用,但系統(tǒng)開銷較大,每次進行輸入輸出工作,都需要由主機CPU干預中斷方式(Interrupt):有硬中斷和軟中斷之分,中斷按級別分類排隊工作;可按字符、字、塊的傳遞產(chǎn)生中斷;實時控制常用實時時鐘中斷,起自動控制作用;中斷工作主要由中斷請求、中斷響應和中斷服務處理組成。“中斷”的產(chǎn)生使管理工作更能“自動化”DMA方式(Dire
4、ct Memory Access) :有硬通道和軟通道之分,硬通道,例如,典型的DMA工作方式;軟通道是軟件設計中使用的各種“標識”、“緩沖”等;I/O通道(I/O處理機):專用于處理I/O的處理機醫(yī)生查房(“詢問”),以便及時掌握病情。病床旁紅燈是緊急請求 醫(yī)生按鈕(“中斷請求”)。常規(guī)醫(yī)療處理醫(yī)生委托護士(“硬通道”)去做。但護士只有執(zhí)行權(quán)而無修改權(quán)。,I/O設備的分類(cont.),按設備的讀/寫物理特性分順序存儲設備:磁帶
5、機隨機存儲設備 :磁盤、光盤按是否可以共享分共享設備獨占設備虛擬設備按數(shù)據(jù)接口的傳輸方式分并行設備串行設備,設備接口標準,串行設備接口標準RS-232: 用于接串口mouse、外置modemUSB: 分1.1和2.0兩個標準IEEE1394:多媒體設備接口,接DVSATA并行設備接口標準Parallel:接打印機、加密狗..IDE:硬盤、光驅(qū),UDMA/66SCSI: 硬盤、光驅(qū)、掃描儀,USB,USB
6、 ,是 Universal Serial Bus 的縮寫,如果按中文直接翻譯就是“通用串行總線”接口,它是一種串行總線系統(tǒng),帶有5V電壓,支持即插即用功能,支持熱拔插功能,最多能同時連入127個USB設備,由各個設備均分帶寬。它誕生于1994年,當時是由 PC 界的幾位“巨人”——康柏、IBM、Intel和Microsoft共同推出的,旨在統(tǒng)一外設如打印機、外置Modem、掃描儀、鼠標等的接口,以便于安裝使用,取代以往的串口、并口和P
7、S/2接口,可是 USB 標準真正頒布已經(jīng)是 1996年了,當時的標準是 USB1.0,直到1998年,USB才迎來了真正的春天——首先是業(yè)界巨頭們坐下來制定了USB1.1標準,使USB技術(shù)更加成熟可靠;接著Win98發(fā)布,宣布正式對USB接口提供支持,USB才真正發(fā)展起來(注:在Win98之前,Win97也能支持USB,不過沒有廣泛使用。),IEEE1394,IEEE1394,又稱作“ Firewire ”即“火線”。
8、早在1985年,蘋果公司就已經(jīng)開始著手研究“火線”技術(shù),并取得了很大成效;但是這個標準正式確立,卻是10年之后了。它是IEEE(電氣與電子工程師協(xié)會)于1995年正式制定的總線標準。由于IEEE1394的數(shù)據(jù)傳輸速率相當快,因此有時又叫它“高速串行總線”。信息家電和高端服務器等領(lǐng)域,IEEE1394就以其超快的速度成為該領(lǐng)域的唯一選擇。,USB 與 IEEE1394,總線標準,主板擴充插槽的接口標準ISAPCIAGP 專用于
9、顯示系統(tǒng)PCI Express,,I/O子系統(tǒng)的軟件體系結(jié)構(gòu),設備管理子系統(tǒng)的任務為用戶提供一個統(tǒng)一的、友好的使用界面負責管理系統(tǒng)中的各種設備根據(jù)不同設備完成的實際操作,跟蹤記錄設備的各種不同狀態(tài),并處理該設備可能出現(xiàn)的各種錯誤優(yōu)化設備的調(diào)度,提高設備的利用率,設備管理子系統(tǒng)的體系結(jié)構(gòu),進程,邏輯設備,物理設備驅(qū)動程序,實際硬件,,,,,,,設備驅(qū)動程序--------------------初始化設備數(shù)據(jù)傳
10、遞返回I/O控制系統(tǒng),I/O控制系統(tǒng)--------------------阻塞進程驗證I/O請求調(diào)用驅(qū)動程序狀態(tài)檢驗喚醒調(diào)用進程返回調(diào)用進程,,,I/O子系統(tǒng)的軟件體系結(jié)構(gòu)(cont.),設備的獨立性(設備無關(guān)性)應用程序獨立于具體使用的物理設備。一個程序應獨立于它使用的設備程序要盡可能地與它使用的設備類型無關(guān)優(yōu)點方便用戶編程使用程序的運行不受具體的機器環(huán)境的限制如果配備打印機,輸入信息送到打印機,否則可
11、將輸出重定向到某個指定文件便于程序移植,I/O子系統(tǒng)的軟件體系結(jié)構(gòu)(cont.),設備驅(qū)動程序的功能Windows 系統(tǒng)中只要提供設備的驅(qū)動程序,操作系統(tǒng)就會自動把這個設備注冊到內(nèi)核系統(tǒng)中Linux系統(tǒng)中,很多設備驅(qū)動程序已編譯到內(nèi)核中,其它設備的驅(qū)動程序可編譯成系統(tǒng)模塊的方式,使用“inmod”將模塊動態(tài)插入系統(tǒng)內(nèi)核設備驅(qū)動程序的具體工作設備驅(qū)動程序的特點是請求I/O的進程與設備控制器間的一個通信程序與I/O設備的特性緊
12、密相關(guān)與I/O控制方式緊密相關(guān)可以用匯編或高級語言開放驅(qū)動程序WinDriverDDK資源:驅(qū)動開發(fā)網(wǎng)(www.driverdevelop.com),I/O的控制方式,程序直接控制方式中斷方式DMA方式通道技術(shù),I/O的控制方式-程序直接控制,由于CPU中無中斷機構(gòu),I/O設備無法向CPU報告它已完成了一個字符的輸入操作,導致CPU不停地檢查它要取的數(shù)據(jù)是否已達寄存器。在I/O操作時CPU忙等工作過程非常簡單,但
13、CPU利用率很低,I/O的控制方式-中斷方式,設備控制器負責向CPU匯報數(shù)據(jù)是否已到達(以中斷方式);以字(節(jié))為單位進行I/O的;CPU以字(節(jié))為單位進行干預。,I/O的控制方式-DMA方式,引入設備DMA控制器,在其控制下,以數(shù)據(jù)塊為單位,將數(shù)據(jù)從設備直接送入內(nèi)存或相反;實質(zhì)上還是以字(節(jié))為單位進行傳輸,不過這種傳輸可以連續(xù)進行而已,形成數(shù)據(jù)塊。,DMA原理,CPU issues request to a DMA module
14、(separate module or incorporated into I/O module)CPU 向DMA模塊發(fā)出操作請求DMA module transfers a block of data directly to or from memory (without going through CPU)DMA模塊直接存取一塊內(nèi)存數(shù)據(jù)An interrupt is sent when the task is complet
15、e存取操作結(jié)束DMA模塊發(fā)出中斷The CPU is only involved at the beginning and end of the transferCPU僅在數(shù)據(jù)傳輸?shù)钠鹬箷r參與The CPU is free to perform other tasks during data transfer數(shù)據(jù)傳輸過程中CPU可執(zhí)行其它任務,總線周期挪用 Cycle stealing,利用CPU不訪問存儲器的那些周期來實現(xiàn)D
16、MA操作,此時,DMAC可以使用總線而不用通知CPU也不會妨礙CPU的工作。這種方法的關(guān)鍵是如何識別合適的可挪用的周期,以避免同CPU的操作發(fā)生重疊??偩€裁決器,I/O通道,雖然 DMA方式比中斷驅(qū)動方式已顯著地減少了CPU的干預,即由以字(節(jié))為單位的干預減少到以數(shù)據(jù)塊為單位的干預。但是CPU每發(fā)出一條I/O指令,也只能去讀(或?qū)懀┮粋€連續(xù)的數(shù)據(jù)塊。而當我們需要一次去讀多個離散的數(shù)據(jù)塊且將它們分別傳送到不同的內(nèi)存區(qū)域,或者相反時,則
17、需由CPU分別發(fā)出多條I/O指令及進行多次中斷處理,才能完成。 由于DMA每次只能執(zhí)行一條I/O指令,不能滿足復雜的I/O操作要求。在大、中型計算機系統(tǒng)中,普遍采用由專用的I/O處理機來接受CPU的委托,獨立執(zhí)行自己的通道程序來實現(xiàn)I/O設備與內(nèi)存之間的信息交換,這就是通道技術(shù)。通道技術(shù)可以進一步減少 CPU的干預,即把對一個數(shù)據(jù)塊為單位的讀(或?qū)懀┑母深A,減少到對一組數(shù)據(jù)塊為單位的讀(或?qū)懀┑挠嘘P(guān)的控制和管理的干預。這樣可實
18、現(xiàn) CPU、通道和I/O設備三者之間的并行工作,從而更有效地提高了整個系統(tǒng)的資源利用率和運行速度。,I/O處理機(I/O通道),I/O通道共分為4級:,I/O通道程序,通道是通過執(zhí)行通道程序,并與設備控制器來共同實現(xiàn)對I/O設備的控制。通道程序是由一系列的通道指令(或稱為通道命令)所構(gòu)成。通道指令與一般的機器指令不同,在每條指令中包含的信息較多,有操作碼、內(nèi)存地址、計數(shù)(讀或?qū)憯?shù)據(jù)的字節(jié)數(shù))、通道程序結(jié)束位P和記錄結(jié)束標志R。,通道類型
19、,由于外圍設備的種類較多,且其傳輸速率相差很大,所以通道也具有多種類型。根據(jù)信息交換方式,可以把通道分成以下三種類型:字節(jié)多路通道(Byte Multiplexor Channel)數(shù)組選擇通道(Block Selector Channel)數(shù)組多路通道(Block Multiplexor Channel),字節(jié)多路通道Byte Multiplexor Channel,在這種通道中,通常都含有較多個(8,16,32)非分配型子
20、通道,每一個子通道連接一臺I/O設備。這些子通道按時間片輪轉(zhuǎn)方式共享主通道。一個子通道完成一個字節(jié)的傳送后,立即讓出字節(jié)多路通道(主通道),給另一個子通道使用。它適用于連接低速或中速設備,如打印機、終端等。,數(shù)組選擇通道Block Selector Channel,這種通道雖然可以連接多臺I/O設備,但是它只有一個分配型子通道,在一段時間內(nèi)只能執(zhí)行一道通道程序、控制一臺設備進行數(shù)據(jù)傳送,其數(shù)據(jù)傳送是按數(shù)組方式進行。即當某臺設備一旦占用
21、了該通道,就被它獨占,直至該設備傳送完畢釋放該通道為止。可見,它適于連接高速設備(如磁盤機、磁帶機),但是這種通道的利用率較低。,數(shù)組多路通道Block Multiplexor Channel,數(shù)組選擇通道雖然有很高的傳輸速率,但它每次只允許一個設備傳輸數(shù)據(jù)。數(shù)組多路通道是將數(shù)組選擇通道的傳輸速率高和字節(jié)多路通道的分時并行操作的優(yōu)點結(jié)合起來,形成的一種新的通道。它含有多個非分配型子通道,可以連接多臺高、中速的外圍設備,其數(shù)據(jù)傳送卻是按
22、數(shù)組方式進行。所以這種通道既具有很高的數(shù)據(jù)傳輸速率,又能獲得令人滿意的通道利用率。,IBM S/390的通道結(jié)構(gòu),,,硬盤(溫硬)基本基礎知識,硬盤(溫硬)基本基礎知識主軸 (5400/7200/10000轉(zhuǎn)每分)盤片移動臂/磁頭臂磁頭電子電路,磁盤的容量總?cè)萘?磁頭數(shù)*柱面數(shù)*每磁道的扇區(qū)數(shù)*每扇區(qū)的字節(jié)數(shù),硬盤府視圖,,硬盤的磁頭臂,,,硬盤磁頭讀寫時的運行,磁盤的訪問時間,尋道時間(Seek Time)不是一個固定值
23、一般在幾毫秒~幾十毫秒間旋轉(zhuǎn)延遲時間(Rotational Delay Time)與旋轉(zhuǎn)速度有關(guān)數(shù)據(jù)傳輸時間(Transfer Time)內(nèi)部數(shù)據(jù)傳輸率: 10~100MB/s外部數(shù)據(jù)傳輸率取存時間(Access Time)尋道時間+旋轉(zhuǎn)時間,多進程訪問磁盤的調(diào)度算法,合理調(diào)度, 提高整個磁盤系統(tǒng)的運行效率 (1)整個磁盤系統(tǒng)的吞吐量(2)平均響應時間(3)公平性(不希望出現(xiàn)餓死現(xiàn)象),多進程訪問磁盤的調(diào)度算法,先
24、來先服務算法(FCFS)只考慮申請者申請的先后次序完成磁盤訪問操作可能造成磁頭臂來回反復移動,增長了等待時間,而且對機械結(jié)構(gòu)不利,,,,1,2,3,4,,,,,,多進程訪問磁盤的調(diào)度算法,最短尋道時間優(yōu)先算法(Shortest Seek-Time First)以申請者要求磁頭移動距離的大小作為優(yōu)先的因素靠近當前磁頭位置的申請者迅速得到滿足,防止了磁頭的大幅度來回擺動可能使一些申請者在較長時間內(nèi)得不得服務的機會,,,,1,2,3
25、,4,,,,,,多進程訪問磁盤的調(diào)度算法,掃描算法(SCAN)按一個固定的方向?qū)ふ易罱枰L問的磁道,直到這個方向上不能再進行后轉(zhuǎn)向,如此往復進行磁頭遍歷所有磁道的時間為T,最長等待2T電梯算法:改進的掃描算法,在前進方向上沒有需要訪問的磁道時就轉(zhuǎn)向建立兩個獨立的等待隊列,向上掃視隊列和向下掃視隊列磁頭臂向上運行時,調(diào)度向上隊列,反之調(diào)度向下隊列申請者的目的柱面號大于當前柱面號時,掛入向中隊列,其它情況掛入向下隊列向上隊列
26、的調(diào)度原則是柱面號小者優(yōu)先,向下隊列調(diào)度原則是柱面號大者優(yōu)先當調(diào)度隊列為空時,磁頭改變移動方向,多進程訪問磁盤的調(diào)度算法,掃描算法(SCAN)單向掃描算法(C-SCAN)算法前進到未端或無請求時磁頭臂回到起始位置N步掃描算法(N-Stop-Scan)將所有進程的請求按請求時間分很多個段(每個隊列中有N個請求)一段時間內(nèi)的請求位于一個特定的請求隊列中循環(huán)地服務每個隊列是FCFS和SCAN的折中,實例,假設磁盤有200個柱面
27、(0-199),磁盤調(diào)度起始位置為100,訪問串為:18,19,8,147,85,177,79,149,112,179,10,多進程訪問磁盤的調(diào)度算法,旋轉(zhuǎn)優(yōu)化如何處理相同磁道不同扇區(qū)的請求若某磁道上先后有訪問請求3、1、2,需要旋轉(zhuǎn)兩圈若對將訪問順序改為1、2、3,磁頭臂,1,2,3,,某磁道,,旋轉(zhuǎn)型存儲設備上信息的優(yōu)化分布能減少若干輸入輸出服務的總時間。例有10個扇區(qū),每扇區(qū)存一個記錄,現(xiàn)在要處理該磁道上順序存儲的A至J的1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論