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