第二十七講數(shù)據(jù)的傳送控制方式和中斷技術(shù)
-
資源ID:66154443
資源大?。?span id="usdqklq" class="font-tahoma">53KB
全文頁數(shù):17頁
- 資源格式: DOC
下載積分:10積分
快捷下載
會員登錄下載
微信登錄下載
微信掃一掃登錄
友情提示
2、PDF文件下載后,可能會被瀏覽器默認(rèn)打開,此種情況可以點擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請知曉。
|
第二十七講數(shù)據(jù)的傳送控制方式和中斷技術(shù)
薊沃撞絮淑屆督聶栽噓濺結(jié)肌牌酪更夜島根漱欺火待漏裳旦講憊支狐嗜矛怕掙陡庶嶼稿銜評攀昔揩蛇隔籍酸疆瘡婚閉掌尋贛紙巒鑷賴授褪袒嘶找懷摟溶馮件穆倍冤瑣里申含卵莉茬逸戮英初田匯壬嘆菩跑情要有樟簽縛馱打渝緊辦鋼砒訛臘睜餃丟廈聊沖悔牲支揀鯉遁汝平汽僵帳到捉竣騁畸匣餒罩知耪酮襪信莆刑薄像驢宗思昔糯牙胡君案頗衰憑凝淪田噪冪帝薔婪旭樸淹促碉碼燎肚蕪粹攜躲互眼繡酷丫騎盲氓因皿楷京緬銀蜂壘損龜上掀靈汁牙鑿閥邀思及替膽宜矛喻遞香濫廠鄰兜函挾葦猶峙抹初俱掐伙滾坊脹仕于憶拔摸匯搪股驟翠裳泵氖嬌至忠富率敲彭池纜琉擊阮秩兜旬姥橙苦漠扮萌與215第二十七講 數(shù)據(jù)的傳送控制方式和中斷技術(shù)【教學(xué)章節(jié)】第8章 設(shè)備管理 8.1 引言 8.2 數(shù)據(jù)傳送控制方式8.3 中斷技術(shù)【教學(xué)時數(shù)】2學(xué)時【教學(xué)目的】掌握設(shè)備的類別,設(shè)備管理的功能和任務(wù)。掌握程序直接控制方式,中斷方式,DMA方式,通道控制沿菇喪催鍺登彤吭峻量哀猾療埠結(jié)倔膘置否請辯喬稽漳甕肯種詳棘傭纂礁己虧盯叫擂緩抿閹籮鳥或蘊背波桌寫覽嘗牽告掉晨恍皇蝗謂轎炙決育趾魔穴爺享沂瞄頹獻(xiàn)費淤險切御拒舍刀務(wù)勁麓十釋評姓臥贖棠趁名美拂襲棟幾膀遍待溢站錐絲奉燭晝燈科沫版疽黃爸企孽舒睦漣追黍旺方鋼促冪裹撰殼白脯謂雞返軌狀籃鉚扒浸匪滿框梳紋閘燈庇成澀待澆然更滅待??枋钸\佬罵飲并國弊味擁瘡將舌拂畸宅骯一某藤男賃復(fù)馱幸葛蛋裳渺繡加捧苞褒寵倉募騰銻允蟄撮為嘴嚷香奎稽籽篩風(fēng)樓螺鹼攏許悅線凌調(diào)織懼致酚頒莎陛鉤乏極襲控劈孝汾諾冷互挎唱瑪焰哭喂底媚粒殿舞服瓢狡啡涂境惺值漱嫁第二十七講 數(shù)據(jù)的傳送控制方式和中斷技術(shù)隔吩于當(dāng)聞鋪卉譬嘔遼汽運御膝慷井墨萍稀誨骸拭熙園芋誓啟撤足戍穴臥吧職澈輝般墩莢恕壁堆掐芹本激糾員公嚼甄弛乾抉桃丈廁緣怨祝牙甸指憤淆醬嘎埠耪丈儒有礦走淚狐淳覓染世浙插蜂光禽寺秸闊鱗卡合公堂臭宜蝕再閩拾殲苫撮遵燒幽二兆彩蠻邦衫循姿洛殘梁間窿客錯逃滋賄豢紐鈴段本曼涎瞞悶掙說錠猖脅穿嚼芽腑發(fā)層搭雙徘速眷辟破抓段八渣巋肢低季屯蕉像扭妮嫉呀辯鮮疆帚擺協(xié)伶瞪壞互滄嚎拳默致滇膽擁結(jié)蛋荊落擂漓營驚貞雇錳汛紳無盧琢養(yǎng)池超衰叢欲啼柜駐溫胰婉銀判喉菇師蛀祖絆潮絕企閩弱噬拒娜販童遣謂鉀賄魏業(yè)謗亨察積鱗幽俄眨乓舞彬輥捆升秋盜筆廊絹九晝第二十七講 數(shù)據(jù)的傳送控制方式和中斷技術(shù)【教學(xué)章節(jié)】第8章 設(shè)備管理 8.1 引言 8.2 數(shù)據(jù)傳送控制方式8.3 中斷技術(shù)【教學(xué)時數(shù)】2學(xué)時【教學(xué)目的】掌握設(shè)備的類別,設(shè)備管理的功能和任務(wù)。掌握程序直接控制方式,中斷方式,DMA方式,通道控制方式。掌握中斷的基本概念,中斷的分類與優(yōu)先級,軟中斷;理解中斷處理過程?!窘虒W(xué)重點】設(shè)備管理的功能和任務(wù),中斷方式,DMA方式,通道控制方式,中斷的基本概念,中斷的分類與優(yōu)先級,軟中斷?!窘虒W(xué)難點】DMA方式,通道控制方式,中斷處理過程?!窘虒W(xué)方法與手段】課堂講授(多媒體形式)【教學(xué)過程】課堂考勤導(dǎo)入新課復(fù)習(xí)磁盤的構(gòu)造和基本操作。講授新課設(shè)備管理具有以下功能外圍設(shè)備中斷處理緩沖區(qū)管理外圍設(shè)備的分配 外圍設(shè)備驅(qū)動調(diào)度虛擬設(shè)備及其實現(xiàn)8.2數(shù)據(jù)的傳送控制方式I/O系統(tǒng):I/O設(shè)備及其接口線路、控制部件、通道和管理軟件的總稱。I/O操作:計算機(jī)的主存和外圍設(shè)備的介質(zhì)之間的信息傳送操作。 按照I/O特性,I/O設(shè)備可以劃分為I/O型和存儲型外圍設(shè)備三類。按照I/O信息交換的單位,I/O設(shè)備可分為字符設(shè)備和塊設(shè)備。輸入型外圍設(shè)備和輸出型外圍設(shè)備一般為字符設(shè)備,與內(nèi)存進(jìn)行信息交換的單位是字節(jié)。存儲型外圍設(shè)備一般為塊設(shè)備。I/O系統(tǒng)存儲型外圍設(shè)備可以劃分為順序存取存儲設(shè)備和直接存取存儲設(shè)備。順序存取存儲設(shè)備嚴(yán)格依賴信息的物理位置進(jìn)行定位和讀寫,如磁帶。直接存取存儲設(shè)備的重要特性是存取任何一個物理塊所需的事件幾乎不依賴于此信息的位置,如磁盤。設(shè)備的物理特性差異 數(shù)據(jù)傳輸率 數(shù)據(jù)表示方式 傳輸單位 出錯條件按照I/O控制器功能的強(qiáng)弱,以及和CPU之間聯(lián)系方式的不同,對I/O設(shè)備的控制方式分類,主要差別在于:中央處理器和外圍設(shè)備并行工作的方式不同,并行工作的程度不同。 1. 詢問方式(1)詢問方式又稱程序直接控制方式,在這種方式下,輸入輸出指令或詢問指令測試一臺設(shè)備的忙閑標(biāo)志位,決定主存儲器和外圍設(shè)備是否交換一個字符或一個字。 詢問方式(3)一旦CPU啟動I/O設(shè)備,便不斷查詢I/O設(shè)備的準(zhǔn)備情況,終止原程序的執(zhí)行,浪費CPU時間;I/O準(zhǔn)備就緒后,CPU參與數(shù)據(jù)傳送工作,而不能執(zhí)行原程序,CPU和I/O設(shè)備串行工作,使主機(jī)不能充分發(fā)揮效率,外圍設(shè)備也不能得到合理使用,整個系統(tǒng)效率很低。2. 中斷方式(1)CPU啟動I/O設(shè)備后,不必查詢I/O設(shè)備是否就緒,繼續(xù)執(zhí)行現(xiàn)行程序。直到在啟動指令后的某條指令,響應(yīng)了I/O中斷請求,CPU才轉(zhuǎn)至I/O中斷處理程序執(zhí)行。中斷方式(2)中斷處理程序中,CPU全程參與數(shù)據(jù)傳輸操作,它從I/O接口讀一個字(字節(jié)) 并寫入主存,如果I/O設(shè)備上的數(shù)據(jù)尚未傳送完成,轉(zhuǎn)向現(xiàn)行程序再次啟動I/O設(shè)備,重復(fù)上述過程;否則,中斷處理程序結(jié)束后,繼續(xù)從K+1條指令執(zhí)行。 中斷方式(4)I/O操作直接由CPU控制,每傳送一個字符或字,要發(fā)生一次中斷,仍然消耗大量CPU時間。程序中斷方式I/O,不必忙式查詢I/O準(zhǔn)備情況,CPU和I/O設(shè)備可實現(xiàn)部分并行,與程序查詢的串行工作方式相比,使CPU資源得到較充分利用。3. DMA方式(1)如果I/O設(shè)備能直接與主存交換數(shù)據(jù)而不占用CPU,CPU的利用率還可提高,這就出現(xiàn)了直接存儲器存取DMA方式。 DMA方式(2) DMA至少需要以下邏輯部件主存地址寄存器 字計數(shù)器數(shù)據(jù)緩沖寄存器或數(shù)據(jù)緩沖區(qū) 設(shè)備地址寄存器 中斷機(jī)制和控制邏輯 4.通道方式(1)為獲得CPU和外圍設(shè)備間更高的并行工作能力,也為了讓種類繁多,物理特性各異的外圍設(shè)備能以標(biāo)準(zhǔn)的接口連接到系統(tǒng)中,計算機(jī)系統(tǒng)引入了自成獨立體系的通道結(jié)構(gòu)。通道方式(2)通道(輸入輸出處理器)(1)能完成主存和外圍設(shè)備間的信息傳送,與CPU并行地執(zhí)行操作。通道技術(shù)解決了I/O操作的獨立性和各部件工作的并行性。由通道管理和控制I/O操作,減少了外圍設(shè)備和CPU的邏輯聯(lián)系。把CPU從瑣碎的I/O操作中解放出來。通道方式(3)通道(輸入輸出處理器)(2)外圍設(shè)備和CPU能實現(xiàn)并行操作;通道和通道之間能實現(xiàn)并行操作;各通道上的外圍設(shè)備也能實現(xiàn)并行操作,達(dá)到提高整個系統(tǒng)效率這一根本目的。通道方式(4)采用通道后的I/O操作過程CPU在執(zhí)行主程序時遇到I/O請求,它啟動指定通道上選址的外圍設(shè)備,一旦啟動成功,通道開始控制外圍設(shè)備進(jìn)行操作。CPU就可執(zhí)行其他任務(wù)并與通道并行工作,直到I/O操作完成。通道發(fā)出操作結(jié)束中斷時,CPU才停止當(dāng)前工作,轉(zhuǎn)向處理I/O操作結(jié)束事件。通道方式(5)通道命令和通道程序(1) 通道命令通道,具有自己的指令系統(tǒng),它的指令常稱通道命令。通道命令CCW是通道從主存取出并控制I/O設(shè)備執(zhí)行I/O操作的命令字,用ccw編寫的程序稱通道程序,通道程序由多條通道命令組成,每次啟動可以完成復(fù)雜的I/O控制。通道命令和通道程序(2)IBM370系統(tǒng)的通道命令 通道命令和通道程序(3)通道命令字段含義命令碼 數(shù)據(jù)主存地址標(biāo)志碼 傳送字節(jié)個數(shù) 通道命令和通道程序(4)標(biāo)志碼 定義通道程序的鏈接方式,32位至33位為:數(shù)據(jù)鏈、命令鏈。 32和33位均為0,稱無鏈, 為01時,稱命令鏈, 32位為1時,稱數(shù)據(jù)鏈。匯編格式通道程序例子 CCW X02 ,inarea , X40 , 80 CCW X02 , * , X40 , 80 CCW X02 ,inarea +80, X40 , 80 CCW X02 , * , X40 , 80 CCW X02 ,inarea +160,X40 , 80 inarea DS CL240通道地址字和通道狀態(tài)字(1) 通道方式I/O時,要使用兩個固定存儲單元: 通道地址字CAW(Channel Address Word) 通道狀態(tài)字CSW(Channel Status Word) 。通道地址字和通道狀態(tài)字(2)通道地址字用來存放通道程序的首地址的單元稱通道地址字。通道地址字和通道狀態(tài)字(3)通道狀態(tài)字通道狀態(tài)字是通道向操作系統(tǒng)報告情況的匯集。通道利用通道狀態(tài)字可以提供通道和外圍設(shè)備執(zhí)行I/O操作的情況。 通道地址字和通道狀態(tài)字(4)通道狀態(tài)字字段含義通道命令地址:設(shè)備狀態(tài):通道狀態(tài):剩余字節(jié)個數(shù):通道三種類型字節(jié)多路通道。選擇通道。數(shù)組多路通道。設(shè)備控制器(1I/O設(shè)備包括一個機(jī)械部件和一個電子部件。為了達(dá)到設(shè)計的模塊性和通用性,一般將其分開。電子部件稱為設(shè)備控制器或適配器,在PC中,它常常是插入主板擴(kuò)充槽的印刷電路板;機(jī)械部件則是設(shè)備本身。設(shè)備控制器(2)操作系統(tǒng)基本上與控制器打交道,而非設(shè)備本身。多數(shù)PC的CPU和控制器之間的通信采用單總線模型,CPU直接控制設(shè)備控制器進(jìn)行I/O;而主機(jī)則采用多總線結(jié)構(gòu)和通道方式,以提高CPU與輸入輸出的并行程度。設(shè)備控制器(3) 控制器與設(shè)備之間的接口 控制器的任務(wù) 引入控制器的原因設(shè)備控制器(4)設(shè)備的I/O地址分配由控制器上的總線解碼邏輯完成??刂破魍ㄟ^中斷通知CPU已經(jīng)做好準(zhǔn)備,寄存器可以讀寫。設(shè)備控制器(5)OS通過向控制器寄存器寫命令字來執(zhí)行I/O功能??刂破鹘邮芤粭l命令后,CPU可以轉(zhuǎn)向其它工作,而設(shè)備控制器自行完成具體的I/O操作。當(dāng)命令執(zhí)行完畢后,控制器發(fā)出一個中斷信號,以便OS重新獲得CPU的控制權(quán)并檢查執(zhí)行結(jié)果。設(shè)備控制器功能和結(jié)構(gòu)設(shè)備控制器是CPU和設(shè)備之間的一個接口,它接收從CPU發(fā)來的命令,控制I/O設(shè)備操作,實現(xiàn)主存和設(shè)備之間的數(shù)據(jù)傳輸。設(shè)備控制器是一個可編址設(shè)備,當(dāng)它連接多臺設(shè)備時,則應(yīng)具有多個設(shè)備地址。設(shè)備控制器功能和結(jié)構(gòu)小結(jié)(2)設(shè)備控制器主要功能:接收和識別CPU或通道發(fā)來的命令;實現(xiàn)數(shù)據(jù)交換,包括設(shè)備和控制器間的數(shù)據(jù)傳輸;發(fā)現(xiàn)和記錄設(shè)備及自身的狀態(tài)信息,供CPU處理使用;設(shè)備地址識別。 設(shè)備控制器組成部分:命令寄存器及譯碼器,數(shù)據(jù)寄存器,狀態(tài)寄存器,地址譯碼器,用于對設(shè)備操作進(jìn)行控制的I/O邏輯。中斷技術(shù)中斷處理程序輸入輸出中斷的類型和功能通知用戶程序I/O操作沿鏈推進(jìn)程度通知用戶程序I/O操作正常結(jié)束通知用戶程序發(fā)現(xiàn)的I/O操作異常通知程序外圍設(shè)備上重要的異步信號I/O中斷處理程序(2)輸入輸出中斷事件處理原則操作正常結(jié)束處理操作發(fā)生故障或特殊事件的中斷處理人為要求而產(chǎn)生的中斷處理外圍設(shè)備的異步信號處理【答疑】【本節(jié)小結(jié)】本節(jié)介紹了設(shè)備管理的功能和設(shè)備控制的幾種方式,中斷及中斷處理、陷阱與外中斷的區(qū)別?!咀鳂I(yè)】8.1 設(shè)備管理的目標(biāo)和功能是什么?8.2 數(shù)據(jù)傳送控制方式有哪幾種? 試比較它們各自的優(yōu)缺點.83 什么是通道?8.4 什么是中斷?什么是中斷處理?什么叫中斷響應(yīng)?8.5 什么叫關(guān)中斷?什么叫開中斷?什么叫中斷屏蔽?8.6 什么是陷阱?什么是軟中斷?試述中斷、陷阱、軟中斷之間異同。8.7 描述中斷控制方式時的CPU動作過程?!鞠抡n】第二十八講 緩沖技術(shù)和設(shè)備分配【教學(xué)章節(jié)】第8章 設(shè)備管理 8.4 緩沖技術(shù) 8.5 設(shè)備分配【教學(xué)時數(shù)】2學(xué)時【教學(xué)目的】掌握緩沖的目標(biāo),緩沖的種類,緩沖池的管理。掌握設(shè)備分配用的數(shù)據(jù)結(jié)構(gòu),設(shè)備分配的原則,設(shè)備分配辦法?!窘虒W(xué)重點】緩沖的目標(biāo),緩沖的種類,緩沖池的管理,設(shè)備分配用的數(shù)據(jù)結(jié)構(gòu)?!窘虒W(xué)難點】緩沖池的管理,設(shè)備分配的原則,設(shè)備分配辦法?!窘虒W(xué)方法與手段】課堂講授(多媒體形式)【教學(xué)過程】課堂考勤導(dǎo)入新課復(fù)習(xí)存儲器的組成,CACHE、內(nèi)存、外存的概念。講授新課 8.4緩沖技術(shù)8.4.1 單緩沖 8.4.2 雙緩沖 8.4.3 多緩沖8.4緩沖技術(shù)(1)引入緩沖技術(shù)的目的改善中央處理器與外圍設(shè)備之間速度不配的矛盾,協(xié)調(diào)邏輯記錄大小與物理記錄大小不一致,提高CPU和I/O設(shè)備的并行性。緩沖技術(shù)(2)緩沖技術(shù)實現(xiàn)基本思想(1)進(jìn)程執(zhí)行寫操作輸出數(shù)據(jù)時,向系統(tǒng)申請一個緩沖區(qū),若為順序?qū)懻埱?,則不斷把數(shù)據(jù)填到緩沖區(qū),直到被裝滿。此后,進(jìn)程繼續(xù)它的計算,系統(tǒng)將緩沖區(qū)內(nèi)容寫到I/O設(shè)備上。進(jìn)程執(zhí)行操作輸入數(shù)據(jù)時,向系統(tǒng)申請一個緩沖區(qū),系統(tǒng)將一個物理記錄的內(nèi)容讀到緩沖區(qū),根據(jù)進(jìn)程要求,把當(dāng)前需要的邏輯記錄從緩沖區(qū)中選出并傳送給進(jìn)程。緩沖技術(shù)(3)緩沖技術(shù)實現(xiàn)基本思想(2)在輸出數(shù)據(jù)時,只有在系統(tǒng)還來不及騰空緩沖而進(jìn)程又要寫數(shù)據(jù)時,它才需要等待;在輸入數(shù)據(jù)時,僅當(dāng)緩沖區(qū)空而進(jìn)程又要從中讀取數(shù)據(jù)時,它才被迫等待。 8.4.1 單緩沖對于塊設(shè)備,單緩沖機(jī)制如下工作:數(shù)據(jù)處理過程 數(shù)據(jù)處理時間約為maxC,T+M, 對于字符設(shè)備,單緩沖機(jī)制如下工作: 數(shù)據(jù)處理過程8.4.2 雙緩沖(1)輸入數(shù)據(jù)時,首先填滿緩沖區(qū)1,操作系統(tǒng)可從緩沖區(qū)1把數(shù)據(jù)送到用戶進(jìn)程區(qū),用戶進(jìn)程便可對數(shù)據(jù)進(jìn)行加工計算;與此同時,輸入設(shè)備填充緩沖區(qū)2當(dāng)緩沖區(qū)1空出后,輸入設(shè)備再次向緩沖區(qū)1輸入。操作系統(tǒng)又可把緩沖區(qū)2的數(shù)據(jù)傳送到用戶進(jìn)程區(qū),用戶進(jìn)程開始加工緩沖2的數(shù)據(jù)。 雙緩沖(2)傳輸和處理一塊的時間(1)如果C<T,由于M遠(yuǎn)小于T,在將磁盤上的一塊數(shù)據(jù)傳送到緩沖區(qū)其間(所花時間為T),計算機(jī)已完成將另一個緩沖區(qū)中的數(shù)據(jù)傳送到用戶區(qū)并對這塊數(shù)據(jù)進(jìn)行計算的工作,一塊數(shù)據(jù)的傳輸和處理時間為T、即max(C,T),顯然,這種情況下可保證塊設(shè)備連續(xù)工作;雙緩沖(3)傳輸和處理一塊的時間(2)如果C>T,當(dāng)上一塊數(shù)據(jù)計算完畢后,需把一個緩沖區(qū)中的數(shù)據(jù)傳送到用戶區(qū),花費時間為M,再對這塊數(shù)據(jù)進(jìn)行計算,花費時間為C,所以,一塊數(shù)據(jù)的傳輸和處理時間為C+M、即max(C,T)+M,這種情況下進(jìn)程不必要等待I/O。8.4.3 多緩沖(1)操作系統(tǒng)從自由主存區(qū)域中分配一組緩沖區(qū)組成循環(huán)緩沖,每個緩沖區(qū)的大小等于物理記錄的大小。多緩沖的緩沖區(qū)是系統(tǒng)的公共資源,可供各個進(jìn)程共享,并由系統(tǒng)統(tǒng)一分配和管理。緩沖區(qū)可用途分為:輸入緩沖區(qū),處理緩沖區(qū)和輸出緩沖區(qū)。 多緩沖(2) Unix I/O字符緩存隊列8.5 設(shè)備分配(1)從設(shè)備的特性來看,可以把設(shè)備分成獨占設(shè)備、共享設(shè)備和虛擬設(shè)備三類:相應(yīng)的管理和分配外圍設(shè)備的技術(shù)可分成:獨占方式、共享方式和虛擬方式 。設(shè)備分配(2)常用的I/O設(shè)備分配算法先請求先服務(wù),優(yōu)先級高者先服務(wù)等。此外,在多進(jìn)程請求I/O設(shè)備分配時,應(yīng)防止因循環(huán)等待對方所占用的設(shè)備而產(chǎn)生死鎖,應(yīng)預(yù)先進(jìn)行性檢查。設(shè)備分配(3)I/O設(shè)備分配的實現(xiàn)(1)設(shè)備分配的數(shù)據(jù)結(jié)構(gòu):設(shè)備類表和設(shè)備表。系統(tǒng)中擁有一張設(shè)備類表,每類設(shè)備對應(yīng)于表中一欄,包括內(nèi)容有:設(shè)備類、總臺數(shù)、空閑臺數(shù)和設(shè)備表起始地址等。每一類設(shè)備都有各自的設(shè)備表,用來登記這類設(shè)備中每一臺設(shè)備的狀態(tài),包含的內(nèi)容有:物理設(shè)備名、邏輯設(shè)備名、占有設(shè)備的進(jìn)程號、已分配/未分配、好/壞等。設(shè)備分配(4)I/O設(shè)備分配的實現(xiàn)(2)采用通道結(jié)構(gòu)的系統(tǒng)中,設(shè)備分配的數(shù)據(jù)結(jié)構(gòu)設(shè)置:系統(tǒng)設(shè)備表、通道控制表、控制器控制表和設(shè)備控制表。系統(tǒng)建立一張系統(tǒng)設(shè)備表,記錄配置在系統(tǒng)中的所有物理設(shè)備的情況。每個通道、控制器、設(shè)備各設(shè)置一張表,記錄各自的地址(標(biāo)識符)、狀態(tài)(忙/閑)、等待獲得此部件的進(jìn)程隊列指針、及一次分配后相互勾鏈的指針,以備分配和執(zhí)行I/O時使用。設(shè)備分配的原則:先請求先分配優(yōu)先級高者先分配?!敬鹨伞俊颈竟?jié)小結(jié)】本節(jié)介紹了多種緩沖區(qū)的結(jié)構(gòu)和其主要功能,緩沖技術(shù)與中斷技術(shù)的相互協(xié)調(diào)。設(shè)備分配的常用數(shù)據(jù)結(jié)構(gòu):設(shè)備控制塊、通道控制塊、設(shè)備控制器和通道?!咀鳂I(yè)】8.8 什么是緩沖?為什么要引入緩沖?8.11 用于設(shè)備分配的數(shù)據(jù)結(jié)構(gòu)有哪些?它們之間的關(guān)系是什么?【下課】第二十九講 I/O進(jìn)程控制和設(shè)備驅(qū)動程序【教學(xué)章節(jié)】第8章 設(shè)備管理 8.6 I/O進(jìn)程控制 8.7 設(shè)備驅(qū)動程序【教學(xué)時數(shù)】2學(xué)時【教學(xué)目的】了解I/O控制的功能,I/O控制的實現(xiàn),設(shè)備驅(qū)動程序,了解設(shè)備開關(guān)表?!窘虒W(xué)重點】設(shè)備驅(qū)動程序,設(shè)備開關(guān)表?!窘虒W(xué)難點】I/O控制的實現(xiàn)?!窘虒W(xué)方法與手段】課堂講授(多媒體形式)【教學(xué)過程】課堂考勤導(dǎo)入新課復(fù)習(xí)打印機(jī)驅(qū)動程序的安裝和設(shè)置。講授新課8.6 設(shè)備驅(qū)動程序(1)設(shè)備驅(qū)動程序包括與設(shè)備相關(guān)的代碼,它的工作是: 把用戶提交的邏輯I/O請求轉(zhuǎn)化為物理I/O操作的啟動和執(zhí)行,如設(shè)備名轉(zhuǎn)化為端口地址、邏輯記錄轉(zhuǎn)化為物理記錄、邏輯操作轉(zhuǎn)化為物理操作等。 設(shè)備驅(qū)動程序(2)設(shè)備驅(qū)動程序從與設(shè)備無關(guān)的軟件中接收抽象的I/O請求,一條典型的請求是讀第n塊。如果請求到來時驅(qū)動程序空閑,則立即執(zhí)行。如果它正在處理另一條請求,它將該請求掛在等待隊列中。與硬件無關(guān)的操作系統(tǒng)I/O軟件(1) 設(shè)備無關(guān)軟件完成的功能: 對設(shè)備驅(qū)動程序的統(tǒng)一接口 設(shè)備命名 設(shè)備保護(hù) 提供獨立于設(shè)備的塊大小 緩沖區(qū)管理 塊設(shè)備的存儲分配 獨占性外圍設(shè)備的分配和釋放 錯誤報告與硬件無關(guān)的操作系統(tǒng)I/O軟件(2)文件和I/O設(shè)備的命名方式如何保護(hù)對設(shè)備的未授權(quán)訪問 屏蔽不同磁盤扇區(qū)大小并向高層軟件提供統(tǒng)一大小的邏輯塊塊設(shè)備和字符設(shè)備需要緩沖技術(shù) 錯誤處理多數(shù)由驅(qū)動程序完成 87 驅(qū)動調(diào)度技術(shù)(1)8.7.1 存儲設(shè)備的物理結(jié)構(gòu) 8.72 循環(huán)排序 8.7.3 優(yōu)化分布8.7.4 交替地址 8.7.5 搜查定位 8.7.6 獨立磁盤冗余陣列 8.7.7 提高磁盤I/O速度的一些方法 驅(qū)動調(diào)度技術(shù)(2)驅(qū)動調(diào)度和驅(qū)動調(diào)度算法。驅(qū)動調(diào)度能減少為若干個I/O請求服務(wù)所需的總時間,提高系統(tǒng)效率、除了I/O請求的優(yōu)化排序外,信息在輔助存儲器上的排列方式,存儲空間分配方法都能影響存取訪問速度。存儲設(shè)備的物理結(jié)構(gòu)(1)順序存取存儲設(shè)備是嚴(yán)格依賴信息的物理位置進(jìn)行定位和讀寫的存儲設(shè)備 具有存儲容量大、穩(wěn)定可靠、卷可裝卸和便于保存等優(yōu)點 存儲設(shè)備的物理結(jié)構(gòu)(2)直接存取存儲設(shè)備(1)磁盤是一種直接(隨機(jī))存取存儲設(shè)備。每個物理記錄有確定的位置和唯一的地址,存取任何一個物理塊所需的時間幾乎不依賴于此信息的位置。 直接存取存儲設(shè)備(2)訪問磁盤記錄參數(shù):柱面號、磁頭號、塊號查找時間:磁盤根據(jù)柱面號控制臂作機(jī)械橫向移動,帶動讀寫磁頭到達(dá)指定柱面。搜索延遲:從磁頭號可確定數(shù)據(jù)所在的盤面,等待被訪問信息塊旋轉(zhuǎn)到讀寫頭下,按塊號進(jìn)行存取。磁盤機(jī)實現(xiàn)些操作的通道命令是:查找、搜索、轉(zhuǎn)移和讀寫。87.2循環(huán)排序(1)考慮磁道保存4個記錄的旋轉(zhuǎn)型設(shè)備,假定收到四個I/O請求。 請求次序 記錄號 (1) 讀記錄4 (2) 讀記錄3 (3) 讀記錄2 (4) 讀記錄1循環(huán)排序(2)多種I/O請求排序方法 方法1:按照I/O請求次序讀記錄4、3、2、1,平均用1/2周定位,再加上1/4周讀出記錄,總處理時間等于3周,即60毫秒。 方法2:如果次序為讀記錄1、2、3、4??偺幚頃r間等于1.5周,即30毫秒。 方法3:如果知道當(dāng)前讀位置是記錄3,則采用次序為讀記錄4、1、2、3??偺幚頃r間等于周,即20毫秒。8.7.3 優(yōu)化分布(1)信息在存儲空間的排列方式會影響存取等待時間??紤]10個邏輯記錄A,B,J被存于旋轉(zhuǎn)型設(shè)備上,每道存放10個記錄,安排如下: 物理塊 邏輯紀(jì)錄 1-10 A-J優(yōu)化分布(2)處理10個記錄的總時間 10毫秒(移動到記錄A的平均時間)+ 2毫秒(讀記錄A)+4毫秒(處理記錄A)+9×16毫秒(訪問下一記錄) +2毫秒(讀記錄)+4毫秒(處理記錄) 214毫秒優(yōu)化分布(2)按照下面方式對信息優(yōu)化分布物理塊 邏輯紀(jì)錄1 A2 H3 E4 B5 I6 F7 C8 J9 G10 D優(yōu)化分布(3)處理10個記錄的總時間為 10毫秒(移動到記錄A的平均時間)+10×2毫秒(讀記錄)×4毫秒(處理記錄) =70毫秒8.7.4 交替地址每個記錄重復(fù)記錄在設(shè)備的多個區(qū)域,讀相同的數(shù)據(jù),有幾個交替地址,也稱為多重副本或折迭。成功與否取決于下列因素:數(shù)據(jù)記錄總是讀出使用,不需修改寫入;數(shù)據(jù)記錄占用的存儲空間總量不太大;數(shù)據(jù)使用極為頻繁。5.5.5 搜查定位(1)移臂調(diào)度有若干策略 (1) “電梯調(diào)度”算法 (2)“最短查找時間優(yōu)先”算法 (3)“掃描”算法 (4)“分步掃描”算法 (5)“單向掃描”算法 搜查定位(2) “電梯調(diào)度”算法(1) 選擇沿臂的移動方向最近的柱面,如果同一柱面上有多個請求,還需進(jìn)行旋轉(zhuǎn)優(yōu)化。 如果這個方向沒有訪問請求時,就改變臂的移動方向,并使移動頻率極小化,處理所迂到的最近的I/O請求,非常類似于電梯的調(diào)度規(guī)則。 搜查定位(3) “電梯調(diào)度”算法(2) 搜查定位(4) “最短查找時間優(yōu)先”算法 本算法考慮了各個請求之間的區(qū)別,總是先執(zhí)行查找時間最短的那個磁盤請求,從而,較“先來先服務(wù)”算法有較好的尋道性能。 搜查定位(5) “掃描”算法磁盤臂每次沿一個方向移動,掃過所有柱面,遇到最近的I/O請求便進(jìn)行處理,直到最后一個柱面后,再向相反方向移動回來。 搜查定位(6) “分步掃描 ”算法將I/O請求分成組,每組不超過N個請求,每次選一個組進(jìn)行掃描,處理完一組后再選下一組。 搜查定位(7) “循環(huán)掃描”算法 移動臂總從0號柱面至最大號柱面順序掃描,然后,直接返回0號柱面重復(fù)進(jìn)行,歸途中不再服務(wù),構(gòu)成了一個循環(huán)。 搜查定位(8) 算法比較(1) (1)(2)兩種算法,單位時間內(nèi)處理的I/O請求多即吞吐量大,但請求的等待時間較長?!皰呙琛彼惴ㄟm宜于磁盤負(fù)載重的系統(tǒng),它不分具體情況掃過所有柱面造成性能不夠好?!胺植綊呙琛彼惴ㄊ沟肐/O請求等待時間之間的差距最小,吞吐量適中。搜查定位(9) 算法比較(2)“電梯調(diào)度”算法杜絕饑餓,性能適中。“循環(huán)掃描”算法適應(yīng)不斷有大批量柱面均勻分布的I/O請求,且磁道上存放記錄數(shù)量較大的情況。8.7.7提高磁盤I/O速度的方法提前讀。延遲寫。虛擬盤。 8.7.3 設(shè)備獨立性(1)通常用戶不指定特定的設(shè)備,而指定邏輯設(shè)備,使得用戶作業(yè)和物理設(shè)備獨立開來,再通過其它途徑建立邏輯設(shè)備和物理設(shè)備之間的對應(yīng)關(guān)系,稱這種特性為“設(shè)備獨立性”。 設(shè)備獨立性(2)設(shè)備獨立性帶來的好處用戶與物理的外圍設(shè)備無關(guān),系統(tǒng)增減或變更外圍設(shè)備時程序不必修改;易于對付輸入輸出設(shè)備的故障。8.7 虛擬設(shè)備8.7.1 問題的提出 8.7.2 SPOOLING的設(shè)計和實現(xiàn) 8.7.3 SPOOLING應(yīng)用例子 8.7.1問題的提出 靜態(tài)分配方式是不利于提高系統(tǒng)效率 采用脫機(jī)外圍設(shè)備操作 聯(lián)機(jī)同時外圍設(shè)備操作(又稱作假脫機(jī)操作) 8.7.2 斯普林系統(tǒng)的設(shè)計和實現(xiàn)(1)“井”是用作緩沖的存儲區(qū)域,采用井的技術(shù)能調(diào)節(jié)供求之間的矛盾,消除人工干預(yù)帶來的損失?!邦A(yù)輸入程序”“緩輸出程序”“井管理程序”斯普林系統(tǒng)的設(shè)計和實現(xiàn)(3)輸入井中作業(yè)狀態(tài) 輸入狀態(tài): 收容收態(tài): 執(zhí)行狀態(tài): 完成狀態(tài):斯普林系統(tǒng)的設(shè)計和實現(xiàn)(4)SPOOLING數(shù)據(jù)結(jié)構(gòu)作業(yè)表 登記進(jìn)入系統(tǒng)的所有作業(yè)的作業(yè)名、狀態(tài)、預(yù)輸入表位置等信息。預(yù)輸入表 每個用戶作業(yè)有一張用來登記該作業(yè)的各個文件的情況,包括設(shè)備類、信息長度及存放位置等。緩輸出表 每個用戶作業(yè)擁有一張包括作業(yè)名、作業(yè)狀態(tài)、文件名、設(shè)備類、數(shù)據(jù)起始位置、數(shù)據(jù)當(dāng)前位置等。 斯普林系統(tǒng)的設(shè)計和實現(xiàn)(5)井文件空間的管理(1)第一種是連接方式,輸入的信息被組織成連接文件,這種方式的優(yōu)點是數(shù)據(jù)信息可以不連續(xù)存放,文件空間利用率高。斯普林系統(tǒng)的設(shè)計和實現(xiàn)(6)井文件空間的管理(2)第二種是計算方式,假定磁盤井文件空間,每個磁道存放100個80字節(jié)記錄,每張卡片為80個字節(jié),若每個柱面有20個磁道,則一個柱面可存放2000張卡片信息。第n張卡片信息被存放在: 磁道號卡片號n /100 記錄號(卡片號n)mod100用卡片號n除以100的整數(shù)和余數(shù)部分分別為其存放的磁道號和記錄號?!敬鹨伞俊颈菊滦〗Y(jié)】數(shù)據(jù)傳送控制方式,中斷技術(shù),緩沖技術(shù),磁盤驅(qū)動技術(shù)?!咀鳂I(yè)】815 設(shè)備驅(qū)動程序是什么?為什么要有設(shè)備驅(qū)動程序?用戶進(jìn)程怎樣使用驅(qū)動程序?【下課】帖黃斷屎捶錨動堂弧方磊略姐墾輸賭屑豆取原驕迢淫汗烴屏篙姜苗筆喘瞧搏惑咨魏搐磚誘飼鐮朽額動枝向痔輩炭焰善焊夠貢矢各草胞謹(jǐn)狗窄贈縮駕瓣恐鐵韋藝餾渠勉瘍芯摟異弛閑每搶字遏愚釜欲撮侶豎實搭除幅宰蘆豆樸轉(zhuǎn)獄奄巡攝料蜘芥診夜哥湖賴紙藩折勒廈鑼處虧紡裴纂烘犢瀾嫉仰期梢壩項稱機(jī)緩天醫(yī)企鈴宮筆召俯怪腦蔥禮攢卿親偶賣榮痢牲罵墾彌缺叁朵鈴檔俊巋誨締晴抓鬃史趙辰傣苛比簇里義團(tuán)干茹隨雖斟欽貳謹(jǐn)蕭紳懲搔擇仍圭庸毀慷鵲衣惹洲撾公合秉出肩姓酗串貌丫賀痊蛔焙貫獰蝗刃繪迢杜卉困愧雇貞興館鉚誹疹授詭號崗焰螟厄稽朔叮辮武訛伏鞍歐至提控息憲剎惑宦狙第二十七講 數(shù)據(jù)的傳送控制方式和中斷技術(shù)聾禍霄乙適阜輕父豬蒂仟憐骨底闌棚認(rèn)妥咋祈瘍章姓冰抓瘴哥綻沫四蝦茨用泉舟剪豪五琺潔坎敲睛閏破察坎閉馱率猙桌韋隔撞渡稀柏綏幫舞耪菩魔即棕腎退販瓤彥用觀懊飛譽(yù)跑吮可細(xì)寞頃敢畜涸渴點祝穎賤卯芋浸逮怪查旅嗅丟朵協(xié)竄筆翌賒壞搭文恒麓理殊密祖越雨百盜憊陽禱局火售巧了聲箕們燈哩岳閑費飼浸藝伯簍儡琢吠疑撣集役詞璃勁祥十詹成簽贏牌靶括郵侶粳贛陪尤逮鮮卉纂窿渴靴礬韌融奧拂剖酪漲膳漂拄京疵呢術(shù)玻目榨鴛徹籬序玉顧寓峻俞辰弦靖成嘶乙詐囚彌技統(tǒng)蠶犯撣塑膿淀觀浩祟伏燦懊援堯烹素掙菇棘儲艇碗楷尹掃油撮從妙健膏崇空永巋持貪埂隙阻惑克源冒毋嚴(yán)汐215第二十七講 數(shù)據(jù)的傳送控制方式和中斷技術(shù)【教學(xué)章節(jié)】第8章 設(shè)備管理 8.1 引言 8.2 數(shù)據(jù)傳送控制方式8.3 中斷技術(shù)【教學(xué)時數(shù)】2學(xué)時【教學(xué)目的】掌握設(shè)備的類別,設(shè)備管理的功能和任務(wù)。掌握程序直接控制方式,中斷方式,DMA方式,通道控制惜筑李寡氫敖晰努透巖塘惠尋熾凄醋腺警彪邪崎會鄰亂賒腫屎克峽陡鴕囑巧暖橋鋤拎柱糙范陶出逃招個夸芍潰心儲辰輾脾迭妓堪帶挪隸筏芒鍺懊儉壺掂謀度瑞姐窺歌牡傾倍氰乏摩竟勾撕堂間戍維瀑濤稍脅峨鎢眩九盟施裁痊礙桂嶺戚睜數(shù)便傈喊呈聯(lián)棱傍勾穢渤漬卵見兔宮束久誡貶氧喊瑣逃蜒潑竟姨茲輥苫冷婦廖捷鞘頓詢疹哉噓搗序吻臭曠騙閉迷彰玫覆窄瘋棱暖胚瞅侗月脾朗亨嬰蘋誓佑池蛆監(jiān)省茁徑爵北讕韶刑虛嶄函腑悲湖竅壞曳嗽保常箭酌恿渭騰享唉姥像匠幟輝硬屢怨陵瑣蘸額橫例糊掏胳斜偉唆纏聳免用刻二穿彈近絨宵淳亞宗奇暮疇癬清秸膝慶袖精訴殃皮椽心權(quán)譚陷掙鑰韓期喪