




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第八章 設(shè)備管理 引言引言 一、設(shè)備種類一、設(shè)備種類 (一)按設(shè)備的使用特性分:(一)按設(shè)備的使用特性分: 1、存儲(chǔ)設(shè)備:、存儲(chǔ)設(shè)備:.容量大容量大 .速度比內(nèi)存慢速度比內(nèi)存慢 .信息永久存貯信息永久存貯 .以塊為單位進(jìn)行存貯以塊為單位進(jìn)行存貯 .塊的分配可以是連續(xù),也可以塊的分配可以是連續(xù),也可以 是隨機(jī)的是隨機(jī)的 2、輸入輸出設(shè)備:用于計(jì)算機(jī)與外設(shè)間的數(shù)據(jù)交換。、輸入輸出設(shè)備:用于計(jì)算機(jī)與外設(shè)間的數(shù)據(jù)交換。 A、輸入設(shè)備:用于、輸入設(shè)備:用于. ,如,如 B、輸出設(shè)備:用于、輸出設(shè)備:用于.。 C、終端設(shè)備、終端設(shè)備 D、脫機(jī)設(shè)備、脫機(jī)設(shè)備 (二)按設(shè)備的從屬關(guān)系分為:(二)按設(shè)備的從屬關(guān)
2、系分為: 1、系統(tǒng)設(shè)備:即各種標(biāo)準(zhǔn)設(shè)備,指在操作系統(tǒng)生成、系統(tǒng)設(shè)備:即各種標(biāo)準(zhǔn)設(shè)備,指在操作系統(tǒng)生成 時(shí)就已配置好的設(shè)備。時(shí)就已配置好的設(shè)備。 2、用戶設(shè)備:由用戶自己安裝配置后由、用戶設(shè)備:由用戶自己安裝配置后由OS統(tǒng)一管理統(tǒng)一管理 的設(shè)備。的設(shè)備。 (三)按信息的組織方式分:(三)按信息的組織方式分: 1、字符設(shè)備、字符設(shè)備 2、塊設(shè)備、塊設(shè)備(四)按設(shè)備的工作性質(zhì)分:獨(dú)占型設(shè)備、共享型設(shè)備(四)按設(shè)備的工作性質(zhì)分:獨(dú)占型設(shè)備、共享型設(shè)備二、設(shè)備管理的功能與任務(wù)二、設(shè)備管理的功能與任務(wù) (一)設(shè)備管理應(yīng)具有的功能(一)設(shè)備管理應(yīng)具有的功能 1、提供與進(jìn)程管理系統(tǒng)的接口,當(dāng)進(jìn)程要求設(shè)備資、提
3、供與進(jìn)程管理系統(tǒng)的接口,當(dāng)進(jìn)程要求設(shè)備資 源時(shí),該接口將進(jìn)程要求轉(zhuǎn)達(dá)給設(shè)備管理程序。源時(shí),該接口將進(jìn)程要求轉(zhuǎn)達(dá)給設(shè)備管理程序。 2、進(jìn)行設(shè)備分配、進(jìn)行設(shè)備分配 3、實(shí)現(xiàn)設(shè)備與設(shè)備、設(shè)備與、實(shí)現(xiàn)設(shè)備與設(shè)備、設(shè)備與CPU等之間的并行操作。等之間的并行操作。 (二)設(shè)備管理的主要任務(wù):(二)設(shè)備管理的主要任務(wù): 1、選擇和分配輸入輸出設(shè)備以便進(jìn)行數(shù)據(jù)傳輸操作、選擇和分配輸入輸出設(shè)備以便進(jìn)行數(shù)據(jù)傳輸操作 2、控制輸入輸出設(shè)備和、控制輸入輸出設(shè)備和CPU(或內(nèi)存)之間交換數(shù)(或內(nèi)存)之間交換數(shù) 據(jù)。據(jù)。 3、為用戶提供一個(gè)友好的透明接口,或用戶和設(shè)備、為用戶提供一個(gè)友好的透明接口,或用戶和設(shè)備 特性分開(kāi)
4、,使用戶在編制應(yīng)用程序時(shí)不必涉及具特性分開(kāi),使用戶在編制應(yīng)用程序時(shí)不必涉及具 體設(shè)備,系統(tǒng)按用戶要求控制設(shè)備工作。體設(shè)備,系統(tǒng)按用戶要求控制設(shè)備工作。 8.2 數(shù)據(jù)傳送控制方式數(shù)據(jù)傳送控制方式 選擇和衡量控制方式的原則:選擇和衡量控制方式的原則: .數(shù)據(jù)傳送速度足夠高,能滿足用戶的需要但又不丟數(shù)據(jù)傳送速度足夠高,能滿足用戶的需要但又不丟 失數(shù)據(jù)。失數(shù)據(jù)。 .系統(tǒng)開(kāi)銷小,所需的處理控制程序少系統(tǒng)開(kāi)銷小,所需的處理控制程序少 .能充分發(fā)揮硬件資源的能力,使得能充分發(fā)揮硬件資源的能力,使得T/O設(shè)備盡量忙,設(shè)備盡量忙, 而而CPU等待時(shí)間少。等待時(shí)間少。 外圍設(shè)備與內(nèi)存之間的常用數(shù)據(jù)傳送方式:外圍設(shè)
5、備與內(nèi)存之間的常用數(shù)據(jù)傳送方式: .程序直接控制程序直接控制 .中斷控制方式中斷控制方式 .DMA方式方式 .通道方式通道方式一、程序直接控制方式一、程序直接控制方式 指完全由程序來(lái)控制主機(jī)與外設(shè)之間的信息傳指完全由程序來(lái)控制主機(jī)與外設(shè)之間的信息傳 送,方法是用戶在程序中安排一段送,方法是用戶在程序中安排一段I/O指令和其它指指令和其它指 令組成令組成 的程序段,直接控制外設(shè)的工作。缺點(diǎn)是:的程序段,直接控制外設(shè)的工作。缺點(diǎn)是: 何時(shí)進(jìn)行傳送系統(tǒng)無(wú)法預(yù)先知道。何時(shí)進(jìn)行傳送系統(tǒng)無(wú)法預(yù)先知道。 (一)無(wú)條件傳送:不需查詢外設(shè)狀態(tài),而是強(qiáng)迫執(zhí)(一)無(wú)條件傳送:不需查詢外設(shè)狀態(tài),而是強(qiáng)迫執(zhí) 行行I/O
6、指令。為使傳送可靠,編程人員需了解外設(shè)指令。為使傳送可靠,編程人員需了解外設(shè)的的 動(dòng)態(tài)使用情況。動(dòng)態(tài)使用情況。 缺點(diǎn):增加編程人員負(fù)擔(dān)和數(shù)據(jù)易丟失缺點(diǎn):增加編程人員負(fù)擔(dān)和數(shù)據(jù)易丟失 (二)條件傳送:又稱狀態(tài)驅(qū)動(dòng)方式、查詢方式、應(yīng)答(二)條件傳送:又稱狀態(tài)驅(qū)動(dòng)方式、查詢方式、應(yīng)答 方式。在數(shù)據(jù)傳送之前,事先要了解外設(shè)的狀態(tài),方式。在數(shù)據(jù)傳送之前,事先要了解外設(shè)的狀態(tài), 只有了解的結(jié)果滿足條件時(shí),才能執(zhí)行本次傳送,只有了解的結(jié)果滿足條件時(shí),才能執(zhí)行本次傳送, 否則,程序只能踏步等待或轉(zhuǎn)入其它程序。否則,程序只能踏步等待或轉(zhuǎn)入其它程序。 1、具有跳步測(cè)試外設(shè)狀態(tài)指令、具有跳步測(cè)試外設(shè)狀態(tài)指令 2、具
7、有表征外設(shè)工作狀態(tài)的觸發(fā)器、具有表征外設(shè)工作狀態(tài)的觸發(fā)器 (三)程序直接控制方式缺點(diǎn):(三)程序直接控制方式缺點(diǎn): 1、主機(jī)與外設(shè)只能串行工作,、主機(jī)與外設(shè)只能串行工作,CPU利用率低。利用率低。 2、各外設(shè)只能串行工作,即主機(jī)在一個(gè)時(shí)間段內(nèi)只、各外設(shè)只能串行工作,即主機(jī)在一個(gè)時(shí)間段內(nèi)只 能與一臺(tái)外設(shè)交換數(shù)據(jù),外設(shè)利用率低。能與一臺(tái)外設(shè)交換數(shù)據(jù),外設(shè)利用率低。 3、 不能發(fā)現(xiàn)和處理事先無(wú)法估計(jì)的錯(cuò)誤與異常。不能發(fā)現(xiàn)和處理事先無(wú)法估計(jì)的錯(cuò)誤與異常。 (四)優(yōu)點(diǎn)與應(yīng)用(四)優(yōu)點(diǎn)與應(yīng)用 硬件簡(jiǎn)單,程序簡(jiǎn)單,功能有限,用戶多路選硬件簡(jiǎn)單,程序簡(jiǎn)單,功能有限,用戶多路選 擇開(kāi)關(guān)送顯示,如發(fā)光二極管,七段
8、數(shù)碼顯示管等擇開(kāi)關(guān)送顯示,如發(fā)光二極管,七段數(shù)碼顯示管等 二、程序中斷方式:二、程序中斷方式: 方法:在程序中安排在某一時(shí)刻啟動(dòng)外部設(shè)備,然后方法:在程序中安排在某一時(shí)刻啟動(dòng)外部設(shè)備,然后 機(jī)器繼續(xù)執(zhí)行原程序,當(dāng)外設(shè)完成數(shù)據(jù)傳送的準(zhǔn)機(jī)器繼續(xù)執(zhí)行原程序,當(dāng)外設(shè)完成數(shù)據(jù)傳送的準(zhǔn) 備后,便向備后,便向CPU發(fā)中斷請(qǐng)求信息,發(fā)中斷請(qǐng)求信息,CPU接到請(qǐng)求接到請(qǐng)求 信息后若可以停止正在運(yùn)行的程序,則轉(zhuǎn)去執(zhí)行信息后若可以停止正在運(yùn)行的程序,則轉(zhuǎn)去執(zhí)行 傳送指令完成主機(jī)與外設(shè)務(wù)備的數(shù)據(jù)交換,交換傳送指令完成主機(jī)與外設(shè)務(wù)備的數(shù)據(jù)交換,交換 完畢后返回原程序繼續(xù)執(zhí)行。完畢后返回原程序繼續(xù)執(zhí)行。 缺點(diǎn):缺點(diǎn): 1
9、、外設(shè)工作期間、外設(shè)工作期間CPU可以繼續(xù)工作可以繼續(xù)工作 2、實(shí)時(shí)性強(qiáng)、實(shí)時(shí)性強(qiáng) 3、CPU存在額外時(shí)間開(kāi)銷(保護(hù)現(xiàn)場(chǎng)和斷點(diǎn)狀態(tài))存在額外時(shí)間開(kāi)銷(保護(hù)現(xiàn)場(chǎng)和斷點(diǎn)狀態(tài)) 三、直接內(nèi)存存取方式三、直接內(nèi)存存取方式DMA (一一)中斷方式的應(yīng)用、缺點(diǎn)中斷方式的應(yīng)用、缺點(diǎn) 1、中斷方式實(shí)現(xiàn)了主機(jī)與外設(shè)之間一定程度的并行、中斷方式實(shí)現(xiàn)了主機(jī)與外設(shè)之間一定程度的并行 提高了系統(tǒng)的效率,但是每交換一個(gè)單位數(shù)據(jù),均提高了系統(tǒng)的效率,但是每交換一個(gè)單位數(shù)據(jù),均 要中斷主機(jī)一次,且花費(fèi)相當(dāng)多的指令去做保存斷要中斷主機(jī)一次,且花費(fèi)相當(dāng)多的指令去做保存斷 點(diǎn)、保護(hù)現(xiàn)場(chǎng)和恢復(fù)現(xiàn)場(chǎng)等工作,對(duì)于慢速外設(shè),點(diǎn)、保護(hù)現(xiàn)場(chǎng)和
10、恢復(fù)現(xiàn)場(chǎng)等工作,對(duì)于慢速外設(shè), 單位數(shù)據(jù)之間的時(shí)間間隔一般在毫秒級(jí),因此主機(jī)單位數(shù)據(jù)之間的時(shí)間間隔一般在毫秒級(jí),因此主機(jī) 還有相當(dāng)多的時(shí)間用于執(zhí)行程序,故這種方式對(duì)于還有相當(dāng)多的時(shí)間用于執(zhí)行程序,故這種方式對(duì)于 慢速的外設(shè)是可行的。慢速的外設(shè)是可行的。 2、而磁盤(pán)等高速外設(shè),單位數(shù)據(jù)之間的時(shí)間間隔是、而磁盤(pán)等高速外設(shè),單位數(shù)據(jù)之間的時(shí)間間隔是 微秒級(jí)甚至更短,且數(shù)據(jù)的交換是大量的成批的。微秒級(jí)甚至更短,且數(shù)據(jù)的交換是大量的成批的。 如果還采用中斷方式則可能出現(xiàn)兩種情況:如果還采用中斷方式則可能出現(xiàn)兩種情況:A.若主若主 機(jī)響應(yīng)請(qǐng)求而致力于數(shù)據(jù)傳送,由于單位數(shù)據(jù)之間機(jī)響應(yīng)請(qǐng)求而致力于數(shù)據(jù)傳送,由
11、于單位數(shù)據(jù)之間 的時(shí)間間隔短,甚至無(wú)法使用,故必須讓一批數(shù)據(jù)的時(shí)間間隔短,甚至無(wú)法使用,故必須讓一批數(shù)據(jù) 交換完,這樣一交換數(shù)據(jù)便完全占用主機(jī),因而又交換完,這樣一交換數(shù)據(jù)便完全占用主機(jī),因而又 回到完全串行工作狀態(tài)。回到完全串行工作狀態(tài)。B. 主機(jī)一旦不馬上響應(yīng)主機(jī)一旦不馬上響應(yīng)請(qǐng)請(qǐng) 求,則由于單位數(shù)據(jù)不斷完成交換的準(zhǔn)備,便可能求,則由于單位數(shù)據(jù)不斷完成交換的準(zhǔn)備,便可能 沖掉信息而造成丟失。沖掉信息而造成丟失。 ( (二二) )方法:在外設(shè)與主存之間開(kāi)辟直接的數(shù)據(jù)交換通方法:在外設(shè)與主存之間開(kāi)辟直接的數(shù)據(jù)交換通 路,機(jī)器在正常工作時(shí),路,機(jī)器在正常工作時(shí), 所有的工作周期用于執(zhí)行所有的工作
12、周期用于執(zhí)行 程序,當(dāng)外設(shè)將要輸入或輸出的數(shù)據(jù)準(zhǔn)備好之后,程序,當(dāng)外設(shè)將要輸入或輸出的數(shù)據(jù)準(zhǔn)備好之后, 竊取或挪用一個(gè)工作周期,在這周期內(nèi),外設(shè)與內(nèi)竊取或挪用一個(gè)工作周期,在這周期內(nèi),外設(shè)與內(nèi) 存直接交換數(shù)據(jù),這個(gè)周期過(guò)后,存直接交換數(shù)據(jù),這個(gè)周期過(guò)后,CPU又執(zhí)行原程又執(zhí)行原程 序,因此序,因此DMA方式又稱為周期挪用或周期竊取方式。方式又稱為周期挪用或周期竊取方式。 (三三)DMA方式功能與特點(diǎn):方式功能與特點(diǎn): 1、由于外設(shè)與主機(jī)直接相連,因此主存及其地址寄、由于外設(shè)與主機(jī)直接相連,因此主存及其地址寄 存器、數(shù)據(jù)緩沖寄存器,不但可被存器、數(shù)據(jù)緩沖寄存器,不但可被CPU訪問(wèn),也可訪問(wèn),也可
13、 被外設(shè)訪問(wèn);被外設(shè)訪問(wèn); 2、由于靠硬件,而不必借助中斷服務(wù)程序交換數(shù)據(jù),、由于靠硬件,而不必借助中斷服務(wù)程序交換數(shù)據(jù), 因而無(wú)須占用因而無(wú)須占用CPU的寄存器及程序計(jì)數(shù)器,這樣省的寄存器及程序計(jì)數(shù)器,這樣省 去了保存斷點(diǎn)、保護(hù)現(xiàn)場(chǎng),判斷中斷條件等大量操去了保存斷點(diǎn)、保護(hù)現(xiàn)場(chǎng),判斷中斷條件等大量操 作,提高了效率。作,提高了效率。 3、用、用DMA方式交換一批數(shù)據(jù)的開(kāi)始前和結(jié)束后仍要方式交換一批數(shù)據(jù)的開(kāi)始前和結(jié)束后仍要 通過(guò)程序中斷方式進(jìn)行前處理和后處理,如開(kāi)始前,通過(guò)程序中斷方式進(jìn)行前處理和后處理,如開(kāi)始前, DMA所需的控制信息、狀態(tài)信息,如主存緩沖區(qū)首所需的控制信息、狀態(tài)信息,如主存緩
14、沖區(qū)首 址、數(shù)據(jù)塊的長(zhǎng)度、數(shù)據(jù)傳送的方向及方式、以及外址、數(shù)據(jù)塊的長(zhǎng)度、數(shù)據(jù)傳送的方向及方式、以及外 設(shè)和接口的有關(guān)狀態(tài)等,或由設(shè)和接口的有關(guān)狀態(tài)等,或由CPU用程序送入用程序送入DMA 的有關(guān)控制寄存器,或由程序取回的有關(guān)控制寄存器,或由程序取回CPU進(jìn)行分析。進(jìn)行分析。 4、DMA靠硬件完成數(shù)據(jù)交換,主要體現(xiàn)在:主存活靠硬件完成數(shù)據(jù)交換,主要體現(xiàn)在:主存活 動(dòng)地址的確定,數(shù)據(jù)塊的長(zhǎng)度的計(jì)數(shù)控制,主存與動(dòng)地址的確定,數(shù)據(jù)塊的長(zhǎng)度的計(jì)數(shù)控制,主存與 外設(shè)間的數(shù)據(jù)傳送等均由外設(shè)間的數(shù)據(jù)傳送等均由DMA接口的邏輯電路完成。接口的邏輯電路完成。 5 5、與中斷方式比較,二者既有區(qū)別又互相配合。、與中
15、斷方式比較,二者既有區(qū)別又互相配合。一是一是 DMA僅僅局限于數(shù)據(jù)塊的輸局限于數(shù)據(jù)塊的輸入輸出操作,而程序中斷入輸出操作,而程序中斷 除用于輸入輸出外,還可用于故障診斷等任務(wù);除用于輸入輸出外,還可用于故障診斷等任務(wù);二二 是是中斷響應(yīng)一般只是發(fā)生在一條指令周期結(jié)束而另中斷響應(yīng)一般只是發(fā)生在一條指令周期結(jié)束而另 一條指令尚未開(kāi)始的時(shí)刻,而一條指令尚未開(kāi)始的時(shí)刻,而DMADMA則可在兩個(gè)存儲(chǔ)周則可在兩個(gè)存儲(chǔ)周 期之間的任意時(shí)刻響應(yīng);期之間的任意時(shí)刻響應(yīng);三是三是DMADMA過(guò)程中,若遇出錯(cuò)信號(hào)過(guò)程中,若遇出錯(cuò)信號(hào) 或收到新的啟動(dòng)輸入輸出指令,則仍可中斷現(xiàn)行程或收到新的啟動(dòng)輸入輸出指令,則仍可中斷
16、現(xiàn)行程 序,進(jìn)入中斷服務(wù)程序,而程序中斷除對(duì)序,進(jìn)入中斷服務(wù)程序,而程序中斷除對(duì)DMADMA提供前提供前 處理、后處理外,還可通過(guò)測(cè)試處理、后處理外,還可通過(guò)測(cè)試DMADMA的狀態(tài)或中斷條的狀態(tài)或中斷條 件,以實(shí)施對(duì)件,以實(shí)施對(duì)DMADMA及有關(guān)設(shè)備控制器的監(jiān)控。及有關(guān)設(shè)備控制器的監(jiān)控。 四四、通道控制方式:、通道控制方式: (一一)概念:通道是一個(gè)獨(dú)立于概念:通道是一個(gè)獨(dú)立于CPUCPU的專管輸入輸出控制的專管輸入輸出控制 的處理機(jī),它控制設(shè)備與內(nèi)存直接進(jìn)行數(shù)據(jù)交換,的處理機(jī),它控制設(shè)備與內(nèi)存直接進(jìn)行數(shù)據(jù)交換, 它有自己的通道指令,這些通道指令受它有自己的通道指令,這些通道指令受CPUCPU
17、啟動(dòng),啟動(dòng), 并在操作結(jié)束時(shí)向并在操作結(jié)束時(shí)向CPUCPU發(fā)中斷信號(hào)。發(fā)中斷信號(hào)。 (二二)引入通道的原因引入通道的原因 進(jìn)行數(shù)據(jù)交換時(shí)進(jìn)行數(shù)據(jù)交換時(shí) 1.用程序直接控制方式,用程序直接控制方式,CPU與外設(shè)利用率低,且數(shù)與外設(shè)利用率低,且數(shù) 據(jù)傳送正誤無(wú)法判斷。據(jù)傳送正誤無(wú)法判斷。 2.采用中斷方式,傳送的總數(shù)據(jù)量小,且采用中斷方式,傳送的總數(shù)據(jù)量小,且CPU存在額存在額 外時(shí)間開(kāi)銷。外時(shí)間開(kāi)銷。 3.采用采用DMA方式,方式,CPU在數(shù)據(jù)傳送前后均要參與,另在數(shù)據(jù)傳送前后均要參與,另 外一類或一臺(tái)外設(shè)需一套外一類或一臺(tái)外設(shè)需一套DMA硬件裝置,而大中型硬件裝置,而大中型 計(jì)算機(jī)外設(shè)數(shù)量多,
18、采用計(jì)算機(jī)外設(shè)數(shù)量多,采用DMA方式既不經(jīng)濟(jì),而且方式既不經(jīng)濟(jì),而且 多多DMA訪問(wèn)內(nèi)存存在沖突。訪問(wèn)內(nèi)存存在沖突。 為此,引入通道。為此,引入通道。 (三三)方法:通過(guò)通道控制多臺(tái)外設(shè)和內(nèi)存直接交換信息,方法:通過(guò)通道控制多臺(tái)外設(shè)和內(nèi)存直接交換信息, 當(dāng)執(zhí)行程序需要與某外設(shè)交換數(shù)據(jù)時(shí),當(dāng)執(zhí)行程序需要與某外設(shè)交換數(shù)據(jù)時(shí),CPU只要執(zhí)只要執(zhí) 行啟動(dòng)某一通道的指令,然后繼續(xù)執(zhí)行原程序。而行啟動(dòng)某一通道的指令,然后繼續(xù)執(zhí)行原程序。而 與外設(shè)交換數(shù)據(jù)的實(shí)際操作,則在通道的控制下,與外設(shè)交換數(shù)據(jù)的實(shí)際操作,則在通道的控制下, 通過(guò)執(zhí)行一串通道指令來(lái)完成,這樣通過(guò)執(zhí)行一串通道指令來(lái)完成,這樣CPU與通道可
19、與通道可 以并行,且與多臺(tái)外設(shè)并行。以并行,且與多臺(tái)外設(shè)并行。 (四四) 通道功能:通道功能:CPU功能和功能和DMAC功能功能 具體如下:具體如下: 1.根據(jù)根據(jù)CPU的要求選擇某一指定外設(shè)與系統(tǒng)相連,并的要求選擇某一指定外設(shè)與系統(tǒng)相連,并 向該外設(shè)發(fā)出操作命令。向該外設(shè)發(fā)出操作命令。 2.指出外設(shè)指出外設(shè)R/W信息的所在位置,同時(shí)指出與外設(shè)交信息的所在位置,同時(shí)指出與外設(shè)交 換信息的主存緩沖區(qū)地址。換信息的主存緩沖區(qū)地址。 3.控制外設(shè)與主存之間的數(shù)據(jù)交換,不但提供數(shù)據(jù)緩控制外設(shè)與主存之間的數(shù)據(jù)交換,不但提供數(shù)據(jù)緩 沖,而且要完成交換信息的分拆與裝配。沖,而且要完成交換信息的分拆與裝配。
20、4.指定數(shù)據(jù)傳送結(jié)束時(shí)的操作內(nèi)容,并檢查外設(shè)的良指定數(shù)據(jù)傳送結(jié)束時(shí)的操作內(nèi)容,并檢查外設(shè)的良 好或故障狀態(tài)。好或故障狀態(tài)。 (五五)通道與通道與DMA的區(qū)別的區(qū)別 1.DMA是借助硬件完成數(shù)據(jù)交換,而通道則是它本身是借助硬件完成數(shù)據(jù)交換,而通道則是它本身 通過(guò)一組通道命令通過(guò)一組通道命令通道程序來(lái)完成數(shù)據(jù)交換。通道程序來(lái)完成數(shù)據(jù)交換。 2.一臺(tái)外設(shè)有一個(gè)一臺(tái)外設(shè)有一個(gè)DMA控制器,若一個(gè)控制器,若一個(gè)DMA控制器接控制器接 多臺(tái)同類設(shè)備,則它們只能串行工作,而一個(gè)通道多臺(tái)同類設(shè)備,則它們只能串行工作,而一個(gè)通道 可接多臺(tái)不同類型設(shè)備,這眾多外設(shè)均可在通道控可接多臺(tái)不同類型設(shè)備,這眾多外設(shè)均可在
21、通道控 制下同時(shí)工作。制下同時(shí)工作。 3.采用采用DMA傳送的諸外設(shè)均要由傳送的諸外設(shè)均要由CPU管理控制,由管理控制,由 CPU進(jìn)行初始化,通道則代替進(jìn)行初始化,通道則代替CPU管理控制外設(shè),管理控制外設(shè), CPU僅僅通過(guò)僅僅通過(guò)I/O指令啟動(dòng)通道,通道本身進(jìn)行外設(shè)指令啟動(dòng)通道,通道本身進(jìn)行外設(shè) 的初始化工作。的初始化工作。 (六六)通道控制方式的數(shù)據(jù)輸入處理過(guò)程:通道控制方式的數(shù)據(jù)輸入處理過(guò)程: 1.當(dāng)進(jìn)程要求設(shè)備輸入數(shù)據(jù)時(shí),當(dāng)進(jìn)程要求設(shè)備輸入數(shù)據(jù)時(shí),CPU發(fā)發(fā)START指令指指令指 明明I/O操作,給出設(shè)備號(hào)、對(duì)應(yīng)通道。操作,給出設(shè)備號(hào)、對(duì)應(yīng)通道。 2.對(duì)應(yīng)通道接收到對(duì)應(yīng)通道接收到CPU
22、發(fā)來(lái)的啟動(dòng)指令發(fā)來(lái)的啟動(dòng)指令START之后,之后, 把存放在內(nèi)存中的通道指令程序讀出,設(shè)置對(duì)應(yīng)設(shè)把存放在內(nèi)存中的通道指令程序讀出,設(shè)置對(duì)應(yīng)設(shè) 備的備的I/O控制器中的控制狀態(tài)寄存器等??刂破髦械目刂茽顟B(tài)寄存器等。 3.設(shè)備通過(guò)通道指令要求,把數(shù)據(jù)送往內(nèi)存中指定區(qū)設(shè)備通過(guò)通道指令要求,把數(shù)據(jù)送往內(nèi)存中指定區(qū) 域。域。 4.若數(shù)據(jù)傳送結(jié)束,若數(shù)據(jù)傳送結(jié)束,I/O控制器通過(guò)中斷請(qǐng)求線發(fā)中斷控制器通過(guò)中斷請(qǐng)求線發(fā)中斷 信號(hào)請(qǐng)求信號(hào)請(qǐng)求CPU做中斷處理。做中斷處理。 8.3 中斷技術(shù)中斷技術(shù)一、中斷的基本概念一、中斷的基本概念 1、定義:指計(jì)算機(jī)在執(zhí)行期間,系統(tǒng)內(nèi)發(fā)生任何非尋、定義:指計(jì)算機(jī)在執(zhí)行期間,
23、系統(tǒng)內(nèi)發(fā)生任何非尋 常的或非預(yù)期的急需處理事件,使得常的或非預(yù)期的急需處理事件,使得CPU暫時(shí)中斷暫時(shí)中斷 當(dāng)前正在執(zhí)行的程序而轉(zhuǎn)去執(zhí)行相應(yīng)的事件處理程當(dāng)前正在執(zhí)行的程序而轉(zhuǎn)去執(zhí)行相應(yīng)的事件處理程 序,待處理完畢后又返回原來(lái)中斷處繼續(xù)執(zhí)行或調(diào)序,待處理完畢后又返回原來(lái)中斷處繼續(xù)執(zhí)行或調(diào) 度新的進(jìn)程執(zhí)行的過(guò)程。度新的進(jìn)程執(zhí)行的過(guò)程。 2、常見(jiàn)術(shù)語(yǔ):、常見(jiàn)術(shù)語(yǔ): 中斷請(qǐng)求:中斷源向中斷請(qǐng)求:中斷源向CPU發(fā)生的請(qǐng)求中斷處理信號(hào)。發(fā)生的請(qǐng)求中斷處理信號(hào)。 中斷響應(yīng):中斷響應(yīng):CPU收到中斷請(qǐng)求之后轉(zhuǎn)相應(yīng)的事件處理收到中斷請(qǐng)求之后轉(zhuǎn)相應(yīng)的事件處理 程序。程序。 禁止中斷:盡管產(chǎn)生了中斷源和發(fā)生了中斷請(qǐng)
24、求,但禁止中斷:盡管產(chǎn)生了中斷源和發(fā)生了中斷請(qǐng)求,但 CPU內(nèi)部的處理機(jī)狀態(tài)字內(nèi)部的處理機(jī)狀態(tài)字PSW的中斷允許位已的中斷允許位已 被清除,從而不允許被清除,從而不允許CPU響應(yīng)中斷,也叫關(guān)中斷。響應(yīng)中斷,也叫關(guān)中斷。 開(kāi)中斷:開(kāi)中斷:PSW的中斷允許位的重新復(fù)位。的中斷允許位的重新復(fù)位。 中斷屏蔽:是指在中斷請(qǐng)求產(chǎn)生之后,系統(tǒng)用軟件方式中斷屏蔽:是指在中斷請(qǐng)求產(chǎn)生之后,系統(tǒng)用軟件方式 有選擇地封鎖部分中斷而允許其余部分的中斷仍能有選擇地封鎖部分中斷而允許其余部分的中斷仍能 得到響應(yīng)。得到響應(yīng)。二、中斷的分類與優(yōu)先級(jí)二、中斷的分類與優(yōu)先級(jí) 1、根據(jù)中斷源產(chǎn)生的條件、根據(jù)中斷源產(chǎn)生的條件 (1)
25、外中斷:指來(lái)自處理機(jī)和內(nèi)存外部的中斷,包括)外中斷:指來(lái)自處理機(jī)和內(nèi)存外部的中斷,包括 I/O設(shè)備發(fā)出的設(shè)備發(fā)出的I/O中斷,外部信號(hào)中斷,各種定時(shí)中斷,外部信號(hào)中斷,各種定時(shí) 器引起的時(shí)鐘中斷及調(diào)試程序中設(shè)置的斷點(diǎn)等引起器引起的時(shí)鐘中斷及調(diào)試程序中設(shè)置的斷點(diǎn)等引起 的調(diào)度中斷。的調(diào)度中斷。 (2)內(nèi)中斷:主要指在處理機(jī)和內(nèi)存內(nèi)部產(chǎn)生的中斷。)內(nèi)中斷:主要指在處理機(jī)和內(nèi)存內(nèi)部產(chǎn)生的中斷。 一般稱為陷阱。包括程序運(yùn)算引起的錯(cuò)誤。一般稱為陷阱。包括程序運(yùn)算引起的錯(cuò)誤。(P214) 2、優(yōu)先級(jí):為了按中斷中斷源的輕重緩急處理相應(yīng)中斷、優(yōu)先級(jí):為了按中斷中斷源的輕重緩急處理相應(yīng)中斷 ,操作系統(tǒng)對(duì)不同的
26、中斷賦予不同的優(yōu)先級(jí)。例如,操作系統(tǒng)對(duì)不同的中斷賦予不同的優(yōu)先級(jí)。例如, 在在UNIX中,外中斷和陷阱的優(yōu)先級(jí)共分為中,外中斷和陷阱的優(yōu)先級(jí)共分為8級(jí),為了級(jí),為了 禁止和屏蔽中斷,禁止和屏蔽中斷,CPU的處理機(jī)狀態(tài)字的處理機(jī)狀態(tài)字PSW也設(shè)置也設(shè)置 了相應(yīng)的優(yōu)先級(jí)。如果中斷源的優(yōu)先級(jí)高于了相應(yīng)的優(yōu)先級(jí)。如果中斷源的優(yōu)先級(jí)高于PSW的的 優(yōu)先級(jí),則優(yōu)先級(jí),則CPU相應(yīng)該中斷源的中斷請(qǐng)求,反之,相應(yīng)該中斷源的中斷請(qǐng)求,反之, CPU屏蔽該中斷源的中斷請(qǐng)求。屏蔽該中斷源的中斷請(qǐng)求。 3、中斷和陷阱的區(qū)別、中斷和陷阱的區(qū)別 (P214) (1) (2) (3)三、軟中斷三、軟中斷 是通信進(jìn)程之間用來(lái)
27、模擬硬中斷的一種信號(hào)通信是通信進(jìn)程之間用來(lái)模擬硬中斷的一種信號(hào)通信 方式。軟中斷與硬中斷相同的地方是:其中斷源發(fā)中方式。軟中斷與硬中斷相同的地方是:其中斷源發(fā)中 斷請(qǐng)求或軟中斷信號(hào)后,斷請(qǐng)求或軟中斷信號(hào)后,cpu或接收進(jìn)程在適當(dāng)?shù)臅r(shí)或接收進(jìn)程在適當(dāng)?shù)臅r(shí) 機(jī)自動(dòng)進(jìn)行中斷處理或完成軟中斷信號(hào)所對(duì)應(yīng)的功能機(jī)自動(dòng)進(jìn)行中斷處理或完成軟中斷信號(hào)所對(duì)應(yīng)的功能 。軟中斷與硬中斷不同的地方是:后者要通過(guò)硬件產(chǎn)。軟中斷與硬中斷不同的地方是:后者要通過(guò)硬件產(chǎn) 生相應(yīng)的中斷請(qǐng)求。生相應(yīng)的中斷請(qǐng)求。 8.4 緩沖技術(shù)緩沖技術(shù) 一、緩沖引入一、緩沖引入 1、計(jì)算機(jī)系統(tǒng)中設(shè)備的速度不匹配,有時(shí)差別很大,這、計(jì)算機(jī)系統(tǒng)中設(shè)備
28、的速度不匹配,有時(shí)差別很大,這 限制了和處理機(jī)連接的設(shè)備的外設(shè)臺(tái)數(shù),且在中斷方限制了和處理機(jī)連接的設(shè)備的外設(shè)臺(tái)數(shù),且在中斷方 式時(shí)容易造成數(shù)據(jù)丟失,例如:打印進(jìn)程與計(jì)算進(jìn)程式時(shí)容易造成數(shù)據(jù)丟失,例如:打印進(jìn)程與計(jì)算進(jìn)程 間的矛盾。間的矛盾。 2、從減少中斷次數(shù)來(lái)看,也有引入緩沖區(qū)的必要性,引、從減少中斷次數(shù)來(lái)看,也有引入緩沖區(qū)的必要性,引 入緩沖區(qū)后,可大大降低中斷次數(shù),減少處理機(jī)的中入緩沖區(qū)后,可大大降低中斷次數(shù),減少處理機(jī)的中 斷處理時(shí)間。斷處理時(shí)間。 3、引入緩沖器來(lái)存放數(shù)據(jù),也可解決、引入緩沖器來(lái)存放數(shù)據(jù),也可解決DMA或通道方式或通道方式 時(shí)的瓶頸問(wèn)題,因?yàn)槿绻粍澐謱S玫膬?nèi)存區(qū)域或
29、專時(shí)的瓶頸問(wèn)題,因?yàn)槿绻粍澐謱S玫膬?nèi)存區(qū)域或?qū)?用緩沖器來(lái)存放數(shù)據(jù)的話,含因要求數(shù)據(jù)的進(jìn)程所擁用緩沖器來(lái)存放數(shù)據(jù)的話,含因要求數(shù)據(jù)的進(jìn)程所擁 有的內(nèi)存區(qū)不夠或存放數(shù)據(jù)的內(nèi)存始址計(jì)算困難等原有的內(nèi)存區(qū)不夠或存放數(shù)據(jù)的內(nèi)存始址計(jì)算困難等原 因造成某進(jìn)程長(zhǎng)期占有通道或因造成某進(jìn)程長(zhǎng)期占有通道或DMA控制器及設(shè)備??刂破骷霸O(shè)備。 4、緩沖的實(shí)現(xiàn)方法:、緩沖的實(shí)現(xiàn)方法: (1)采用專用硬件緩沖器,例如)采用專用硬件緩沖器,例如I/O控制器中的數(shù)據(jù)緩控制器中的數(shù)據(jù)緩 沖寄存器。沖寄存器。 (2)在內(nèi)存中劃出一個(gè)具有幾個(gè)單元的專用緩沖區(qū),以)在內(nèi)存中劃出一個(gè)具有幾個(gè)單元的專用緩沖區(qū),以 便存放輸入輸出數(shù)據(jù)
30、,此法又叫軟件緩沖。便存放輸入輸出數(shù)據(jù),此法又叫軟件緩沖。二、緩沖的種類:二、緩沖的種類: 根據(jù)系統(tǒng)設(shè)置的緩沖器個(gè)數(shù):?jiǎn)尉彌_、雙緩沖、根據(jù)系統(tǒng)設(shè)置的緩沖器個(gè)數(shù):?jiǎn)尉彌_、雙緩沖、 緩沖池。緩沖池。 1、單緩沖:、單緩沖:(1)方法:在設(shè)備與處理機(jī)間設(shè)置一個(gè)緩沖器,設(shè)備和)方法:在設(shè)備與處理機(jī)間設(shè)置一個(gè)緩沖器,設(shè)備和 處理機(jī)交換數(shù)據(jù)時(shí),先把被交換的數(shù)據(jù)寫(xiě)入處理機(jī)交換數(shù)據(jù)時(shí),先把被交換的數(shù)據(jù)寫(xiě)入BUFFER ,然后需要數(shù)據(jù)的設(shè)備或處理機(jī)從,然后需要數(shù)據(jù)的設(shè)備或處理機(jī)從BUFFER取趟數(shù)據(jù)取趟數(shù)據(jù) (2)特點(diǎn):)特點(diǎn):BUFFER屬于臨界資源,即不允許多個(gè)進(jìn)程屬于臨界資源,即不允許多個(gè)進(jìn)程 同時(shí)對(duì)一個(gè)
31、緩沖器操作,因此設(shè)備與設(shè)備間不能并行同時(shí)對(duì)一個(gè)緩沖器操作,因此設(shè)備與設(shè)備間不能并行 2、雙緩沖:只是一種說(shuō)明設(shè)備和設(shè)備、雙緩沖:只是一種說(shuō)明設(shè)備和設(shè)備、CPU和設(shè)備并行和設(shè)備并行 操作的簡(jiǎn)單模型,并不能用于實(shí)際系統(tǒng)中的并行操作。操作的簡(jiǎn)單模型,并不能用于實(shí)際系統(tǒng)中的并行操作。 3、多緩沖(緩沖池)、多緩沖(緩沖池) 多多BUF:把多個(gè):把多個(gè)BUFFER連接起來(lái)組成兩部分,一部分連接起來(lái)組成兩部分,一部分 專門用于輸入,另一部分專門用于輸出。專門用于輸入,另一部分專門用于輸出。 緩沖池:把多個(gè)緩沖池:把多個(gè)BUFFER連接起來(lái)統(tǒng)一管理,既可用于連接起來(lái)統(tǒng)一管理,既可用于 輸入又可用于輸出。輸入
32、又可用于輸出。三、緩沖池的管理:三、緩沖池的管理: 1、BUFFER BOOL的結(jié)構(gòu):的結(jié)構(gòu):(1)緩沖區(qū)的組成:緩沖首部)緩沖區(qū)的組成:緩沖首部 緩沖體緩沖體 緩沖首部:用于標(biāo)識(shí)緩沖器和用于對(duì)緩沖首部:用于標(biāo)識(shí)緩沖器和用于對(duì)BUFFER的管的管 理,內(nèi)容上包括設(shè)備號(hào)、數(shù)據(jù)塊號(hào)、緩沖器號(hào)理,內(nèi)容上包括設(shè)備號(hào)、數(shù)據(jù)塊號(hào)、緩沖器號(hào), 互斥標(biāo)識(shí)位,連接指針等?;コ鈽?biāo)識(shí)位,連接指針等。 緩沖體:用于存放數(shù)據(jù)。緩沖體:用于存放數(shù)據(jù)。(2)緩沖池的組成)緩沖池的組成 A、系統(tǒng)將各緩沖區(qū)按其使用情況連成三個(gè)隊(duì)列:、系統(tǒng)將各緩沖區(qū)按其使用情況連成三個(gè)隊(duì)列: a、空白緩沖隊(duì)列、空白緩沖隊(duì)列EM,隊(duì)首指針為,隊(duì)首
33、指針為F(em),隊(duì)尾隊(duì)尾L(em) b、輸入緩沖隊(duì)列、輸入緩沖隊(duì)列in,隊(duì)首為隊(duì)首為F(in),隊(duì)尾為隊(duì)尾為L(zhǎng)(in) c、輸出緩沖隊(duì)列、輸出緩沖隊(duì)列out,隊(duì)首為隊(duì)首為L(zhǎng)(out),隊(duì)尾為隊(duì)尾為L(zhǎng)(out) B、工作緩沖區(qū)、工作緩沖區(qū)-用來(lái)進(jìn)行分配、存數(shù)、取數(shù)的緩沖區(qū)用來(lái)進(jìn)行分配、存數(shù)、取數(shù)的緩沖區(qū) 有四種工作緩沖區(qū)。有四種工作緩沖區(qū)。 a、用于收容設(shè)備輸入數(shù)據(jù)的收容輸入緩沖區(qū)、用于收容設(shè)備輸入數(shù)據(jù)的收容輸入緩沖區(qū)HM b、用于提取設(shè)備輸入數(shù)據(jù)的撮輸入緩沖區(qū)、用于提取設(shè)備輸入數(shù)據(jù)的撮輸入緩沖區(qū)SIN c、用于收容、用于收容CPU輸出數(shù)據(jù)的收容輸出緩沖區(qū)輸出數(shù)據(jù)的收容輸出緩沖區(qū)HOUT d、
34、用于撮、用于撮CPU輸出數(shù)據(jù)的進(jìn)取輸出緩沖區(qū)輸出數(shù)據(jù)的進(jìn)取輸出緩沖區(qū)SOUT 2、緩沖池的管理、緩沖池的管理 (1)四種基本操作)四種基本操作(P218) (2)緩沖池的工作過(guò)程)緩沖池的工作過(guò)程3、get_buf和和put_buf描述描述 8.5 設(shè)備分配設(shè)備分配 I/O系統(tǒng)的功能:系統(tǒng)的功能: 1、隱蔽設(shè)備的物理特性:即用戶在使用程序時(shí)不必考、隱蔽設(shè)備的物理特性:即用戶在使用程序時(shí)不必考慮與設(shè)備物理特性存關(guān)的任何慮與設(shè)備物理特性存關(guān)的任何I/O操作,這些工作由較低操作,這些工作由較低層的軟件完成(如設(shè)備驅(qū)動(dòng)程序,層的軟件完成(如設(shè)備驅(qū)動(dòng)程序,I/O中斷服務(wù)程序)中斷服務(wù)程序) 2、提供獨(dú)立
35、于設(shè)備的統(tǒng)一接口,即設(shè)備獨(dú)立性,為達(dá)、提供獨(dú)立于設(shè)備的統(tǒng)一接口,即設(shè)備獨(dú)立性,為達(dá)此目的,此目的,OS為每設(shè)備定義一個(gè)名稱為每設(shè)備定義一個(gè)名稱邏輯名,用戶申邏輯名,用戶申請(qǐng)?jiān)O(shè)備時(shí)只須提供邏輯名即可,請(qǐng)?jiān)O(shè)備時(shí)只須提供邏輯名即可,OS根據(jù)設(shè)備的邏輯名映根據(jù)設(shè)備的邏輯名映射相應(yīng)的驅(qū)動(dòng)程序,啟動(dòng)相應(yīng)設(shè)備。射相應(yīng)的驅(qū)動(dòng)程序,啟動(dòng)相應(yīng)設(shè)備。 3、設(shè)備分配:在多用戶系統(tǒng)中,由于存在用戶進(jìn)程競(jìng)、設(shè)備分配:在多用戶系統(tǒng)中,由于存在用戶進(jìn)程競(jìng)爭(zhēng)有限的資源問(wèn)題,因此爭(zhēng)有限的資源問(wèn)題,因此OS應(yīng)合理分配設(shè)備,對(duì)用戶應(yīng)應(yīng)合理分配設(shè)備,對(duì)用戶應(yīng)公平,對(duì)設(shè)備應(yīng)有最高利用率。公平,對(duì)設(shè)備應(yīng)有最高利用率。 4、出錯(cuò)處理,用戶進(jìn)
36、程在使用設(shè)備的過(guò)程中,如果發(fā)、出錯(cuò)處理,用戶進(jìn)程在使用設(shè)備的過(guò)程中,如果發(fā)生硬件故障、環(huán)境原因引起的故障,導(dǎo)致生硬件故障、環(huán)境原因引起的故障,導(dǎo)致I/O操作失誤,操作失誤,I/O系統(tǒng)應(yīng)能及時(shí)發(fā)現(xiàn)和處理。系統(tǒng)應(yīng)能及時(shí)發(fā)現(xiàn)和處理。一、設(shè)備分配用數(shù)據(jù)結(jié)構(gòu)一、設(shè)備分配用數(shù)據(jù)結(jié)構(gòu) 1、設(shè)備控制表、設(shè)備控制表DCT:反映設(shè)備的特性,設(shè)備和:反映設(shè)備的特性,設(shè)備和I/O控制控制 器的連接情況,包括設(shè)備標(biāo)識(shí),使用狀態(tài)和等待使用該器的連接情況,包括設(shè)備標(biāo)識(shí),使用狀態(tài)和等待使用該 設(shè)備的進(jìn)程隊(duì)列,一個(gè)設(shè)備對(duì)應(yīng)一張?jiān)O(shè)備的進(jìn)程隊(duì)列,一個(gè)設(shè)備對(duì)應(yīng)一張DCT。 它包括以下內(nèi)容它包括以下內(nèi)容 (1)設(shè)備標(biāo)識(shí)符)設(shè)備標(biāo)識(shí)符
37、(2)設(shè)備類型)設(shè)備類型 (3)設(shè)備地址或設(shè)備符號(hào)名)設(shè)備地址或設(shè)備符號(hào)名 (4)設(shè)備狀態(tài))設(shè)備狀態(tài) (5)等待隊(duì)列指針)等待隊(duì)列指針 (6)I/O控制器指針控制器指針 2、系統(tǒng)設(shè)備表(、系統(tǒng)設(shè)備表(SDT) 整個(gè)系統(tǒng)一張,它記錄已被連接到系統(tǒng)中的所有整個(gè)系統(tǒng)一張,它記錄已被連接到系統(tǒng)中的所有 物理設(shè)備的情況,并為每個(gè)物理設(shè)備設(shè)一表項(xiàng),內(nèi)容物理設(shè)備的情況,并為每個(gè)物理設(shè)備設(shè)一表項(xiàng),內(nèi)容 包括:包括: (1)DCT指針指針 (2)正在使用設(shè)備的進(jìn)程標(biāo)識(shí))正在使用設(shè)備的進(jìn)程標(biāo)識(shí) (3)設(shè)備類型和標(biāo)識(shí)符)設(shè)備類型和標(biāo)識(shí)符 3、控制器表、控制器表CDCT 每個(gè)每個(gè)I/O控制對(duì)應(yīng)一張控制對(duì)應(yīng)一張CDCT
38、,它反映,它反映I/O控制器控制器 的使用狀態(tài)以及和通道的連接情況等。的使用狀態(tài)以及和通道的連接情況等。 4、通道控制表、通道控制表CHCT 該表只在通道控制方式的系統(tǒng)中存在,也是每個(gè)該表只在通道控制方式的系統(tǒng)中存在,也是每個(gè) 通道一張,通道一張,CHCT包括通道標(biāo)識(shí)符,通道忙包括通道標(biāo)識(shí)符,通道忙/閉標(biāo)識(shí)閉標(biāo)識(shí), 等待獲得通道的進(jìn)程等待隊(duì)列首指針和尾指針。等待獲得通道的進(jìn)程等待隊(duì)列首指針和尾指針。二、設(shè)備分配原則:二、設(shè)備分配原則: 1、設(shè)備分配原則:、設(shè)備分配原則: 總原則:既要充分發(fā)揮設(shè)備的使用效率,盡可能的讓總原則:既要充分發(fā)揮設(shè)備的使用效率,盡可能的讓 設(shè)備忙,但又要避免由于不合理的
39、分配方法造成設(shè)備忙,但又要避免由于不合理的分配方法造成 進(jìn)程死鎖;另外還要做到把用戶程序和具體物理進(jìn)程死鎖;另外還要做到把用戶程序和具體物理 設(shè)備隔離開(kāi)來(lái),即用戶程序面對(duì)的是邏輯設(shè)備,設(shè)備隔離開(kāi)來(lái),即用戶程序面對(duì)的是邏輯設(shè)備, 而分配程序?qū)⒃谙到y(tǒng)把邏輯設(shè)備轉(zhuǎn)換成物理設(shè)備而分配程序?qū)⒃谙到y(tǒng)把邏輯設(shè)備轉(zhuǎn)換成物理設(shè)備 之后,再根據(jù)要求的物理設(shè)備號(hào)進(jìn)行分配。之后,再根據(jù)要求的物理設(shè)備號(hào)進(jìn)行分配。 分配方法:靜態(tài)分配與動(dòng)態(tài)分配分配方法:靜態(tài)分配與動(dòng)態(tài)分配 (1)靜態(tài)分配:是在用戶作業(yè)開(kāi)始運(yùn)行之前,由系統(tǒng))靜態(tài)分配:是在用戶作業(yè)開(kāi)始運(yùn)行之前,由系統(tǒng) 一次分配該作業(yè)所要求的全部設(shè)備、控制器和通道一次分配該作
40、業(yè)所要求的全部設(shè)備、控制器和通道 ,一旦分配后,這些設(shè)備、控制器和通道就一直,一旦分配后,這些設(shè)備、控制器和通道就一直 為該作業(yè)占用,直到該作業(yè)被撤消。這種方式不會(huì)為該作業(yè)占用,直到該作業(yè)被撤消。這種方式不會(huì) 出現(xiàn)死鎖,但設(shè)備利用率低。出現(xiàn)死鎖,但設(shè)備利用率低。 (2)動(dòng)態(tài)分配:在進(jìn)程執(zhí)行過(guò)程中根據(jù)執(zhí)行需要進(jìn)行。)動(dòng)態(tài)分配:在進(jìn)程執(zhí)行過(guò)程中根據(jù)執(zhí)行需要進(jìn)行。 當(dāng)進(jìn)程需要設(shè)備時(shí),通過(guò)系統(tǒng)調(diào)用命令向系統(tǒng)提出當(dāng)進(jìn)程需要設(shè)備時(shí),通過(guò)系統(tǒng)調(diào)用命令向系統(tǒng)提出 設(shè)備請(qǐng)求,由系統(tǒng)按照事先規(guī)定的策略給進(jìn)程分配設(shè)備請(qǐng)求,由系統(tǒng)按照事先規(guī)定的策略給進(jìn)程分配 所需要的設(shè)備、所需要的設(shè)備、I/O控制器和通道,一旦用完之
41、后控制器和通道,一旦用完之后 ,便立即釋入。,便立即釋入。 該法有利于提高利用率,但分配算法使用不該法有利于提高利用率,但分配算法使用不 當(dāng),可能造成死鎖。當(dāng),可能造成死鎖。2、 設(shè)備分配策略:設(shè)備分配策略:(1) 先請(qǐng)求先分配:當(dāng)有多個(gè)進(jìn)程對(duì)某一設(shè)備提出先請(qǐng)求先分配:當(dāng)有多個(gè)進(jìn)程對(duì)某一設(shè)備提出I/O請(qǐng)求時(shí),或是在同一設(shè)備請(qǐng)求時(shí),或是在同一設(shè)備 上進(jìn)行多次上進(jìn)行多次I/O操作時(shí),系統(tǒng)按操作時(shí),系統(tǒng)按I/O請(qǐng)求的先后,將進(jìn)程發(fā)出的請(qǐng)求命令排成隊(duì)列,其隊(duì)請(qǐng)求的先后,將進(jìn)程發(fā)出的請(qǐng)求命令排成隊(duì)列,其隊(duì)首指向被請(qǐng)求的設(shè)備。當(dāng)設(shè)備空閑時(shí),系統(tǒng)從該設(shè)備的請(qǐng)首指向被請(qǐng)求的設(shè)備。當(dāng)設(shè)備空閑時(shí),系統(tǒng)從該設(shè)備的請(qǐng)
42、求隊(duì)列的隊(duì)道取下一個(gè)求隊(duì)列的隊(duì)道取下一個(gè)I/O請(qǐng)求消息,將設(shè)備分配給發(fā)出請(qǐng)求消息,將設(shè)備分配給發(fā)出這個(gè)請(qǐng)求消息的進(jìn)程。這個(gè)請(qǐng)求消息的進(jìn)程。(2) 優(yōu)先級(jí)高者先分配:優(yōu)先級(jí)高者是指發(fā)生優(yōu)先級(jí)高者先分配:優(yōu)先級(jí)高者是指發(fā)生I/O請(qǐng)求請(qǐng)求命令的進(jìn)程,即進(jìn)程的優(yōu)先級(jí)高,它的命令的進(jìn)程,即進(jìn)程的優(yōu)先級(jí)高,它的I/O請(qǐng)求也優(yōu)先予請(qǐng)求也優(yōu)先予以滿足,對(duì)于相同優(yōu)先級(jí)的進(jìn)程而言,則按先請(qǐng)求先分配以滿足,對(duì)于相同優(yōu)先級(jí)的進(jìn)程而言,則按先請(qǐng)求先分配策略分配。因此,優(yōu)先級(jí)高者分配策略把請(qǐng)求某設(shè)備的策略分配。因此,優(yōu)先級(jí)高者分配策略把請(qǐng)求某設(shè)備的I/O請(qǐng)求命令按進(jìn)程的優(yōu)先級(jí)組成隊(duì)列,從而保證在該設(shè)請(qǐng)求命令按進(jìn)程的優(yōu)先級(jí)
43、組成隊(duì)列,從而保證在該設(shè)備空閑時(shí),系統(tǒng)從備空閑時(shí),系統(tǒng)從I/O請(qǐng)求的隊(duì)列的隊(duì)首取下一個(gè)高優(yōu)先請(qǐng)求的隊(duì)列的隊(duì)首取下一個(gè)高優(yōu)先級(jí)的進(jìn)程發(fā)來(lái)的請(qǐng)求命令,并將設(shè)備分配給發(fā)出該命令的級(jí)的進(jìn)程發(fā)來(lái)的請(qǐng)求命令,并將設(shè)備分配給發(fā)出該命令的進(jìn)程。進(jìn)程。三、設(shè)備分配算法(三、設(shè)備分配算法(P222圖圖8.13) 8.6 I/O進(jìn)程控制進(jìn)程控制一、一、I/O控制的引入控制的引入 I/O控制:從用戶進(jìn)程的輸入輸出請(qǐng)求開(kāi)始,給控制:從用戶進(jìn)程的輸入輸出請(qǐng)求開(kāi)始,給 用戶進(jìn)程分配設(shè)備和啟動(dòng)設(shè)備進(jìn)行用戶進(jìn)程分配設(shè)備和啟動(dòng)設(shè)備進(jìn)行I/O操作,以及操作,以及 I/O操作完成后響應(yīng)中斷,進(jìn)行善后處理為止的整個(gè)操作完成后響應(yīng)中斷,進(jìn)行善后處理為止的整個(gè) 系統(tǒng)控制過(guò)程稱為系統(tǒng)控制過(guò)程稱為I/O控制??刂啤6⒍?、I/O控制的功能:控
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO/TS 23541-2:2025 EN Health informatics - Categorial structure for representation of 3D human body position system - Part 2: Body movement
- 石砌體臺(tái)階施工方案
- 管涵橋施工方案
- 2025年度智能家居產(chǎn)品傭金支付及智能家居服務(wù)合同
- 二零二五年度事業(yè)單位聘用合同:事業(yè)單位物業(yè)管理人員崗位服務(wù)合同
- 二零二五年度文化旅游產(chǎn)業(yè)合作終止合同
- 二零二五年度公司股東內(nèi)部關(guān)于戰(zhàn)略合作的框架協(xié)議
- 2025年度服裝廠員工保密與競(jìng)業(yè)禁止合同
- 2025年度洗浴場(chǎng)所員工激勵(lì)機(jī)制與雇傭協(xié)議
- 二零二五年度物聯(lián)網(wǎng)設(shè)備技術(shù)顧問(wèn)服務(wù)協(xié)議
- GB/T 2572-2005纖維增強(qiáng)塑料平均線膨脹系數(shù)試驗(yàn)方法
- 2023年江蘇省中學(xué)生生物奧林匹克競(jìng)賽試題及答案
- 領(lǐng)導(dǎo)干部應(yīng)對(duì)新媒體時(shí)代
- 維修質(zhì)量檢驗(yàn)制度
- 食管支架植入術(shù)后護(hù)理課件
- 品質(zhì)控制計(jì)劃(QC工程圖)
- 海外派遣人員管理辦法
- 混凝土灌注樁質(zhì)量平行檢查記錄(鋼筋籠)
- 汽車營(yíng)銷學(xué)(全套課件)
- 現(xiàn)澆墩臺(tái)身軸線偏位、全高豎直度檢測(cè)記錄表
- 激光共聚焦顯微鏡校準(zhǔn)規(guī)范編制說(shuō)明
評(píng)論
0/150
提交評(píng)論