版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第8章設(shè)備管理8.1引言8.2數(shù)據(jù)傳送控制方式8.3中斷技術(shù)8.4緩沖技術(shù)8.5設(shè)備分配8.6I/O進(jìn)程控制8.7設(shè)備驅(qū)動(dòng)程序
文件系統(tǒng)的主要功能有哪些?邏輯文件發(fā)能為幾類(lèi)?物理文件有幾類(lèi)??jī)?yōu)缺點(diǎn)?成組塊鏈的分配過(guò)程(示意圖)?磁盤(pán)結(jié)構(gòu)中的物理塊通常使用哪些參數(shù)描述?
根據(jù)磁盤(pán)結(jié)構(gòu)特點(diǎn),如何訪問(wèn)磁盤(pán)速率較高?思考題
I/O設(shè)備的特點(diǎn)
1)I/O性能經(jīng)常成為系統(tǒng)性能的瓶頸
CPU性能不等于系統(tǒng)性能;
響應(yīng)時(shí)間也是一個(gè)重要因素
CPU性能越高,與I/O差距越大; 彌補(bǔ):多進(jìn)程并發(fā)執(zhí)行進(jìn)程切換多,系統(tǒng)開(kāi)銷(xiāo)大;
2)OS中設(shè)備資源多、雜,并發(fā)性受I/O影響大外設(shè)種類(lèi)繁多,結(jié)構(gòu)各異;輸入輸出數(shù)據(jù)信號(hào)類(lèi)型不同;速度差異很大;8.1引言
I/O設(shè)備的特點(diǎn)
3)理解I/O的工作過(guò)程與結(jié)構(gòu)是理解操作系統(tǒng)的工作過(guò)程與結(jié)構(gòu)的關(guān)鍵。
4)與其他功能聯(lián)系密切,特別是文件系統(tǒng)8.1引言
設(shè)備分類(lèi)
1)按使用特性分:存儲(chǔ)型設(shè)備輸入型設(shè)備(外設(shè)主機(jī))輸出型設(shè)備(主機(jī)外設(shè))
輸入輸出型設(shè)備(交互型設(shè)備)
2)按數(shù)據(jù)組織分
塊設(shè)備:以數(shù)據(jù)塊為單位存儲(chǔ)、傳輸信息,如磁盤(pán)、磁帶等;
字符設(shè)備:以字符為單位存儲(chǔ)、傳輸信息,鍵盤(pán)、終端、打印機(jī);8.1引言
設(shè)備分類(lèi)
3)按資源分配角度分
獨(dú)占設(shè)備在一段時(shí)間內(nèi)只能有一個(gè)進(jìn)程使用的設(shè)備,一般為低速I(mǎi)/O設(shè)備(如打印機(jī),磁帶等);共享設(shè)備在一段時(shí)間內(nèi)可有多個(gè)進(jìn)程共同使用的設(shè)備,多個(gè)進(jìn)程以交叉的方式來(lái)使用設(shè)備,其資源利用率高(如硬盤(pán));8.1引言
設(shè)備分類(lèi)
4)按設(shè)備的從屬關(guān)系系統(tǒng)設(shè)備系統(tǒng)設(shè)備是指那些在操作系統(tǒng)生成時(shí)就已配置好的各種標(biāo)準(zhǔn)設(shè)備。例如:鍵盤(pán)、打印機(jī)以及文件存儲(chǔ)設(shè)備等。用戶(hù)設(shè)備用戶(hù)設(shè)備則是那些在系統(tǒng)生成時(shí)沒(méi)有配置,而由用戶(hù)自己安裝配置后由操作系統(tǒng)統(tǒng)一管理的設(shè)備。例如,網(wǎng)絡(luò)系統(tǒng)中的各種網(wǎng)板、圖像處理系統(tǒng)的圖像設(shè)備等。8.1引言
設(shè)備分類(lèi)
4)從程序使用角度分邏輯設(shè)備、物理設(shè)備
5)按數(shù)據(jù)傳輸率分高速設(shè)備、低速設(shè)備8.1引言8.1引言
設(shè)備管理的功能和任務(wù)(1)選擇和分配設(shè)備;(2)控制設(shè)備和CPU(或內(nèi)存)之間交換數(shù)據(jù);(3)為用戶(hù)提供友好的透明接口,便于用戶(hù)使用;(4)保證在多道程序環(huán)境下,當(dāng)多個(gè)進(jìn)程競(jìng)爭(zhēng)使用設(shè)備時(shí),按一定策略分配和管理各種設(shè)備,使系統(tǒng)能有條不紊的工作。(5)保護(hù)設(shè)備傳送或管理的數(shù)據(jù)應(yīng)該是安全的、不被破壞的、保密的8.1引言
設(shè)備管理的主要任務(wù)之一是控制設(shè)備和內(nèi)存或CPU之間的數(shù)據(jù)傳送。選擇和衡量控制方式有如下幾條原則:
(1)數(shù)據(jù)傳送速度足夠高;
(2)系統(tǒng)開(kāi)銷(xiāo)小,所需的處理控制程序少;
(3)能充分發(fā)揮硬件資源的能力,使得I/O設(shè)備盡量忙,而CPU等待時(shí)間少。8.2數(shù)據(jù)傳送方式
外圍設(shè)備和內(nèi)存之間的常用數(shù)據(jù)傳送控制方式有4種。即:
(1)程序直接控制方式;
(2)中斷控制方式;
(3)DMA方式;
(4)通道方式。8.2數(shù)據(jù)傳送方式
程序直接控制方式由用戶(hù)進(jìn)程來(lái)直接控制內(nèi)存或CPU和外圍設(shè)備之間的信息傳送。這種方式的控制者是用戶(hù)進(jìn)程。當(dāng)用戶(hù)進(jìn)程需要傳輸數(shù)據(jù)時(shí),它通過(guò)CPU發(fā)出啟動(dòng)設(shè)備命令,然后,用戶(hù)進(jìn)程進(jìn)入測(cè)試等待狀態(tài),直到相應(yīng)設(shè)備空閑,且準(zhǔn)備好,即開(kāi)始傳輸數(shù)據(jù)。8.2數(shù)據(jù)傳送方式
程序直接控制方式優(yōu)點(diǎn):控制簡(jiǎn)單,不需要多少硬件支持;
缺點(diǎn):(1)CPU和外圍設(shè)備串行工作,CPU利用率低;(2)CPU只能和一臺(tái)外圍設(shè)備交換數(shù)據(jù)信息,從而不能實(shí)現(xiàn)設(shè)備之間的并行工作;(3)由于程序直接控制方式依靠測(cè)試設(shè)備標(biāo)志觸發(fā)器的狀態(tài)位來(lái)控制數(shù)據(jù)傳送,因此無(wú)法發(fā)現(xiàn)和處理由于設(shè)備或其他硬件所產(chǎn)生的錯(cuò)誤。因此,該方式只適用于CPU速度慢,外圍設(shè)備較少的系統(tǒng)。8.2數(shù)據(jù)傳送方式中斷方式為了減少程序直接控制方式中CPU等待時(shí)間以及提高系統(tǒng)的并行工作程度,中斷(interrupt)方式被用來(lái)控制外圍設(shè)備和內(nèi)存與CPU之間的數(shù)據(jù)傳送。這種方式要求CPU與設(shè)備(或控制器)之間有相應(yīng)的中斷請(qǐng)求線,且在設(shè)備控制器的控制狀態(tài)寄存器中保存中斷允許位。數(shù)據(jù)的輸入步驟:
(1)進(jìn)程通過(guò)CPU發(fā)出啟動(dòng)外圍設(shè)備準(zhǔn)備數(shù)據(jù)指令,同時(shí)將中斷允許位置1,以便在需要時(shí),中斷程序可以被調(diào)用執(zhí)行。8.2數(shù)據(jù)傳送方式8.2數(shù)據(jù)傳送方式中斷方式
(2)在進(jìn)程發(fā)出指令啟動(dòng)設(shè)備之后,該進(jìn)程放棄處理機(jī),等待輸入完成。
(3)當(dāng)輸入完成時(shí),I/O控制器通過(guò)中斷請(qǐng)求線向CPU發(fā)出中斷信號(hào)。CPU在接收到中斷信號(hào)之后,轉(zhuǎn)向中斷處理程序?qū)?shù)據(jù)進(jìn)行處理。
(4)進(jìn)程調(diào)度選中該進(jìn)程后,該進(jìn)程即從約定的內(nèi)存特定單元中取出數(shù)據(jù)繼續(xù)工作。中斷控制方式的處理過(guò)程:8.2數(shù)據(jù)傳送方式8.2數(shù)據(jù)傳送方式中斷方式優(yōu)點(diǎn):中斷方式支持多道程序和設(shè)備的并行操作,提高CPU利用率缺點(diǎn):(1)中斷發(fā)生在I/O設(shè)備數(shù)據(jù)緩沖器裝滿數(shù)據(jù)時(shí),而數(shù)據(jù)緩沖器通常較小,因此,一次數(shù)據(jù)傳送發(fā)生中斷次數(shù)較多,將耗去大量CPU處理時(shí)間。(2)如果很多設(shè)備通過(guò)中斷處理方式進(jìn)行并行操作,則OS可能由于中斷次數(shù)急劇增加而造成CPU無(wú)法響應(yīng)中斷和出現(xiàn)數(shù)據(jù)丟失現(xiàn)象。(3)如果外圍設(shè)備速度較高,可能造成數(shù)據(jù)緩沖器的數(shù)據(jù)由于CPU來(lái)不及取走而丟失。8.2數(shù)據(jù)傳送方式
DMA(DirectMemoryAccess)又稱(chēng)直接存取方式。基本思想是在外圍設(shè)備和內(nèi)存之間開(kāi)辟直接的數(shù)據(jù)交換通路。在DMA方式中,I/O控制器具有比中斷方式和程序直接控制方式時(shí)更強(qiáng)的功能。
DMA方式采用竊取或挪用系統(tǒng)的總線控制權(quán)把數(shù)據(jù)直接送到內(nèi)存。即,DMA控制器可用來(lái)代替CPU控制內(nèi)存和設(shè)備之間進(jìn)行成批的數(shù)據(jù)交換。8.2數(shù)據(jù)傳送方式DMA方式
DMA方式除了在數(shù)據(jù)塊傳送開(kāi)始時(shí)需要CPU的啟動(dòng)指令和在整個(gè)數(shù)據(jù)塊傳送結(jié)束時(shí)需發(fā)中斷通知CPU進(jìn)行中斷處理之外,不再像中斷控制方式時(shí)那樣需要CPU的頻繁干涉。DMA方式的數(shù)據(jù)輸入處理過(guò)程如下:(1)當(dāng)進(jìn)程輸入數(shù)據(jù)時(shí),CPU把內(nèi)存始址和要傳送的字節(jié)數(shù)送入DMA控制器;中斷允許位和啟動(dòng)位置1;從而啟動(dòng)設(shè)備開(kāi)始進(jìn)行數(shù)據(jù)輸入。8.2數(shù)據(jù)傳送方式圖8.5DMA方式的傳送結(jié)構(gòu)8.2數(shù)據(jù)傳送方式
DMA方式
(2)發(fā)出數(shù)據(jù)要求的進(jìn)程進(jìn)入等待狀態(tài),進(jìn)程調(diào)度程序調(diào)度其他進(jìn)程占據(jù)CPU。
(3)輸入設(shè)備不斷地挪用CPU工作周期,直到所要求的字節(jié)全部傳送完畢。
(4)DMA控制器在傳送字節(jié)數(shù)完成時(shí)通過(guò)中斷請(qǐng)求線發(fā)出中斷信號(hào),CPU在接收到中斷信號(hào)后轉(zhuǎn)中斷處理程序進(jìn)行善后處理。
(5)中斷處理結(jié)束時(shí),CPU返回被中斷進(jìn)程處執(zhí)行或被調(diào)度到新的進(jìn)程上下文環(huán)境中執(zhí)行。DMA方式的處理過(guò)程如圖8.6所示。8.2數(shù)據(jù)傳送方式8.2數(shù)據(jù)傳送方式
DMA方式
DMA方式與中斷方式的主要區(qū)別:(1)中斷方式時(shí)是在數(shù)據(jù)緩沖寄存器滿之后發(fā)中斷要求CPU進(jìn)行中斷處理,而DMA方式則是在所要求轉(zhuǎn)送的數(shù)據(jù)塊全部傳送結(jié)束時(shí)要求CPU進(jìn)行中斷處理。減少了CPU進(jìn)行中斷處理的次數(shù)。(2)中斷方式的數(shù)據(jù)傳送由CPU控制完成,而DMA方式是在DMA控制器的控制下完成的。這就排除了因并行操作設(shè)備過(guò)多時(shí)CPU來(lái)不及處理或因速度不匹配而造成數(shù)據(jù)丟失等現(xiàn)象。8.2數(shù)據(jù)傳送方式
DMA方式優(yōu)點(diǎn):減少了中斷次數(shù),DMA控制器與CPU并行,避免了設(shè)備緩沖器中的數(shù)據(jù)丟失問(wèn)題;缺點(diǎn):(1)DMA方式對(duì)外圍設(shè)備的管理和某些操作仍由CPU控制。(2)功能較差,不能滿足復(fù)雜的I/O要求。因此,大中型計(jì)算機(jī)系統(tǒng)中除了設(shè)置DMA器件,還設(shè)置專(zhuān)門(mén)的硬件裝置—通道。8.2數(shù)據(jù)傳送方式通道控制方式通道又稱(chēng)輸入輸出處理器,它能完成主存儲(chǔ)器和外圍設(shè)備之間的信息傳送,與中央處理器并行地執(zhí)行操作。此外,外圍設(shè)備和中央處理器能實(shí)現(xiàn)并行操作;通道和通道之間能實(shí)現(xiàn)并行操作;各通道上的外圍設(shè)備也能實(shí)現(xiàn)并行操作,以達(dá)到提高整個(gè)系統(tǒng)效率這一根本目的。(優(yōu)點(diǎn))8.2數(shù)據(jù)傳送方式
通道控制方式具有通道裝置計(jì)算機(jī)的主機(jī)、通道、控制器和設(shè)備之間采用四級(jí)連接,實(shí)施三級(jí)控制。通常,一個(gè)中央處理器可以連接若干通道,一個(gè)通道可以連接若干控制器,一個(gè)控制器可以連接若干臺(tái)設(shè)備。中央處理器執(zhí)行輸入輸出指令對(duì)通道實(shí)施控制,通道執(zhí)行通道命令(CCW)對(duì)控制器實(shí)施控制,控制器發(fā)出動(dòng)作序列對(duì)設(shè)備實(shí)施控制,設(shè)備執(zhí)行相應(yīng)的輸入輸出操作。8.2數(shù)據(jù)傳送方式
通道控制方式輸入輸出過(guò)程如下:(1)CPU遇到IO請(qǐng)求,啟動(dòng)指定通道上的外設(shè);(2)通道啟動(dòng)成功,通道進(jìn)行IO操作;(3)此時(shí),CPU與通道并行工作;(4)IO結(jié)束,通道發(fā)出中斷請(qǐng)求;(5)CPU響應(yīng)請(qǐng)求,處理IO操作結(jié)束事件。(6)中斷處理結(jié)束后,CPU調(diào)度進(jìn)程運(yùn)行。8.2數(shù)據(jù)傳送方式
通道控制方式通道分類(lèi):按照信息交換方式和加接設(shè)備種類(lèi)不同,通道可分為三種類(lèi)型:(1)字節(jié)多路通道。連接大量慢速外圍設(shè)備,如軟盤(pán)機(jī)、紙帶機(jī)、卡片機(jī)等。以字節(jié)為單位交叉地為多個(gè)設(shè)備輪流服務(wù)。(2)選擇通道。它用于連接高速磁帶機(jī)和磁盤(pán)機(jī)等設(shè)備。選擇通道在一段時(shí)間內(nèi)只能執(zhí)行一個(gè)通道程序,選擇一臺(tái)設(shè)備進(jìn)行數(shù)據(jù)傳輸,傳輸完成后再選擇另一設(shè)備。8.2數(shù)據(jù)傳送方式
通道控制方式通道分類(lèi):(3)數(shù)組多路通道。對(duì)于磁盤(pán)類(lèi)似設(shè)備,雖然傳輸時(shí)間短,但移臂定位時(shí)間長(zhǎng)。使用選擇通道在移臂時(shí)間內(nèi),通道只能空等。數(shù)組多路通道則先為一臺(tái)設(shè)備執(zhí)行一條通道命令,然后再為另一臺(tái)設(shè)備執(zhí)行一條通道命令。對(duì)于若干臺(tái)磁盤(pán)機(jī),可以按次序交叉?zhèn)鬏斠慌畔?,這樣就避免了移臂操作過(guò)長(zhǎng)地占用通道。數(shù)組多路通道的實(shí)質(zhì)是:對(duì)通道程序采用多道程序設(shè)計(jì)技術(shù)的硬件實(shí)現(xiàn)。8.2數(shù)據(jù)傳送方式8.2數(shù)據(jù)傳送方式8.2數(shù)據(jù)傳送方式
中斷的概念中斷(Interrupt)是指計(jì)算機(jī)在執(zhí)行期間,系統(tǒng)內(nèi)發(fā)生任何非尋常的或非預(yù)期的急需處理事件,使得CPU暫時(shí)中斷當(dāng)前正在執(zhí)行的程序而轉(zhuǎn)去執(zhí)行相應(yīng)的事件處理程序,待處理完畢后又返回原來(lái)被中斷處繼續(xù)執(zhí)行或調(diào)度新的進(jìn)程執(zhí)行的過(guò)程。引起中斷發(fā)生的事件被稱(chēng)為中斷源。中斷源向CPU發(fā)出的請(qǐng)求中斷處理信號(hào)稱(chēng)為中斷請(qǐng)求,而CPU收到中斷請(qǐng)求后轉(zhuǎn)相應(yīng)的事件處理程序稱(chēng)為中斷響應(yīng)。8.3中斷技術(shù)系統(tǒng)允許CPU響應(yīng)中斷稱(chēng)為禁止中斷。禁止中斷也稱(chēng)為關(guān)中斷,PSW的中斷允許位的設(shè)置也被稱(chēng)為開(kāi)中斷。中斷請(qǐng)求、關(guān)中斷、開(kāi)中斷等都由硬件實(shí)現(xiàn)。其中開(kāi)中斷和關(guān)中斷是操作原語(yǔ)。中斷屏蔽是指在中斷請(qǐng)求產(chǎn)生之后,系統(tǒng)用軟件方式有選擇地封鎖部分中斷而允許其余部分的中斷仍能得到響應(yīng)。8.3中斷技術(shù)
中斷的分類(lèi)與優(yōu)先級(jí)操作系統(tǒng)一般對(duì)中斷進(jìn)行分類(lèi)并對(duì)不同的中斷賦予不同的處理優(yōu)先級(jí),以便在不同的中斷同時(shí)發(fā)生時(shí),按輕重緩急進(jìn)行處理。根據(jù)中斷源產(chǎn)生的條件,可把中斷分為外中斷和內(nèi)中斷。
外中斷指來(lái)自處理機(jī)和內(nèi)存外部的中斷,包括I/O中斷、外部信號(hào)中斷、時(shí)鐘中斷、調(diào)試中斷等。外中斷在狹義上一般被稱(chēng)為中斷。8.3中斷技術(shù)中斷的分類(lèi)與優(yōu)先級(jí)內(nèi)中斷主要指在處理機(jī)和內(nèi)存內(nèi)部產(chǎn)生的中斷。內(nèi)中斷一般稱(chēng)為陷阱(trap)。它包括程序運(yùn)算引起的各種錯(cuò)誤,如地址非法、校驗(yàn)錯(cuò)、頁(yè)面失效、存取訪問(wèn)控制錯(cuò)、算術(shù)操作溢出、數(shù)據(jù)格式非法、除數(shù)為零、非法指令、用戶(hù)程序執(zhí)行系統(tǒng)調(diào)用指令、分時(shí)系統(tǒng)中的時(shí)間片中斷以及從用戶(hù)態(tài)到核心態(tài)的切換等都是陷阱的例子。8.3中斷技術(shù)
中斷和陷阱的區(qū)別
(1)陷阱由處理機(jī)正在執(zhí)行的現(xiàn)行指令引起,而中斷則是由與現(xiàn)行指令無(wú)關(guān)的中斷源引起的。
(2)陷阱處理程序提供的服務(wù)為當(dāng)前進(jìn)程所用,而中斷處理程序的服務(wù)則不是為了當(dāng)前進(jìn)程的。
(3)CPU在執(zhí)行完一條指令之后,下一條指令開(kāi)始之前響應(yīng)中斷,而在一條指令執(zhí)行中也可以響應(yīng)陷阱。8.3中斷技術(shù)軟中斷中斷和陷阱都可以看作是硬中斷,因?yàn)檫@些中斷和陷阱要通過(guò)硬件產(chǎn)生相應(yīng)的中斷請(qǐng)求。軟中斷是通信進(jìn)程之間用來(lái)模擬硬中斷的一種信號(hào)通信方式。相同:其中斷源發(fā)中斷請(qǐng)求或軟中斷信號(hào)后,CPU或接收進(jìn)程在適當(dāng)?shù)臅r(shí)機(jī)自動(dòng)進(jìn)行中斷處理或完成軟中斷信號(hào)所對(duì)應(yīng)的功能。8.3中斷技術(shù)中斷處理過(guò)程一旦CPU響應(yīng)中斷,轉(zhuǎn)入中斷處理程序,系統(tǒng)就開(kāi)始進(jìn)行中斷處理。
(1)CPU檢查響應(yīng)中斷的條件是否滿足:有中斷請(qǐng)求、CPU允許中斷。
(2)如果CPU響應(yīng)中斷,則CPU關(guān)中斷,使其進(jìn)入不可再次響應(yīng)中斷的狀態(tài)。
(3)保存被中斷進(jìn)程現(xiàn)場(chǎng)。必須保存處理機(jī)狀態(tài)字PSW和程序計(jì)數(shù)器PC等的值。8.3中斷技術(shù)中斷處理過(guò)程
(4)分析中斷原因,調(diào)用中斷處理子程序。
(5)執(zhí)行中斷處理子程序。
(6)退出中斷,恢復(fù)被中斷進(jìn)程的現(xiàn)場(chǎng)或調(diào)度新進(jìn)程占據(jù)處理機(jī)。
(7)開(kāi)中斷,CPU繼續(xù)執(zhí)行。8.3中斷技術(shù)
緩沖的引入(1)匹配外設(shè)與CPU之間的處理速度;(2)減少中斷次數(shù)和CPU的中斷處理時(shí)間;(3)解決DMA或通道方式時(shí)的瓶頸問(wèn)題;為此,在設(shè)備管理中引入了用來(lái)暫存數(shù)據(jù)的緩沖技術(shù)。硬緩沖:在設(shè)備中設(shè)置緩沖區(qū),由硬件實(shí)現(xiàn)。軟緩沖:在內(nèi)存中開(kāi)辟一個(gè)空間,用作緩沖區(qū)。8.4緩沖技術(shù)
緩沖的種類(lèi)根據(jù)系統(tǒng)設(shè)置的緩沖器的個(gè)數(shù),可把緩沖技術(shù)分為單緩沖、雙緩沖和多緩沖以及緩沖池幾種。單緩沖是在設(shè)備和處理機(jī)之間設(shè)置一個(gè)緩沖器。設(shè)備和處理機(jī)交換數(shù)據(jù)時(shí),先把被交換數(shù)據(jù)寫(xiě)入緩沖器,然后,需要數(shù)據(jù)的設(shè)備或處理機(jī)從緩沖器取走數(shù)據(jù)。由于緩沖器屬于臨界資源,即不允許多個(gè)進(jìn)程同時(shí)對(duì)一個(gè)緩沖器操作,因此,設(shè)備和設(shè)備之間不能通過(guò)單緩沖達(dá)到并行操作。8.4緩沖技術(shù)緩沖的種類(lèi)解決兩臺(tái)外設(shè)、打印機(jī)和終端之間的并行操作問(wèn)題的辦法是設(shè)置雙緩沖。有了兩個(gè)緩沖器之后,CPU可把輸出到打印機(jī)的數(shù)據(jù)放入其中一個(gè)緩沖器(區(qū)),讓打印機(jī)慢慢打印;然后,它又可以從另一個(gè)為終端設(shè)置的緩沖器(區(qū))中讀取所需要的輸入數(shù)據(jù)。8.4緩沖技術(shù)
緩沖的種類(lèi)現(xiàn)代計(jì)算機(jī)系統(tǒng)中一般使用多緩沖或緩沖池結(jié)構(gòu)。多緩沖是把多個(gè)緩沖區(qū)連接起來(lái)組成兩部分,一部分專(zhuān)門(mén)用于輸入,另一部分專(zhuān)門(mén)用于輸出的緩沖結(jié)構(gòu)。緩沖池則是把多個(gè)緩沖區(qū)連接起來(lái)統(tǒng)一管理,既可用于輸入又可用于輸出的緩沖結(jié)構(gòu)。顯然,無(wú)論是多緩沖,還是緩沖池,由于緩沖器是臨界資源,在使用緩沖區(qū)時(shí)都有一個(gè)申請(qǐng)、釋放和互斥的問(wèn)題。8.4緩沖技術(shù)
緩沖池的結(jié)構(gòu)緩沖池由多個(gè)緩沖區(qū)組成。而一個(gè)緩沖區(qū)由兩部分組成:一部分是用來(lái)標(biāo)識(shí)該緩沖器和用于管理的緩沖首部,另一部分是用于存放數(shù)據(jù)的緩沖體。這兩部分有一一對(duì)應(yīng)的映射關(guān)系。對(duì)緩沖池的管理是通過(guò)對(duì)每一個(gè)緩沖器的緩沖首部進(jìn)行操作實(shí)現(xiàn)的。緩沖首部包括設(shè)備號(hào)、設(shè)備上的數(shù)據(jù)塊號(hào)(塊設(shè)備時(shí))、互斥標(biāo)識(shí)位以及緩沖隊(duì)列連接指針和緩沖器號(hào)等。8.4緩沖技術(shù)緩沖池的結(jié)構(gòu)系統(tǒng)把各緩沖區(qū)按其使用狀況連成三種隊(duì)列:(1)空白緩沖隊(duì)列em,其隊(duì)首指針為F(em),隊(duì)尾指針為L(zhǎng)(em);(2)裝滿輸入數(shù)據(jù)的輸入緩沖隊(duì)列in,其隊(duì)首指針為F(in),隊(duì)尾指針為L(zhǎng)(in);(3)裝滿輸出數(shù)據(jù)的輸出緩沖隊(duì)列out,其隊(duì)首指針為F(out),隊(duì)尾指針為L(zhǎng)(out)。8.4緩沖技術(shù)圖8.10緩沖區(qū)隊(duì)列8.4緩沖技術(shù)
緩沖池的結(jié)構(gòu)除了三種緩沖隊(duì)列之外,申請(qǐng)并獲得、處于正在使用的緩沖器稱(chēng)為工作緩沖區(qū)。在緩沖池中,有4種工作緩沖區(qū),即:(1)用于收容設(shè)備輸入數(shù)據(jù)的收容輸入緩沖區(qū)hin;(2)用于提取設(shè)備輸入數(shù)據(jù)的提取輸入緩沖區(qū)sin;(3)用于收容CPU輸出數(shù)據(jù)的收容輸出緩沖區(qū)hout;(4)用于提取CPU輸出數(shù)據(jù)的提取輸出緩沖區(qū)sout。8.4緩沖技術(shù)圖8.11緩沖池的工作緩沖區(qū)8.4緩沖技術(shù)概念當(dāng)某進(jìn)程向系統(tǒng)提出I/O請(qǐng)求時(shí),設(shè)備分配程序按一定策略分配設(shè)備、控制器和通道,形成一條數(shù)據(jù)傳輸通路,以供主機(jī)和設(shè)備間信息交換。8.5設(shè)備分配
設(shè)備獨(dú)立性通常用戶(hù)不指定特定的設(shè)備,而指定邏輯設(shè)備,使得用戶(hù)作業(yè)和物理設(shè)備獨(dú)立開(kāi)來(lái),再通過(guò)其他途徑建立邏輯設(shè)備和物理設(shè)備之間的對(duì)應(yīng)關(guān)系,稱(chēng)設(shè)備的這種特性為“設(shè)備獨(dú)立性”。優(yōu)點(diǎn):用戶(hù)應(yīng)用程序與物理設(shè)備無(wú)關(guān),系統(tǒng)增減或變更物理設(shè)備時(shí)程序不必修改;易于對(duì)付輸入輸出設(shè)備的故障;提高了系統(tǒng)的可靠性,增加了外圍設(shè)備分配的靈活性,能更有效地利用外圍設(shè)備資源,實(shí)現(xiàn)多道程序設(shè)計(jì)技術(shù)。8.5設(shè)備分配數(shù)據(jù)結(jié)構(gòu)(1)系統(tǒng)設(shè)備表SDT(2)設(shè)備控制塊DCB(設(shè)備控制表DCT)(3)通道控制塊CHCB(通道控制表CHCT)(4)控制器控制塊COCB(控制器控制表COCT)8.5設(shè)備分配
數(shù)據(jù)結(jié)構(gòu)
1、系統(tǒng)設(shè)備表SDT
整個(gè)系統(tǒng)一張表,記錄系統(tǒng)中所有I/O設(shè)備的信息,為每個(gè)物理設(shè)備設(shè)一表項(xiàng)。表目包括:設(shè)備類(lèi)型、設(shè)備標(biāo)識(shí)符、進(jìn)程標(biāo)識(shí)符、DCT表指針等。
2、設(shè)備控制表DCT
每個(gè)物理設(shè)備一張表,包括設(shè)備類(lèi)型、設(shè)備標(biāo)識(shí)符、設(shè)備狀態(tài)、與此設(shè)備相連的COCT、等待隊(duì)列的隊(duì)首和隊(duì)尾指針、I/O程序地址等。設(shè)備表8.5設(shè)備分配
數(shù)據(jù)結(jié)構(gòu)
3、控制器表COCT(COntrolerControlTable)
每個(gè)控制器一張,它反映I/O控制器的使用狀態(tài)以及和通道的連接情況等。
4、通道控制表CHCT(CHannelControlTable)
每個(gè)通道一張。包括通道標(biāo)識(shí)符、通道忙/閑標(biāo)識(shí)、等待獲得該通道的進(jìn)程等待隊(duì)列的隊(duì)首指針與隊(duì)尾指針等;顯然,一個(gè)進(jìn)程只有獲得了通道、控制器和所需設(shè)備三者之后,才具備了進(jìn)行I/O操作的物理?xiàng)l件。8.5設(shè)備分配圖8.12數(shù)據(jù)結(jié)構(gòu)表8.5設(shè)備分配設(shè)備分配的原則設(shè)備分配的總原則是既要充分發(fā)揮設(shè)備的使用效率,盡可能的讓設(shè)備忙,但又要避免由于不合理的分配方法造成進(jìn)程死鎖;另外還要做到把用戶(hù)程序和具體物理設(shè)備隔離開(kāi)來(lái),即用戶(hù)程序面對(duì)的是邏輯設(shè)備,而分配程序?qū)⒃谙到y(tǒng)把邏輯設(shè)備轉(zhuǎn)換成物理設(shè)備之后,再根據(jù)要求的物理設(shè)備號(hào)進(jìn)行分配。8.5設(shè)備分配設(shè)備分配的原則
靜態(tài)分配方式是在用戶(hù)作業(yè)開(kāi)始執(zhí)行之前,由系統(tǒng)一次分配該作業(yè)所要求的全部設(shè)備、控制器和通道。靜態(tài)分配方式不會(huì)出現(xiàn)死鎖,但設(shè)備的使用效率低。
動(dòng)態(tài)分配在進(jìn)程執(zhí)行過(guò)程中通過(guò)系統(tǒng)調(diào)用命令向系統(tǒng)提出設(shè)備請(qǐng)求.動(dòng)態(tài)分配方式有利于提高設(shè)備的利用率,但如果分配算法使用不當(dāng),則有可能造成進(jìn)程死鎖。8.5設(shè)備分配
設(shè)備分配策略與進(jìn)程調(diào)度相似,動(dòng)態(tài)設(shè)備分配也是基于一定的分配策略的。
1)先請(qǐng)求先分配系統(tǒng)按提出I/O請(qǐng)求的先后順序,將進(jìn)程發(fā)出的I/O請(qǐng)求命令排成隊(duì)列,其隊(duì)首指向被請(qǐng)求設(shè)備的DCT。當(dāng)該設(shè)備空閑時(shí),系統(tǒng)從該設(shè)備的請(qǐng)求隊(duì)列的隊(duì)首取下一個(gè)I/O請(qǐng)求消息,將設(shè)備分配給發(fā)出這個(gè)請(qǐng)求消息的進(jìn)程。8.5設(shè)備分配
設(shè)備分配策略
2)優(yōu)先級(jí)高者先分配進(jìn)程的優(yōu)先級(jí)高,它的I/O請(qǐng)求也優(yōu)先予以滿足。對(duì)于相同優(yōu)先級(jí)的進(jìn)程來(lái)說(shuō),則按先請(qǐng)求先分配策略分配。因此,優(yōu)先級(jí)高者先分配策略把請(qǐng)求某設(shè)備的I/O請(qǐng)求命令按進(jìn)程的優(yōu)先級(jí)組成隊(duì)列,從而保證在該設(shè)備空閑時(shí),系統(tǒng)能從I/O請(qǐng)求隊(duì)列隊(duì)首取下一個(gè)具有最高優(yōu)先級(jí)進(jìn)程發(fā)來(lái)的I/O請(qǐng)求命令,并將設(shè)備分配給發(fā)出該命令的進(jìn)程。8.5設(shè)備分配設(shè)備驅(qū)動(dòng)程序設(shè)備驅(qū)動(dòng)程序是驅(qū)動(dòng)物理設(shè)備和DMA控制器或I/O控制器等直接進(jìn)行I/O操作的子程序的集合。為了對(duì)驅(qū)動(dòng)程序進(jìn)行管理,系統(tǒng)中設(shè)置有設(shè)備開(kāi)關(guān)表DST。設(shè)備開(kāi)關(guān)表中給出相應(yīng)設(shè)備的各種操作子程序的入口地址。8.7設(shè)備驅(qū)動(dòng)程序
概念
在一類(lèi)設(shè)備上模擬另一類(lèi)設(shè)備,常用共享設(shè)備模擬獨(dú)占設(shè)備,用高速設(shè)備模擬低速設(shè)備,被模擬的設(shè)備稱(chēng)為虛設(shè)備。目的:將慢速的獨(dú)占設(shè)備改造成多個(gè)用戶(hù)可共享的設(shè)備,提高設(shè)備的利用率;(實(shí)例:SPOOLing技術(shù),利用虛設(shè)備技術(shù)
——用硬盤(pán)模擬輸入輸出設(shè)備)虛設(shè)備
SPOOLING的設(shè)計(jì)和實(shí)現(xiàn)為了存放從輸入設(shè)備輸入的信息以及作業(yè)執(zhí)行的結(jié)果,系統(tǒng)在輔助存儲(chǔ)器上開(kāi)辟了輸入井和輸出井?!熬笔怯米骶彌_的存儲(chǔ)區(qū)域,采用井的技術(shù)能調(diào)節(jié)供求之間的矛盾,消除人工干預(yù)帶來(lái)的損失。虛設(shè)備虛設(shè)備
SPOOLING的設(shè)計(jì)和實(shí)現(xiàn)兩個(gè)例子:(1)打印機(jī)spooling守護(hù)進(jìn)程對(duì)于打印機(jī),屬于獨(dú)占設(shè)備。系統(tǒng)可創(chuàng)建一個(gè)守護(hù)進(jìn)程(daemon)以及一個(gè)特殊的目錄,稱(chēng)spooling打印目錄。在打印之前,進(jìn)程產(chǎn)生完整的待打印文件并放在spooling
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度圍墻工程施工期保險(xiǎn)合同3篇
- 2024年度環(huán)保設(shè)施安裝施工安全責(zé)任協(xié)議3篇
- 2024版辦公家具設(shè)計(jì)與生產(chǎn)質(zhì)量控制合同標(biāo)準(zhǔn)2篇
- 湖北省武漢市高中化學(xué) 第二章 化學(xué)物質(zhì)及其變化 2.3.2 氧化還原反應(yīng) 第2課時(shí)教學(xué)實(shí)錄 新人教版必修1
- 2024年度環(huán)保服務(wù)合同-廢物處理與綠色生產(chǎn)3篇
- 2024年度高新技術(shù)產(chǎn)業(yè)擔(dān)保協(xié)議與保證合同范本6篇
- 2024年醫(yī)院器械采購(gòu)與租賃合同3篇
- 2024年標(biāo)準(zhǔn)藥材采購(gòu)協(xié)議3篇
- 2024信息化系統(tǒng)設(shè)計(jì)契約3篇
- 大棚修建承包合同
- 嵌入式系統(tǒng)設(shè)計(jì)師(中級(jí))考試題庫(kù)(含答案)
- 《新視野商務(wù)英語(yǔ)視聽(tīng)說(shuō)》第四版-上-U10 Company Performance
- 智慧傳承-黎族船型屋智慧樹(shù)知到答案2024年海南師范大學(xué)
- 2024年統(tǒng)編版新教材語(yǔ)文小學(xué)一年級(jí)上冊(cè)第七單元檢測(cè)題及答案
- 人教新課標(biāo)四年級(jí)上冊(cè)數(shù)學(xué)《2.1認(rèn)識(shí)公頃》說(shuō)課稿
- 專(zhuān)升本英語(yǔ)智慧樹(shù)知到答案2024年江蘇財(cái)會(huì)職業(yè)學(xué)院
- 2024年河南省中考語(yǔ)文試卷試題答案詳解及備考指導(dǎo)(精校打印版)
- NB-T32041-2018光伏發(fā)電站設(shè)備后評(píng)價(jià)規(guī)程
- 分子生物學(xué)技術(shù)智慧樹(shù)知到期末考試答案章節(jié)答案2024年江蘇大學(xué)
- 眼耳鼻咽喉口腔科護(hù)理學(xué)復(fù)習(xí)試題
- 專(zhuān)題08 探索與表達(dá)規(guī)律(解析版)
評(píng)論
0/150
提交評(píng)論