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