版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
37/37第4章設(shè)備治理4.1設(shè)備治理概述4.2輸入輸出系統(tǒng)4.3設(shè)備分配與回收4.4設(shè)備處理4.5設(shè)備治理采納的技術(shù)本章結(jié)束!4.1設(shè)備治理概述4.1.1設(shè)備治理的要緊任務(wù)設(shè)備是指計(jì)算機(jī)系統(tǒng)中的外部設(shè)備,它包括外存、輸入設(shè)備和輸出設(shè)備(I/O設(shè)備)。外存的治理和使用,請(qǐng)參考文件治理一章。設(shè)備治理的要緊任務(wù)是完成用戶提出的輸入輸出請(qǐng)求,為用戶分配輸入輸出設(shè)備,提高CPU與輸入輸出設(shè)備的利用率,提高輸入輸出設(shè)備的速度,方便用戶使用輸入輸出設(shè)備。第4章設(shè)備治理4.1設(shè)備治理概述4.1.2設(shè)備治理的要緊功能1.緩沖治理它是治理好各種類型的緩沖區(qū),協(xié)調(diào)各類設(shè)備的工作速度,提高系統(tǒng)的使用效率。它通過單緩沖區(qū)、雙緩沖區(qū)或緩沖池等機(jī)制來實(shí)現(xiàn)。2.設(shè)備分配與回收它是依照用戶提出的輸入輸出請(qǐng)求,為其分配所需要的設(shè)備,用戶使用完后,回收分配的設(shè)備。它通過設(shè)備操縱表、操縱器操縱表、通道操縱表和系統(tǒng)設(shè)備表記錄設(shè)備的使用情況,實(shí)現(xiàn)設(shè)備的分配與回收。第4章設(shè)備治理4.1設(shè)備治理概述4.1.2設(shè)備治理的要緊功能3.設(shè)備處理它是實(shí)現(xiàn)CPU和設(shè)備操縱器之間的通信。它通過相應(yīng)的設(shè)備處理程序來實(shí)現(xiàn)。4.虛擬設(shè)備它是把每次只同意一個(gè)進(jìn)程使用的物理設(shè)備,改造為能同時(shí)供多個(gè)進(jìn)程共享的設(shè)備。第4章設(shè)備治理4.1設(shè)備治理概述4.1.3設(shè)備的分類1.按設(shè)備的從屬關(guān)系分類(1)系統(tǒng)設(shè)備。系統(tǒng)設(shè)備是指操作系統(tǒng)生成時(shí)差不多登記在操作系統(tǒng)中的標(biāo)準(zhǔn)設(shè)備,如鍵盤、顯示器、打印機(jī)等。(2)用戶設(shè)備。用戶設(shè)備是指操作系統(tǒng)生成時(shí)未登記在操作系統(tǒng)中的非標(biāo)準(zhǔn)設(shè)備,如繪圖儀、掃描儀等。2.按操作特性分類(1)存儲(chǔ)設(shè)備。存儲(chǔ)設(shè)備是指用來存放信息的設(shè)備,如磁盤、磁帶等。(2)輸入輸出設(shè)備。輸入輸出設(shè)備是指向CPU傳輸信息和輸出加工處理信息的設(shè)備,如鍵盤、顯示器、打印機(jī)等。第4章設(shè)備治理4.1設(shè)備治理概述4.1.3設(shè)備的分類3.按設(shè)備共享屬性分類(1)獨(dú)享設(shè)備。獨(dú)享設(shè)備是指在一段時(shí)刻內(nèi)只同意一個(gè)進(jìn)程訪問的設(shè)備。系統(tǒng)一旦把這種設(shè)備分配給一個(gè)進(jìn)程后,便由該進(jìn)程獨(dú)占,直到用完釋放,其他進(jìn)程才能使用。多數(shù)低速設(shè)備都屬于此類設(shè)備,如打印機(jī)。(2)共享設(shè)備。共享設(shè)備是指在一段時(shí)刻內(nèi)同意多個(gè)進(jìn)程訪問的設(shè)備,如磁盤。(3)虛擬設(shè)備。虛擬設(shè)備是指通過虛擬技術(shù)將一臺(tái)獨(dú)占設(shè)備變換為若干臺(tái)邏輯設(shè)備,供若干個(gè)進(jìn)程同時(shí)使用的設(shè)備,如虛擬打印機(jī)。第4章設(shè)備治理4.1設(shè)備治理概述4.1.3設(shè)備的分類4.按信息交換單位分類(1)塊設(shè)備。塊設(shè)備是指處理信息的差不多單位是字符塊。一般塊的大小為512B~4KB,如磁盤、磁帶等。(2)字符設(shè)備。字符設(shè)備是指處理信息的差不多單位是字符,如鍵盤、顯示器、打印機(jī)等。第4章設(shè)備治理返回4.2輸入輸出系統(tǒng)4.2.1輸入輸出系統(tǒng)的結(jié)構(gòu)關(guān)于不同規(guī)模的計(jì)算機(jī)系統(tǒng),其輸入輸出系統(tǒng)的結(jié)構(gòu)也有差異。通常把輸入輸出系統(tǒng)的結(jié)構(gòu)分成兩大類:微機(jī)輸入輸出系統(tǒng)和主機(jī)輸入輸出系統(tǒng)。1.微機(jī)輸入輸出系統(tǒng)微機(jī)輸入輸出系統(tǒng)一般采納總線輸入輸出系統(tǒng)結(jié)構(gòu),如圖4-1所示。第4章設(shè)備治理4.2輸入輸出系統(tǒng)4.2.1輸入輸出系統(tǒng)的結(jié)構(gòu)1.微機(jī)輸入輸出系統(tǒng)CPU和主存是直接連接到總線上的。輸入輸出設(shè)備是通過設(shè)備操縱器連接到總線上。CPU并不直接與輸入輸出設(shè)備進(jìn)行通信,而是與設(shè)備操縱器進(jìn)行通信,并通過它去操縱相應(yīng)的設(shè)備。因此,設(shè)備操縱器是處理器和設(shè)備之間的接口。應(yīng)依照設(shè)備的類型,給設(shè)備配置與之相應(yīng)的操縱器,如磁盤操縱器、打印機(jī)操縱器等。第4章設(shè)備治理4.2輸入輸出系統(tǒng)4.2.1輸入輸出系統(tǒng)的結(jié)構(gòu)2.主機(jī)輸入輸出系統(tǒng)當(dāng)主機(jī)所配置的輸入輸出設(shè)備較多時(shí),特不是配有較多的高速外設(shè)時(shí),采納總線型輸入輸出系統(tǒng)結(jié)構(gòu)會(huì)加重CPU與總線的負(fù)擔(dān)。因此,在如此的輸入輸出系統(tǒng)中不宜采納單總線結(jié)構(gòu),而是增加一級(jí)輸入輸出通道,用來代替CPU與各設(shè)備操縱器進(jìn)行通信,實(shí)現(xiàn)對(duì)操縱器的操縱。具有通道的輸入輸出系統(tǒng)結(jié)構(gòu)如圖4-2所示。第4章設(shè)備治理4.2輸入輸出系統(tǒng)4.2.2設(shè)備操縱器1.設(shè)備操縱器的概念設(shè)備操縱器是CPU與外圍設(shè)備之間的接口,是一個(gè)可編址設(shè)備,每一個(gè)地址對(duì)應(yīng)一個(gè)設(shè)備。它接收從CPU發(fā)來的命令,并去操縱輸入輸出設(shè)備的工作,使CPU從繁雜的設(shè)備操縱事務(wù)中解脫出來,提高CPU的使用效率。設(shè)備操縱器一般分成兩大類:一類是用于操縱字符設(shè)備的操縱器;另一類是用于操縱塊設(shè)備的操縱器。第4章設(shè)備治理4.2輸入輸出系統(tǒng)4.2.2設(shè)備操縱器2.設(shè)備操縱器的功能。設(shè)備操縱器實(shí)現(xiàn)設(shè)備與CPU的通信,一般功能:(1)接收和識(shí)不命令。接收和識(shí)不由CPU發(fā)送來的各種命令,并對(duì)這些命令進(jìn)行譯碼。為此,在操縱器中應(yīng)設(shè)置相應(yīng)的操縱寄存器,用來存放接收的命令和參數(shù),并對(duì)所接收的命令進(jìn)行譯碼。(2)交換數(shù)據(jù)。實(shí)現(xiàn)CPU與操縱器、操縱器與設(shè)備之間的數(shù)據(jù)交換。關(guān)于前者,是通過數(shù)據(jù)總線,由CPU并行地把數(shù)據(jù)寫入操縱器,或從操縱器中并行地讀出數(shù)據(jù);關(guān)于后者是設(shè)備將數(shù)據(jù)輸入到操縱器,或從操縱器傳送給設(shè)備。為此,在操縱器中需要設(shè)置數(shù)據(jù)寄存器。第4章設(shè)備治理4.2輸入輸出系統(tǒng)4.2.2設(shè)備操縱器2.設(shè)備操縱器的功能。(3)了解和報(bào)告設(shè)備狀態(tài)。在操縱器中應(yīng)設(shè)立一個(gè)狀態(tài)寄存器用于記錄設(shè)備的各種狀態(tài),以供CPU使用。例如,僅當(dāng)該設(shè)備處于發(fā)送就緒狀態(tài)時(shí),CPU才能啟動(dòng)操縱器從設(shè)備中讀出數(shù)據(jù)。為此,在操縱器中應(yīng)設(shè)置一個(gè)狀態(tài)寄存器,用其中的每一位來反映設(shè)備的某一種狀態(tài)。當(dāng)CPU將該寄存器的內(nèi)容讀入后,便能夠了解該設(shè)備的狀態(tài)。(4)識(shí)不地址。系統(tǒng)為每個(gè)設(shè)備配置一個(gè)地址,設(shè)備操縱器要能識(shí)不這些地址。此外,為使CPU能向寄存器中寫入數(shù)據(jù),或從寄存器中讀取數(shù)據(jù),這些寄存器應(yīng)具有惟一的地址。第4章設(shè)備治理4.2輸入輸出系統(tǒng)4.2.2設(shè)備操縱器3.設(shè)備操縱器的組成由于設(shè)備操縱器處于CPU與設(shè)備之間,它既要與CPU通信,又要與設(shè)備通信,還應(yīng)具有按照CPU發(fā)來的命令去操縱設(shè)備工作的功能。因此,現(xiàn)有的大多數(shù)操縱器差不多上由以下三部分組成的,如圖4-3所示。第4章設(shè)備治理4.2輸入輸出系統(tǒng)4.2.2設(shè)備操縱器3.設(shè)備操縱器的組成(1)CPU與設(shè)備操縱器的接口。該接口用于實(shí)現(xiàn)CPU與設(shè)備操縱器之間的通信。共有三類信號(hào)線:數(shù)據(jù)線、地址線和操縱線。(2)設(shè)備操縱器與設(shè)備的接口。操縱器中的輸入輸出邏輯依照處理器發(fā)送來的地址信號(hào),去選擇一個(gè)設(shè)備接口。一個(gè)設(shè)備接口連接一臺(tái)設(shè)備。(3)輸入輸出邏輯。輸入輸出邏輯用于實(shí)現(xiàn)對(duì)輸入輸出設(shè)備的操縱。第4章設(shè)備治理4.2輸入輸出系統(tǒng)4.2.3輸入輸出通道1.輸入輸出通道的概念輸入輸出通道是指專門負(fù)責(zé)輸入輸出工作的處理器。它有自己的指令系統(tǒng)(包含數(shù)據(jù)傳送指令和設(shè)備操縱指令),能按照指定的要求獨(dú)立地完成輸入輸出操作。中央處理器能夠做相應(yīng)的計(jì)算操作,從而使系統(tǒng)獲得CPU與外設(shè)的并行處理能力。第4章設(shè)備治理4.2輸入輸出系統(tǒng)4.2.3輸入輸出通道2.輸入輸出通道的分類輸入輸出通道是用于操縱外圍設(shè)備的。依照信息交換方式的不同,把通道分成三種類型:(1)字節(jié)多路通道。通常都含有許多非分配型子通道,其數(shù)量能夠從幾十到數(shù)百個(gè),每一個(gè)子通道連接一臺(tái)輸入輸出設(shè)備,這些子通道按時(shí)刻片輪轉(zhuǎn)方式共享主通道。如圖4-4所示。字節(jié)多路通道連接低速或中速設(shè)備時(shí),可不能丟失信息。第4章設(shè)備治理4.2輸入輸出系統(tǒng)4.2.3輸入輸出通道2.輸入輸出通道的分類(2)數(shù)據(jù)選擇通道。能夠連接多臺(tái)高速設(shè)備,然而,由于它只含有一個(gè)分配型子通道,在一段時(shí)刻內(nèi)只能執(zhí)行一個(gè)通道程序,操縱一臺(tái)設(shè)備進(jìn)行數(shù)據(jù)傳送,致使當(dāng)某臺(tái)設(shè)備占用了該通道后,便一直由它獨(dú)占,(即使許多據(jù)傳送,通道被閑置也不同意其他設(shè)備利用)直至該設(shè)備傳送完畢后釋放該通道。數(shù)據(jù)選擇通道盡管有專門高的傳輸速率,然而,它每次只同意一個(gè)設(shè)備傳輸數(shù)據(jù)。因此,這種通道利用率專門低。第4章設(shè)備治理4.2輸入輸出系統(tǒng)4.2.3輸入輸出通道2.輸入輸出通道的分類(3)數(shù)組多路通道。將數(shù)據(jù)選擇通道傳輸速率高和字節(jié)多路通道能使各子通道(設(shè)備)分時(shí)并行操作的優(yōu)點(diǎn)相結(jié)合,而形成的一種新通道。它含有多個(gè)非分配型子通道,因而這種通道既具有專門高的數(shù)據(jù)傳輸速率,又能獲得令人中意的通道利用率。該通道被廣泛地用于連接多臺(tái)高、中速的外圍設(shè)備,其數(shù)據(jù)傳送是按數(shù)組方式進(jìn)行的。第4章設(shè)備治理4.2輸入輸出系統(tǒng)4.2.4輸入輸出系統(tǒng)的操縱方式1.程序直接操縱方式程序直接操縱方式也稱為“忙—等待”方式,即在一個(gè)設(shè)備的操作沒有完成時(shí),操縱程序一直檢測(cè)設(shè)備的狀態(tài),直到該操作完成,才能進(jìn)行下一個(gè)操作。步驟為:(1)當(dāng)用戶需要輸入數(shù)據(jù)時(shí),由處理器向設(shè)備操縱器發(fā)出一條輸入輸出指令,啟動(dòng)設(shè)備進(jìn)行輸入。(2)當(dāng)用戶進(jìn)程需要向設(shè)備輸出數(shù)據(jù)時(shí),也必須同樣發(fā)出啟動(dòng)命令啟動(dòng)設(shè)備輸出,并等待輸出操作完成。特點(diǎn):工作過程簡(jiǎn)單,CPU的利用率低。程序直接操縱方式適用于早期的無中斷的計(jì)算機(jī)系統(tǒng)。第4章設(shè)備治理4.2輸入輸出系統(tǒng)4.2.4輸入輸出系統(tǒng)的操縱方式2.中斷操縱方式中斷操縱是指計(jì)算機(jī)在執(zhí)行期間,系統(tǒng)內(nèi)發(fā)生任何非平常的或非預(yù)期的急需處理事件,使得CPU臨時(shí)中止當(dāng)前正在執(zhí)行的程序而轉(zhuǎn)去執(zhí)行相應(yīng)的事件處理程序,待處理完畢后又返回原來被中止處接著執(zhí)行或調(diào)度新的進(jìn)程執(zhí)行的過程。特點(diǎn):中斷操縱方式比程序直接操縱方式提高了CPU的利用率。每輸入輸出一個(gè)數(shù)據(jù)都會(huì)發(fā)生中斷,傳輸一組數(shù)據(jù)需要多次中斷,白費(fèi)了CPU的處理時(shí)刻。中斷操縱方式應(yīng)用于現(xiàn)代計(jì)算機(jī)系統(tǒng)中。第4章設(shè)備治理4.2輸入輸出系統(tǒng)4.2.4輸入輸出系統(tǒng)的操縱方式3.直接存儲(chǔ)器存取操縱方式(DMA)直接存儲(chǔ)器存取方式是指對(duì)輸入輸出設(shè)備的操縱由DMA操縱器完成,在DMA操縱器的作用下,設(shè)備和主存之間能夠成批地進(jìn)行數(shù)據(jù)交換,而不用CPU的干涉。特點(diǎn):數(shù)據(jù)的傳送方向、存放數(shù)據(jù)的主存始址及傳送數(shù)據(jù)的長(zhǎng)度等都由CPU操縱,具體的數(shù)據(jù)傳送由DMA操縱器負(fù)責(zé),每臺(tái)設(shè)備需要配一個(gè)DMA操縱器,如此輸入輸出數(shù)據(jù)傳輸速度快,CPU負(fù)擔(dān)少。直接存儲(chǔ)器存取操縱方式適用于塊設(shè)備的數(shù)據(jù)傳輸。第4章設(shè)備治理4.2輸入輸出系統(tǒng)4.2.4輸入輸出系統(tǒng)的操縱方式4.通道操縱方式通道操縱方式是一種以主存為中心,是設(shè)備與主存直接交換數(shù)據(jù)的操縱方式。CPU只需要發(fā)出啟動(dòng)指令,指出通道相應(yīng)的操作和輸入輸出設(shè)備,該指令就能夠啟動(dòng)通道并使該通道從主存中調(diào)出相應(yīng)的通道指令執(zhí)行,完成一組數(shù)據(jù)塊的輸入/輸出。特點(diǎn):通道所需要的CPU干預(yù)更少,并能夠?qū)崿F(xiàn)CPU、通道和輸入輸出設(shè)備三者之間的并行操作,從而更有效地提高整個(gè)系統(tǒng)資源的利用率。通道操縱方式適用于現(xiàn)代計(jì)算機(jī)系統(tǒng)中的大量數(shù)據(jù)交換。第4章設(shè)備治理返回4.3設(shè)備分配與回收4.3.1設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)為了實(shí)現(xiàn)對(duì)設(shè)備的治理和操縱,需要對(duì)每臺(tái)設(shè)備、通道、操縱器的情況進(jìn)行登記。設(shè)備分配要緊采納的數(shù)據(jù)結(jié)構(gòu)有設(shè)備操縱表、操縱器操縱表、通道操縱表和系統(tǒng)設(shè)備表。如圖4-5所示。第4章設(shè)備治理4.3設(shè)備分配與回收4.3.1設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)1.設(shè)備操縱表系統(tǒng)為每臺(tái)設(shè)備配置一張?jiān)O(shè)備操縱表,用于記錄設(shè)備的特性及與輸入輸出操縱器連接的情況。設(shè)備操縱表中包括:設(shè)備標(biāo)識(shí)符、設(shè)備類型、設(shè)備狀態(tài)、設(shè)備等待隊(duì)列指針、輸入輸出操縱器指針、設(shè)備相對(duì)號(hào)、占用作業(yè)名等。設(shè)備標(biāo)識(shí)符也稱為設(shè)備絕對(duì)號(hào)。它是指計(jì)算機(jī)系統(tǒng)對(duì)每臺(tái)設(shè)備的編號(hào)。用戶對(duì)每類設(shè)備的編號(hào)稱為設(shè)備相對(duì)號(hào),也稱為設(shè)備類號(hào)。第4章設(shè)備治理4.3設(shè)備分配與回收4.3.1設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)2.操縱器操縱表系統(tǒng)為每個(gè)操縱器配置了一張操縱器操縱表,以反映操縱器的使用狀態(tài),以及與通道的連接狀況等。其內(nèi)容包括操縱器標(biāo)識(shí)符、操縱器的狀態(tài)、與操縱器連接的通道表指針、操縱器隊(duì)列的隊(duì)首指針、通道隊(duì)列的隊(duì)尾指針等。其中與操縱器連接的通道表指針指向該操縱器的通道操縱表。第4章設(shè)備治理4.3設(shè)備分配與回收4.3.1設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)3.通道操縱表系統(tǒng)為每個(gè)通道配置一張通道操縱表,以反映通道的使用狀態(tài)。其內(nèi)容包括通道標(biāo)識(shí)符、通道狀態(tài)、等待獲得該通道的進(jìn)程等待隊(duì)列指針等。第4章設(shè)備治理4.3設(shè)備分配與回收4.3.1設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu)4.系統(tǒng)設(shè)備表系統(tǒng)設(shè)備表也稱為設(shè)備類表,整個(gè)系統(tǒng)配置一張。它記錄已被連接到系統(tǒng)中的所有物理設(shè)備的情況,每個(gè)物理設(shè)備占一個(gè)表目,包括設(shè)備類型、擁有設(shè)備臺(tái)數(shù)、現(xiàn)存設(shè)備臺(tái)數(shù)、設(shè)備操縱表指針等。其中設(shè)備操縱表指針指向該設(shè)備對(duì)應(yīng)的設(shè)備操縱表。這幾張表的關(guān)系:在系統(tǒng)設(shè)備表中有指向設(shè)備操縱表的指針,在設(shè)備操縱表中有指向該設(shè)備操縱器操縱表的指針,在操縱器操縱表中有指向與該操縱器連接的通道操縱表的指針。系統(tǒng)確實(shí)是通過這種關(guān)系進(jìn)行設(shè)備的分配與回收的。第4章設(shè)備治理4.3設(shè)備分配與回收4.3.2設(shè)備分配應(yīng)考慮的因素1.設(shè)備的使用性質(zhì)按照設(shè)備自身的使用性質(zhì),能夠采納以下三種不同的分配方式:獨(dú)享分配、共享分配、虛擬分配。獨(dú)享分配適用于大多數(shù)低速設(shè)備,如打印機(jī)。共享分配適應(yīng)于高速設(shè)備,如磁盤。虛擬分配適應(yīng)于虛擬設(shè)備。依照設(shè)備的使用性質(zhì)來決定一臺(tái)設(shè)備能夠分給幾個(gè)進(jìn)程。第4章設(shè)備治理4.3設(shè)備分配與回收4.3.2設(shè)備分配應(yīng)考慮的因素2.設(shè)備的分配算法設(shè)備的分配算法要緊是確定把設(shè)備先分給哪個(gè)進(jìn)程。設(shè)備的分配算法有先來先服務(wù)和優(yōu)先權(quán)兩種。先來先服務(wù)算法是依照進(jìn)程發(fā)出請(qǐng)求的先后順序,把這些進(jìn)程排成一個(gè)設(shè)備請(qǐng)求隊(duì)列,設(shè)備分配程序總是把設(shè)備分配給隊(duì)首進(jìn)程。優(yōu)先權(quán)算法是按照進(jìn)程的優(yōu)先權(quán)的高低進(jìn)行設(shè)備分配,誰的優(yōu)先權(quán)高就先把設(shè)備分給誰,對(duì)優(yōu)先權(quán)相同的按照先請(qǐng)求先服務(wù)的算法排隊(duì)。第4章設(shè)備治理4.3設(shè)備分配與回收4.3.2設(shè)備分配應(yīng)考慮的因素3.設(shè)備分配的安全性設(shè)備分配的安全性是指在設(shè)備分配中應(yīng)防止發(fā)生進(jìn)程的死鎖。設(shè)備分配的安全性采納的方法有靜態(tài)分配策略和動(dòng)態(tài)分配策略,它們能夠防止進(jìn)程死鎖。(1)靜態(tài)分配策略。靜態(tài)分配策略是在作業(yè)級(jí)進(jìn)行的,用戶作業(yè)開始執(zhí)行前,由系統(tǒng)一次分配給該作業(yè)所要求的全部設(shè)備、操縱器和通道,直到該作業(yè)撤消為止。靜態(tài)分配可不能出現(xiàn)死鎖,然而,設(shè)備利用率低。(2)動(dòng)態(tài)分配策略。動(dòng)態(tài)分配策略是在進(jìn)程執(zhí)行過程中,依照?qǐng)?zhí)行的需要所進(jìn)行的設(shè)備分配。動(dòng)態(tài)分配提高了設(shè)備的利用率,然而分配不當(dāng),會(huì)造成進(jìn)程的死鎖。第4章設(shè)備治理4.3設(shè)備分配與回收4.3.2設(shè)備分配應(yīng)考慮的因素4.設(shè)備的獨(dú)立性設(shè)備的獨(dú)立性是指用戶在編制程序時(shí)所使用的設(shè)備與實(shí)際使用的設(shè)備無關(guān)。為此,要求用戶程序?qū)斎胼敵鲈O(shè)備的請(qǐng)求采納邏輯設(shè)備名,而在程序?qū)嶋H執(zhí)行時(shí)使用物理設(shè)備名,它們之間的關(guān)系類似存儲(chǔ)治理中的邏輯地址和物理地址的關(guān)系。第4章設(shè)備治理4.3設(shè)備分配與回收4.3.3設(shè)備分配在并發(fā)進(jìn)程環(huán)境中,設(shè)備分配是由系統(tǒng)完成的,以防止并發(fā)進(jìn)程對(duì)設(shè)備的無序競(jìng)爭(zhēng)。當(dāng)進(jìn)程提出設(shè)備請(qǐng)求時(shí),系統(tǒng)啟動(dòng)設(shè)備分配程序,按照一定的算法為進(jìn)程分配設(shè)備、設(shè)備操縱器和通道。在這三種資源中,通道是最緊缺的資源,設(shè)備是最充足的資源,因此,設(shè)備分配的步驟是:先分配設(shè)備,再分配設(shè)備操縱器,最后分配通道。1.分配設(shè)備分配設(shè)備的過程如圖4-6所示。第4章設(shè)備治理4.3設(shè)備分配與回收4.3.3設(shè)備分配1.分配設(shè)備依照進(jìn)程提出的設(shè)備名查找系統(tǒng)設(shè)備表,若沒有找到,則顯示出錯(cuò)信息,并結(jié)束分配;否則,從中找到該設(shè)備的設(shè)備操縱表,查看設(shè)備操縱表中的設(shè)備狀態(tài)字段。若該設(shè)備處于忙狀態(tài),則將進(jìn)程插入到該設(shè)備的等待隊(duì)列;若設(shè)備空閑,便按照一定的算法來計(jì)算本次設(shè)備分配的安全性。若分配可不能引起死鎖則進(jìn)行設(shè)備分配,修改設(shè)備操縱表,把狀態(tài)字段的值由“0”改為進(jìn)程名,并修改系統(tǒng)設(shè)備表,使“現(xiàn)存設(shè)備臺(tái)數(shù)”減少分配的臺(tái)數(shù);否則,將該進(jìn)程插入到該設(shè)備的等待隊(duì)列。第4章設(shè)備治理4.3設(shè)備分配與回收4.3.3設(shè)備分配2.分配設(shè)備操縱器分配設(shè)備操縱器的過程如圖4-7所示。在系統(tǒng)把設(shè)備分配給請(qǐng)求輸入輸出的進(jìn)程后,再到設(shè)備操縱表中找到與該設(shè)備相連的操縱器操縱表,從該表的狀態(tài)字段中可知該操縱器是否忙碌。若操縱器忙,則將進(jìn)程插入到等待該操縱器的隊(duì)列;否則,將該操縱器分配給進(jìn)程,即修改操縱器操縱表,把狀態(tài)字段的值由“0”改為進(jìn)程名。第4章設(shè)備治理4.3設(shè)備分配與回收4.3.3設(shè)備分配3.分配通道分配通道的過程如圖4-8所示。在分配完設(shè)備操縱器后,從操縱器操縱表中找到與該操縱器相連的通道操縱表,從該表的狀態(tài)字段中可知該通道是否忙碌。若通道處于忙碌狀態(tài),則將該進(jìn)程插入到等待該通道的隊(duì)列;否則,將該通道分配給進(jìn)程,即修改通道操縱表,把狀態(tài)字段的值由“0”改為進(jìn)程名。第4章設(shè)備治理4.3設(shè)備分配與回收4.3.4設(shè)備回收當(dāng)進(jìn)程撤消或設(shè)備使用完畢后,要進(jìn)行設(shè)備的回收,設(shè)備回收的過程如圖4-9所示。設(shè)備回收的步驟:(1)系統(tǒng)依照進(jìn)程名在設(shè)備分配表中找到相應(yīng)的記錄,把設(shè)備狀態(tài)修改為“0”表示未分配,若該設(shè)備的等待隊(duì)列不空,則喚醒隊(duì)首進(jìn)程,進(jìn)行設(shè)備分配;(2)到該設(shè)備的操縱器操縱表中,把其狀態(tài)由進(jìn)程名改為“0”,若該操縱器的等待隊(duì)列不空,則喚醒隊(duì)首進(jìn)程,進(jìn)行操縱器分配;(3)到該操縱器的通道操縱表中,把其狀態(tài)由進(jìn)程名改為“0”,若該通道的等待隊(duì)列不空,則喚醒隊(duì)首進(jìn)程,進(jìn)行通道分配;(4)在系統(tǒng)設(shè)備表中,把回收設(shè)備臺(tái)數(shù)添加到“現(xiàn)存設(shè)備臺(tái)數(shù)”中。第4章設(shè)備治理4.3設(shè)備分配與回收4.3.5對(duì)設(shè)備分配程序的改進(jìn)以上設(shè)備分配程序有兩個(gè)特點(diǎn),一是,進(jìn)程是以物理設(shè)備名來提出輸入輸出請(qǐng)求的。二是,系統(tǒng)采納的是單通路的輸入輸出系統(tǒng)結(jié)構(gòu)。如此的系統(tǒng)容易產(chǎn)生“瓶頸”現(xiàn)象。為此,對(duì)設(shè)備分配程序做以下改進(jìn):(1)增加設(shè)備的獨(dú)立性。進(jìn)程應(yīng)以邏輯設(shè)備名請(qǐng)求輸入輸出。系統(tǒng)首先依照系統(tǒng)設(shè)備表找到第一個(gè)該類設(shè)備的設(shè)備分配表,若該設(shè)備忙,則查找第二個(gè)該類設(shè)備的設(shè)備分配表,僅當(dāng)所有該類設(shè)備都忙時(shí),才把進(jìn)程掛在該類設(shè)備的等待隊(duì)列上。如此通過增加設(shè)備的獨(dú)立性,提高了設(shè)備分配的安全性。第4章設(shè)備治理4.3設(shè)備分配與回收4.3.5對(duì)設(shè)備分配程序的改進(jìn)(2)考慮多通路情況。系統(tǒng)采納多通路的輸入輸出系統(tǒng)結(jié)構(gòu),如圖4-10所示。即一個(gè)設(shè)備能夠由多個(gè)操縱器操縱,一個(gè)操縱器能夠由多個(gè)通道操縱(即增加圖4-10中的虛線部分)。如此,能夠防止系統(tǒng)出現(xiàn)“瓶頸”現(xiàn)象。也確實(shí)是對(duì)操縱器和通道的分配,同樣通過幾次反復(fù),只要有一個(gè)操縱器或通道可用,系統(tǒng)就能夠把它分配給進(jìn)程。如此,就增加了分配操縱器和通道的可能性,提高了設(shè)備分配的效率。第4章設(shè)備治理返回4.4設(shè)備處理設(shè)備處理的任務(wù)是把上層軟件的抽象要求變?yōu)榫唧w要求發(fā)送給設(shè)備操縱器,啟動(dòng)設(shè)備;將設(shè)備操縱器發(fā)來的信號(hào)傳送給上層軟件。它要緊由設(shè)備處理程序完成。設(shè)備處理程序也稱為設(shè)備驅(qū)動(dòng)程序,它是輸入輸出進(jìn)程與設(shè)備操縱器之間的通信程序。4.4.1設(shè)備驅(qū)動(dòng)程序的功能和特點(diǎn)1.設(shè)備驅(qū)動(dòng)程序的功能一是把抽象要求轉(zhuǎn)化為具體要求。二是檢查用戶輸入輸出請(qǐng)求的合法性,了解輸入輸出設(shè)備的狀態(tài),傳遞有關(guān)參數(shù),設(shè)置設(shè)備的工作方式。三是發(fā)出輸入輸出命令,啟動(dòng)分配到的輸入輸出設(shè)備,完成指定的輸入輸出操作。四是及時(shí)響應(yīng)由操縱器或通道發(fā)來的中斷請(qǐng)求,并依照其中斷類型調(diào)用相應(yīng)的中斷處理程序進(jìn)行處理。五是對(duì)設(shè)置有通道的計(jì)算機(jī)系統(tǒng),驅(qū)動(dòng)程序還應(yīng)依照用戶的輸入輸出請(qǐng)求,自動(dòng)地構(gòu)成通道程序。第4章設(shè)備治理4.4設(shè)備處理4.4.1設(shè)備驅(qū)動(dòng)程序的功能和特點(diǎn)2.設(shè)備處理的方式設(shè)備處理方式有三類:一是為每一類設(shè)備設(shè)置一個(gè)進(jìn)程,專門執(zhí)行這類設(shè)備的輸入輸出操作。二是在整個(gè)系統(tǒng)中設(shè)置一個(gè)輸入輸出進(jìn)程,專門負(fù)責(zé)對(duì)系統(tǒng)中所有各類設(shè)備的輸入輸出操作。三是不設(shè)置專門的設(shè)備處理進(jìn)程,只為各類設(shè)備設(shè)置相應(yīng)的設(shè)備處理程序,供用戶進(jìn)程或系統(tǒng)進(jìn)程調(diào)用。第4章設(shè)備治理4.4設(shè)備處理4.4.1設(shè)備驅(qū)動(dòng)程序的功能和特點(diǎn)3.設(shè)備驅(qū)動(dòng)程序的特點(diǎn)(1)驅(qū)動(dòng)程序要緊是在請(qǐng)求輸入輸出的進(jìn)程與設(shè)備操縱器之間的一個(gè)通信程序。(2)驅(qū)動(dòng)程序與輸入輸出設(shè)備的特性緊密相關(guān)。(3)驅(qū)動(dòng)程序與輸入輸出操縱方式緊密相關(guān)。(4)驅(qū)動(dòng)程序與硬件緊密相關(guān),其部分被固化在ROM中。第4章設(shè)備治理4.4設(shè)備處理4.4.2設(shè)備驅(qū)動(dòng)程序的處理過程1.將抽象要求轉(zhuǎn)化為具體要求用戶及上層軟件對(duì)設(shè)備操縱器的具體情況毫無了解,只能向它們發(fā)出抽象的要求,借助設(shè)備驅(qū)動(dòng)程序,轉(zhuǎn)化為具體的要求傳送給設(shè)備操縱器。如將盤塊號(hào)轉(zhuǎn)換為磁盤的盤面、磁道號(hào)及扇區(qū)號(hào)。2.檢查輸入輸出請(qǐng)求的合法性任何輸入設(shè)備都只能完成一組特定的功能,如該設(shè)備不支持這次輸入輸出請(qǐng)求,則認(rèn)為這次輸入輸出請(qǐng)求非法,又如用戶試圖讓打印機(jī)輸入數(shù)據(jù)。3.讀出和檢查設(shè)備的狀態(tài)要啟動(dòng)某個(gè)設(shè)備進(jìn)行輸入輸出操作,其前提條件是該設(shè)備正處于空閑狀態(tài)。因此在啟動(dòng)設(shè)備之前,要從設(shè)備操縱器的狀態(tài)寄存器中,讀出設(shè)備的狀態(tài)。第4章設(shè)備治理4.4設(shè)備處理4.4.2設(shè)備驅(qū)動(dòng)程序的處理過程4.傳送必要的參數(shù)有許多設(shè)備,特不是塊設(shè)備,除必須向其操縱器發(fā)出啟動(dòng)命令外,還需要傳送必要的參數(shù)。例如,在啟動(dòng)磁盤進(jìn)行讀/寫之前,應(yīng)先將本次要傳送的字節(jié)數(shù)、數(shù)據(jù)應(yīng)到達(dá)的主存始址送入操縱器的相應(yīng)寄存器中。5.設(shè)置工作方式有些設(shè)備有多種工作方式,在啟動(dòng)時(shí)應(yīng)選定某種方式,給出必要的數(shù)據(jù)。在啟動(dòng)該接口之前,應(yīng)先按通信規(guī)程設(shè)定下述參數(shù):波特率、奇偶校驗(yàn)方式、停止位數(shù)目及數(shù)據(jù)字節(jié)長(zhǎng)度等。6.啟動(dòng)輸入輸出設(shè)備在完成上述五個(gè)工作后,驅(qū)動(dòng)程序能夠向操縱器的命令寄存器傳送相應(yīng)的操縱命令,啟動(dòng)輸入輸出設(shè)備。差不多的輸入輸出操作是在操縱器的操縱下進(jìn)行的。第4章設(shè)備治理返回4.5設(shè)備治理采納的技術(shù)4.5.1緩沖技術(shù)為了提高輸入輸出設(shè)備的速度和利用率,在輸入輸出設(shè)備與處理器交換數(shù)據(jù)時(shí)引入了緩沖技術(shù)。緩沖技術(shù)是輸入輸出設(shè)備在與主存交換數(shù)據(jù)時(shí)使用緩沖區(qū)的技術(shù)。緩沖治理的要緊功能是組織好緩沖區(qū),并提供獲得和釋放緩沖區(qū)的手段。1.緩沖的引入(1)緩和CPU與輸入輸出設(shè)備間速度不匹配的矛盾。(2)減少對(duì)CPU的中斷頻率,放寬對(duì)中斷響應(yīng)時(shí)刻的限制。(3)提高CPU與輸入輸出設(shè)備間的并行性。第4章設(shè)備治理4.5設(shè)備治理采納的技術(shù)4.5.1緩沖技術(shù)2.單緩沖單緩沖是指在設(shè)備和處理器之間設(shè)置一個(gè)緩沖區(qū),用于數(shù)據(jù)的傳輸。單緩沖的工作原理如圖4-11所示。特點(diǎn)是:在主存中只有一個(gè)緩沖區(qū)。關(guān)于塊設(shè)備,該緩沖區(qū)能夠存放一塊數(shù)據(jù),關(guān)于字符設(shè)備,該緩沖區(qū)能夠存放一行數(shù)據(jù)。設(shè)備和處理器對(duì)緩沖區(qū)的操作是串行的,傳輸速度慢。在任一時(shí)刻,只能進(jìn)行單向的數(shù)據(jù)傳輸,同時(shí)傳輸數(shù)據(jù)量較少。第4章設(shè)備治理4.5設(shè)備治理采納的技術(shù)4.5.1緩沖技術(shù)3.雙緩沖雙緩沖是指在設(shè)備和處理器之間設(shè)置兩個(gè)緩沖區(qū)。雙緩沖的工作原理如圖4-12所示。特點(diǎn)是:在主存中設(shè)置兩個(gè)緩沖區(qū),完成數(shù)據(jù)的傳輸。兩個(gè)緩沖區(qū)能夠交替使用,提高了處理器和輸入設(shè)備的并行操作能力。在任一時(shí)刻,能夠進(jìn)行雙向的數(shù)據(jù)傳輸。一個(gè)緩沖區(qū)用于輸入,另一個(gè)用于輸出。適用于輸入/輸出、生產(chǎn)者/消費(fèi)者速度差不多相匹配的情況。當(dāng)傳輸數(shù)據(jù)量較大,或者兩者的速度相差較遠(yuǎn)時(shí),雙緩沖區(qū)效率較低。第4章設(shè)備治理4.5設(shè)備治理采納的技術(shù)4.5.1緩沖技術(shù)4.循環(huán)緩沖在設(shè)備和處理器之間設(shè)置多個(gè)大小相等的緩沖區(qū)。每個(gè)緩沖區(qū)中有一個(gè)鏈接指針指向下一個(gè)緩沖區(qū),最后一個(gè)緩沖區(qū)指針指向第一個(gè)緩沖區(qū),如此構(gòu)成一個(gè)環(huán)形緩沖區(qū)。循環(huán)緩沖的工作原理如圖4-13所示。特點(diǎn)是:在主存中設(shè)置多個(gè)緩沖區(qū)。讀和寫能夠并行處理,適用于某種特定的輸入輸出進(jìn)程和計(jì)算進(jìn)程,如輸入/輸出、生產(chǎn)者/消費(fèi)者速度不相匹配的情況。循環(huán)緩沖區(qū)屬于專用緩沖區(qū)。當(dāng)系統(tǒng)較大時(shí),使用多個(gè)如此的緩沖區(qū)要消耗大量的主存空間,降低緩沖區(qū)的使用效率。第4章設(shè)備治理4.5設(shè)備治理采納的技術(shù)4.5.1緩沖技術(shù)5.緩沖池當(dāng)系統(tǒng)較大時(shí),能夠利用供多個(gè)進(jìn)程共享的緩沖池來提高緩沖區(qū)的利用率。緩沖池的組成包括空(閑)緩沖區(qū)、裝滿輸入數(shù)據(jù)的緩沖區(qū)、裝滿輸出數(shù)據(jù)的緩沖區(qū),同類緩沖區(qū)以鏈隊(duì)的形式存在。另外,還應(yīng)有四種工作緩沖區(qū):用于收容輸入數(shù)據(jù)的工作緩沖區(qū)、用于提取輸入數(shù)據(jù)的工作緩沖區(qū)、用于收容輸出數(shù)據(jù)的工作緩沖區(qū)、用于提取輸出數(shù)據(jù)的工作緩沖區(qū)。緩沖池的工作原理如圖4-14所示。特點(diǎn)是:緩沖池結(jié)構(gòu)復(fù)雜,在主存中設(shè)置公用緩沖池,在池中設(shè)置多個(gè)能夠供多個(gè)進(jìn)程共享的緩沖區(qū)。緩沖區(qū)既能夠用于輸入,又能夠用于輸出(即共享)。緩沖池的設(shè)置,減少了主存空間的消耗,提高了主存的利用率,適應(yīng)于現(xiàn)代操作系統(tǒng)。第4章設(shè)備治理4.5設(shè)備治理采納的技術(shù)4.5.2中斷技術(shù)1.中斷的概念中斷是由于某些事件的出現(xiàn),中止現(xiàn)行進(jìn)程的執(zhí)行,而轉(zhuǎn)去處理出現(xiàn)的事件,中斷事件處理完后,再接著運(yùn)行被中止進(jìn)程的過程。在那個(gè)地點(diǎn)引起中斷的事件稱為中斷源。中斷事件通常由硬件發(fā)覺。對(duì)出現(xiàn)的事件進(jìn)行處理的程序稱為中斷處理程序。中斷處理程序是由操作系統(tǒng)處理的,屬于操作系統(tǒng)的組成部分。第4章設(shè)備治理4.5設(shè)備治理采納的技術(shù)4.5.2中斷技術(shù)2.中斷類型(1)硬件故障中斷。由機(jī)器故障造成的中斷。如電源故障。(2)程序中斷。由程序執(zhí)行到某條機(jī)器指令時(shí)可能出現(xiàn)的各種問題而引起的中斷。如發(fā)覺定點(diǎn)操作數(shù)溢出、除數(shù)為0等。(3)外部中斷。由各種外部事件引起的中斷。如按壓了中斷鍵、定時(shí)時(shí)鐘時(shí)刻到等。(4)輸入輸出中斷。由輸入輸出操縱系統(tǒng)發(fā)覺外圍設(shè)備完成了輸入輸出操作或在執(zhí)行輸入輸出時(shí)通道或外圍設(shè)備產(chǎn)生錯(cuò)誤而引起的中斷。(5)訪管中斷。正在運(yùn)行的進(jìn)程執(zhí)行訪管指令時(shí)引起的中斷。如分配一臺(tái)外設(shè)。前四類中斷不是運(yùn)行進(jìn)程所希望的,故稱為強(qiáng)迫性中斷,而第五種中斷,是進(jìn)程所希望的,故稱為自愿性中斷。第4章設(shè)備治理4.5設(shè)備治理采納的技術(shù)4.5.2中斷技術(shù)3.中斷響應(yīng)在處理器執(zhí)行完一條指令后,硬件的中斷裝置就立即檢查有無中斷事件發(fā)生。若無,接著執(zhí)行下一條指令;若有,則停止現(xiàn)行進(jìn)程,由操作系統(tǒng)中的中斷處理程序占用處理器,這一過程稱為“中斷響應(yīng)”。4.中斷處理首先介紹與中斷處理有關(guān)的概念:特權(quán)指令和程序狀態(tài)字。特權(quán)指令是不同意用戶程序直接使用的指令。如輸入輸出指令,設(shè)置時(shí)鐘的指令。程序狀態(tài)字是用來操縱指令執(zhí)行順序,并保留和指示與程序有關(guān)的系統(tǒng)狀態(tài)。第4章設(shè)備治理4.5設(shè)備治理采納的技術(shù)4.5.2中斷技術(shù)中斷處理過程如圖4-15所示。①當(dāng)中斷裝置發(fā)覺中斷事件后,先把中斷事件存放到程序狀態(tài)字寄存器中的中斷碼位置。②把程序狀態(tài)字寄存器中的“當(dāng)前PSW”作為“舊PSW”保存到預(yù)先約定的主存的固定單元中。③依照中斷碼,把該類事件處理程序的“新PSW”送入程序狀態(tài)字寄存器。④處理器按新PSW操縱處理該事件的中斷處理程序執(zhí)行。
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年培黎職業(yè)學(xué)院高職單招語文2018-2024歷年參考題庫頻考點(diǎn)含答案解析
- 2025至2030年中國(guó)低音鈸數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025年嘉興南洋職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測(cè)試近5年常考版參考題庫含答案解析
- 二零二五年度不動(dòng)產(chǎn)抵押登記服務(wù)合同標(biāo)準(zhǔn)版3篇
- 二零二五版WTO電子商務(wù)全球電子商務(wù)政策研究與合作協(xié)調(diào)合同2篇
- 2025版文員崗位職責(zé)與績(jī)效考核聘用合同樣本3篇
- 2025年中國(guó)啟動(dòng)拉繩市場(chǎng)調(diào)查研究報(bào)告
- 2025至2031年中國(guó)青菜種行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025-2030全球APU服務(wù)行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025-2030全球電磁給料機(jī)行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025貴州貴陽市屬事業(yè)單位招聘筆試和高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2024年住院醫(yī)師規(guī)范化培訓(xùn)師資培訓(xùn)理論考試試題
- 2024年廣東省公務(wù)員錄用考試《行測(cè)》試題及答案解析
- 金蓉顆粒-臨床用藥解讀
- 法治副校長(zhǎng)專題培訓(xùn)課件
- 《幼兒園健康》課件精1
- 汽車、電動(dòng)車電池火災(zāi)應(yīng)對(duì)
- 中醫(yī)藥適宜培訓(xùn)-刮痧療法教學(xué)課件
- 免疫組化he染色fishish
- 新東方四級(jí)詞匯-正序版
- 借名購(gòu)車位協(xié)議書借名購(gòu)車位協(xié)議書模板(五篇)
評(píng)論
0/150
提交評(píng)論