《操作系統(tǒng)》課件 第7章 設(shè)備管理_第1頁
《操作系統(tǒng)》課件 第7章 設(shè)備管理_第2頁
《操作系統(tǒng)》課件 第7章 設(shè)備管理_第3頁
《操作系統(tǒng)》課件 第7章 設(shè)備管理_第4頁
《操作系統(tǒng)》課件 第7章 設(shè)備管理_第5頁
已閱讀5頁,還剩56頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第7章設(shè)備管理●I/O設(shè)備管理概述

●磁盤管理●I/O控制方式

●緩沖管理本章要點7.1I/O設(shè)備管理概述I/O管理的功能監(jiān)視設(shè)備的狀態(tài)進行設(shè)備分配完成I/O操作緩沖管理I/O硬件組成主機I/O系統(tǒng)——四級結(jié)構(gòu)微型機I/O系統(tǒng)——單總線結(jié)構(gòu)I/O設(shè)備設(shè)備的類型塊設(shè)備—如:磁盤、磁帶,塊大小512B~32KB,通常為512B。塊設(shè)備的特點是速度高、隨機訪問、I/O采用DMA。字符設(shè)備—如:鍵盤、行式打印機。特點是速度低、不可尋址、I/O采用中斷驅(qū)動。設(shè)備控制器●設(shè)備控制器或適配器是I/O設(shè)備的電子部分,它是CPU與I/O設(shè)備之間的接口,它接收從CPU發(fā)來的命令,并控制I/O設(shè)備工作。通常一臺控制器可控制多臺同一類型的設(shè)備?!裨谖C中,設(shè)備控制器常做成印刷電路卡的形式,如I/O卡?!裨O(shè)備控制器的種類很多,需要不同的軟件來控制它,這樣的軟件就是設(shè)備驅(qū)動程序?!窨刂破鞯墓δ芙邮蘸妥R別CPU發(fā)來的命令——控制寄存器數(shù)據(jù)交換——數(shù)據(jù)寄存器了解設(shè)備的狀態(tài),報告給CPU——狀態(tài)寄存器地址識別——地址譯碼器設(shè)備控制器的組成控制器與CPU之間接口——用于控制設(shè)備與總線之間交換數(shù)據(jù)??刂破髋c設(shè)備之間接口——用于根據(jù)CPU發(fā)來的命令,控制設(shè)備的動作。I/O邏輯——用于實現(xiàn)對設(shè)備的控制。I/O邏輯對收到的地址進行譯碼,在根據(jù)譯出的命令對設(shè)備進行控制。設(shè)備通道雖然有控制器可以對設(shè)備進行控制,但當外設(shè)很多時,CPU負擔(dān)過重,為此在CPU與控制器之間增加通道。增加通道的目的“是建立獨立的I/O操作,不僅使數(shù)據(jù)的傳送能獨立于CPU,而且有關(guān)I/O操作的組織、管理及結(jié)束也盡量獨立,以保證CPU有更多的時間去進行數(shù)據(jù)處理。通道是特殊的處理機它指令單一。沒有內(nèi)存。通道的類型數(shù)組選擇通道連接磁盤等高速外設(shè)。以塊為傳送單位。通道隨與多個外設(shè)相連,但通常被一個設(shè)備專用,用完釋放后才讓給其他設(shè)備。數(shù)組多路通道連接高速外設(shè)。如磁盤。綜合字節(jié)多路通道的”并行“和選擇通道的”高速“的優(yōu)點。通道利用一臺設(shè)備”讀寫定位“的時間,再與另一外設(shè)交換信息。字節(jié)多路通道連接中、低速外設(shè)。如打印機、終端等。以字節(jié)為傳送單位。傳送時,通道與多個外設(shè)交叉?zhèn)鬟f,當一個外設(shè)交換一個字節(jié)后,立即騰出,將通道讓給另一個設(shè)備使用。通道的連接方式單通路多通路設(shè)備與計算機之間有多條通道,增加靈活性。增強可靠性。某通道、控制器壞,也不會影響數(shù)據(jù)交換。7.2I/O控制方式●I/O數(shù)據(jù)控制方式的發(fā)展經(jīng)歷了四個階段程序直接控制方式中斷驅(qū)動方式DMA控制方式通道方式●在I/O控制的整個發(fā)展過程中,始終貫穿著一條宗旨,盡量減少主機對I/O控制的干預(yù),把主機從繁雜的I/O控制事物中解脫出來,以更多地去完成數(shù)據(jù)處理任務(wù)。程序直接控制方式

忙—等待方式缺點CPU與外設(shè)只能串行工作。CPU在一段時間內(nèi)只能與一臺外設(shè)交換數(shù)據(jù)信息。無法發(fā)現(xiàn)和處理由于設(shè)備和其它硬件所產(chǎn)生的錯誤。中斷驅(qū)動方式中斷方式缺點中斷的次數(shù)過多。中斷次數(shù)的急劇增加會造成CPU無法及時響應(yīng)中斷,出現(xiàn)數(shù)據(jù)丟失現(xiàn)象。DMA控制方式●中斷方式比程序I/O方式有效,但它是以字節(jié)為單位進行的,每傳送一個字節(jié),控制器便向CPU請求一次中斷,如果將這種方式用于塊設(shè)備的I/O,顯然是低效的。例如要讀1KB的數(shù)據(jù)塊,需要中斷1K次CPU?!駷榱藴p少CPU對I/O的干預(yù),引入DMA方式。該方式的特點為:數(shù)據(jù)傳輸?shù)幕締挝皇菙?shù)據(jù)塊。所傳送的數(shù)據(jù)是從設(shè)備直接送入內(nèi)存的。僅在傳送一個或多個數(shù)據(jù)塊的開始或結(jié)束時,才需CPU干預(yù),整塊數(shù)據(jù)的傳送是在控制器的控制下完成的。DMA控制器的組成增加兩類寄存器:內(nèi)存地址寄存器MAR數(shù)據(jù)計數(shù)器DCDMA工作過程●當CPU需要從磁盤讀數(shù)據(jù)時,便向磁盤控制器DMA發(fā)命令,●該命令送命令寄存器CR,

●將內(nèi)存地址送內(nèi)存地址寄存器MAR,

●本次要讀的字節(jié)數(shù)送數(shù)據(jù)寄存器DC?!駟覦MA后,CPU干其他的事情,數(shù)據(jù)傳送在DMA的控制下完成。通道方式DMA方式比中斷方式、程序I/O方式以顯著地減少了CPU的干預(yù),即從字節(jié)為單位的干預(yù)減少到以數(shù)據(jù)塊為單位的干預(yù)。I/O通道方式是DMA方式的發(fā)展,把以數(shù)據(jù)塊為單位的干預(yù),減少到對一組數(shù)據(jù)塊為單位的干預(yù)。在DMA方式中,每發(fā)出一個I/O指令,能讀(寫)一個連續(xù)的數(shù)據(jù)塊,當需要一次去讀多個離散的數(shù)據(jù)塊且將它們分別傳送到不同的內(nèi)存區(qū)域時,則需多條I/O指令和多次中斷,而通道只需一次即可完成。通道有一系列通道指令構(gòu)成。●通道指令的格式: ●操作碼——規(guī)定了指令所要執(zhí)行的操作,如讀、寫等。 ●計數(shù)——表示本條指令要讀(寫)數(shù)據(jù)的字節(jié)數(shù)。 ●內(nèi)存地址——數(shù)據(jù)要送入的內(nèi)存地址或從內(nèi)存何處取出數(shù)據(jù) ●通道程序結(jié)束位P——表示通道程序是否結(jié)束。 P=1表示本條指令是通道程序的最后一條指令。 ●記錄結(jié)束位R——R=0表示本條通道指令與下一條通道指令 所處理的數(shù)據(jù)屬于一個記錄,

R=1表示該指令處理的數(shù)據(jù)是最后一條記錄?!裢ǖ乐噶钍纠翰僮鞔aPR計數(shù)內(nèi)存地址write002501850write01602100write11280790通道指令7.3I/O系統(tǒng)I/O系統(tǒng)層次結(jié)構(gòu)設(shè)備分配考慮因素設(shè)備固有屬性獨享設(shè)備共享設(shè)備虛擬設(shè)備設(shè)備分配中的安全性安全分配方式(單請求方式)不安全分配方式設(shè)備的獨立性設(shè)備獨立性也稱設(shè)備無關(guān)性指用戶程序獨立于具體物理設(shè)備。即用戶只需說明使用哪類設(shè)備,如打印機或顯示器(邏輯設(shè)備名),無需指定某個具體設(shè)備(物理設(shè)備名)。操作系統(tǒng)統(tǒng)一合理地進行設(shè)備分配。設(shè)備獨立性的優(yōu)點設(shè)備分配時的靈活性易于實現(xiàn)I/O重定向設(shè)備獨立性的實現(xiàn)——邏輯設(shè)備表操作系統(tǒng)實現(xiàn)邏輯設(shè)備到物理設(shè)備的轉(zhuǎn)換。邏輯設(shè)備表(LogicalUnitTable,LUT)

LUT的設(shè)置:

整個系統(tǒng)一張(單用戶系統(tǒng))一個用戶一張(多用戶系統(tǒng))設(shè)備分配用數(shù)據(jù)結(jié)構(gòu)設(shè)備控制表DCT(每個設(shè)備一張)控制器控制表COCT(每個控制器一張)通道控制表CHCT(每個通道一張)系統(tǒng)設(shè)備表SDT(整個系統(tǒng)一張)設(shè)備分配程序單通路情況下的設(shè)備分配程序SPOOLing技術(shù)——SimultanczusPeriphernalOperationsOn-LineSPOOLing的系統(tǒng)組成:輸入井和輸出井輸入緩沖區(qū)和輸出緩沖區(qū)輸入進程SPi和輸出進程SPo用SPOOLing技術(shù)共享打印機打印機是經(jīng)常要用的輸出設(shè)備,屬于獨享設(shè)備。利用SPOOLing

技術(shù),可將它改造為一臺供多用戶共享的設(shè)備,從而提高了設(shè)備的利用率。具體過程:1>用戶要求打印2>輸出進程SPO在“輸出井”為之申請一空閑盤區(qū),并將要求打印的數(shù)據(jù)送入其中。3>SPO為用戶進程申請“用戶請求打印表”,將打印要求填入其中,并將該表掛到請求打印隊列上。4>打印機空閑時,SPO從打印隊列上取出一張“請求打印表”將要打印數(shù)據(jù)從“輸出井”送到內(nèi)存“輸出緩沖區(qū)”,由打印機進行打印。5>重復(fù)4。SPOOLing特點:提高I/O速度將獨占設(shè)備改造為共享設(shè)備實現(xiàn)虛擬設(shè)備功能設(shè)備驅(qū)動程序設(shè)備驅(qū)動程序的功能:向有關(guān)I/O設(shè)備的控制器(中的控制/狀態(tài)寄存器)發(fā)出控制命令,監(jiān)督它們的正確執(zhí)行,并進行必要的錯誤處理。對等待各種設(shè)備、控制器和通道的進程進行排隊。執(zhí)行比寄存器級別更高的一些特殊處理,如代碼轉(zhuǎn)換、退出處理等。設(shè)備驅(qū)動程序的特點不同類型的設(shè)備配置不同的驅(qū)動程序。由于驅(qū)動程序與硬件緊密相關(guān),常用匯編語言寫。驅(qū)動程序的結(jié)構(gòu)與I/O設(shè)備的硬件特性緊密相關(guān)。中斷中斷是指在計算機執(zhí)行期間,系統(tǒng)內(nèi)部發(fā)生任何非尋常和非預(yù)期的急需處理事件,使得CPU暫時中斷當前正在執(zhí)行的程序,而轉(zhuǎn)去執(zhí)行相應(yīng)的事件處理程序,待處理完畢后又返回原來被中斷處,繼續(xù)執(zhí)行或調(diào)度新的進程執(zhí)行的過程。禁止中斷也被稱為關(guān)中斷。PSW的中斷允許位的被重新設(shè)置被稱為開中斷。中斷請求、關(guān)中斷和開中斷都是由硬件實現(xiàn)的。中斷屏蔽。通過在每一類中斷源設(shè)置一個中斷屏蔽觸發(fā)器,來屏蔽它們的中斷請求。中斷的分類硬中斷內(nèi)中斷外中斷軟中斷中斷優(yōu)先級●按中斷源的輕重緩急,OS對不同的中斷賦予了不同的優(yōu)先級。UNIX系統(tǒng)中,外中斷和陷入的優(yōu)先級共分為8級。Windows2000中的中斷優(yōu)先級分為32級

●所有線程都運行在中斷優(yōu)先級0和1上●所有的硬件中斷的優(yōu)先級都高于軟件中斷中斷處理過程●檢查CPU響應(yīng)中斷的條件是否滿足?!袢绻鸆PU響應(yīng)中斷,則須關(guān)中斷,使CPU進入不可再次響應(yīng)中斷的狀態(tài)。●保存被中斷進程的現(xiàn)場。●分析中斷原因。●執(zhí)行中斷處理子程序。●恢復(fù)被中斷進程的現(xiàn)場?!耖_中斷。中斷現(xiàn)場保護示意圖

7.4磁盤管理速度是影響文件系統(tǒng)性能的主要因素提高磁盤I/O速度的主要途徑:

選擇性能好的磁盤

采用好的磁盤調(diào)度算法

設(shè)置磁盤高速緩沖區(qū)磁盤性能影響磁盤性能的因素:數(shù)據(jù)的結(jié)構(gòu)磁盤的類型磁盤訪問時間磁盤結(jié)構(gòu)和管理一個磁盤含多個盤片。每個盤片含兩面。每面含若干個磁道。每條磁道上存儲相同數(shù)目的二進制位。每條磁道又分成若干個扇區(qū),一個扇區(qū)相當于一個盤塊。盤片旋轉(zhuǎn),當磁頭位于某個磁道、某個扇區(qū)下時,就可將該扇區(qū)的內(nèi)容讀出或?qū)懭?。磁盤的格式化(低級格式化)例一個磁道分成300個固定大小的扇區(qū),每個扇區(qū)的容量為600個字節(jié),其中512個字節(jié)存放數(shù)據(jù),88個字節(jié)存放控制信息。磁盤的類型固定頭磁盤每條磁道上都有一個讀/寫磁頭(大容量磁盤)移動頭磁盤每個盤面僅配一個讀/寫磁頭。即微機上用的硬盤(也叫溫切斯特硬盤)、軟盤。磁盤的訪問尋道時間Ts:磁頭從當前位置移動到指定磁道上所經(jīng)歷的時間。

(s:啟動磁盤時間、m:常數(shù)=0.3、n:磁道數(shù)) Ts:隨尋道距離的增大而增大,約10ms旋轉(zhuǎn)延遲時間Tr:磁頭找到指定的扇區(qū)所經(jīng)歷的時間。 硬盤Tr=3ms軟盤100ms傳輸時間Tt:數(shù)據(jù)從磁盤讀出,或向磁盤寫入數(shù)據(jù)所經(jīng)歷的時間。

(r:磁盤旋轉(zhuǎn)速度N:一條磁道上的字節(jié)數(shù)b:每次讀寫的字節(jié)數(shù))磁盤訪問時間

如何減少磁盤的訪問時間例2:磁盤的尋道時間為10ms,旋轉(zhuǎn)時間為10000r/min,每個磁道有320個扇區(qū),每個扇區(qū)512個字節(jié),假設(shè)讀取一個包含2560個扇區(qū)的文件,文件的大小是1.3MB現(xiàn)在估計磁盤的訪問時間。

(1)若數(shù)據(jù)順序組織:讀第一個磁道的時間如下:Ts+Tr+Tt

(讀320個扇區(qū)時間)=10ms+3ms+6ms

=19ms如果在讀其余的磁道時,不需尋道,后面每個磁道的讀取時間是3+6=9ms,讀取整個文件總時間=19+7*9=82ms=0.082s(2)如果采用隨機訪問,也就是說,訪問隨機分布在磁盤上的扇區(qū)。對于每個扇區(qū)的訪問時間為:

Ts+Tr+Tt

(讀一個扇區(qū)時間)=10ms+3ms+0.01875ms=13.01875ms,讀取整個文件總時間=2560*13.01875=33328ms=33.328s例1:設(shè)Ts+Tr=13ms,磁道的傳輸速度為1KB/s,要傳輸1K字節(jié),則Ta=13+1=14ms;要傳輸10K字節(jié),則Ta=13+10=23ms結(jié)論1:適當集中數(shù)據(jù)傳送,有利于提高傳輸速率。結(jié)論2:減少磁盤訪問時間的途徑之二:數(shù)據(jù)盡可能順序組織磁盤調(diào)度算法——FCFS:先來先服務(wù)優(yōu)點:公平、簡單。缺點:未對尋道進行優(yōu)化,平均尋道時間較長。SSTF先滿足尋道時間短的進程。優(yōu)點:對尋道優(yōu)化缺點:“饑餓”現(xiàn)象發(fā)生FCFS和SSTF磁盤調(diào)度算法——SCAN算法:

對SSTF算法進行改造,不僅考慮要訪問的磁道與當前磁盤的距離,更優(yōu)先考慮磁頭的當前移動方向。因該算法中磁頭的移動規(guī)律頗似電梯的運行,故稱“電梯調(diào)度算法”。循環(huán)掃描CSCAN:

對SCAN進行改造,解決進程嚴重延遲現(xiàn)象。內(nèi)外內(nèi)外掃描算法磁盤調(diào)度算法——SCAN和CSCAN磁盤調(diào)度算法——N-step-SCAN

對于SSTF、SCAN、CSCAN均有可能出現(xiàn)磁頭在某處停留不動的情況(如進程對某道的訪問頻率高)——稱為磁臂粘著現(xiàn)象。

N-step-SCAN算法將磁盤請求隊列分成若干個長度為N的子隊列,用FCFS依此處理這些子隊列。在每個隊列中用SCAN。 N越大(一個進程一隊)——>SCAN N越?。∟=1)——>FCFSN-step-SCAN掃描算法磁盤調(diào)度算法——FSCAN

將N-step-SCAN算法簡單化為二個隊列: 一個隊列為:當前請求磁盤I/O的進程形成的隊列。由SCAN處理。 另一個隊列為:新出現(xiàn)的請求磁盤I/O的進程形成的隊列,這樣一來,新的請求下次掃描時再處理。FSCAN掃描算法獨立磁盤冗余陣列廉價磁盤冗余陣列(ReduntantArrayofInexpensiveDisks,RAID)1987年由美國加利福尼亞大學(xué)克萊分校提出,后得到廣泛應(yīng)用。RAID技術(shù)有7級,RAID0~RAID6,不同的級別代表了不同的設(shè)計結(jié)構(gòu)。廉價磁盤冗余陣列RAID0RAID

0級——并行交叉存取系統(tǒng)中有多臺磁盤驅(qū)動器,每個磁盤被劃分成多個條帶。當要讀取磁盤上的數(shù)據(jù)時,采取并行傳輸方式,將各個磁盤條帶中的數(shù)據(jù)同時向內(nèi)存中傳輸,從而使傳輸時間大大減少。廉價磁盤冗余陣列RAID1RAID

1級——磁盤鏡像具有磁盤鏡像功能,但磁盤利用率只有50%。廉價磁盤冗余陣列RAID3RAID

3級——冗余磁盤具有并行傳輸功能的磁盤陣列。用一臺奇偶校驗盤完成容錯比RAID1,磁盤利用率高。常用于科學(xué)計算和圖像處理。假設(shè)磁盤驅(qū)動器X1出現(xiàn)故障,給上面等式的兩邊都加上,則有校驗數(shù)據(jù):廉價磁盤冗余陣列RAID5RAID

5級——冗余條帶分散在所有磁盤中具有獨立傳送傳輸功能的磁盤陣列,每個驅(qū)動器有自己獨立的數(shù)據(jù)通路,獨立地進行讀、寫,且無專門的校驗盤。常用于I/O較頻繁的事務(wù)處理。廉價磁盤冗余陣列RAID6RAID

6級——兩種奇偶校驗方法采用了兩種不同的奇偶校驗計算方法,并保存在兩個不同磁盤的不同塊中。這就使得即使有兩個包含用戶數(shù)據(jù)的磁盤出現(xiàn)故障,也可以重新生成數(shù)據(jù)。RAID的優(yōu)點●可靠性高除RAID0級外,其余各級均采用了容錯技術(shù),當陣列中某一磁盤損壞時,并不會造成數(shù)據(jù)的丟失,因為它既實現(xiàn)磁盤鏡像,有可實現(xiàn)磁盤雙工,還可實現(xiàn)其他的冗余方式,所以可以根據(jù)未損壞磁盤中的信息,來恢復(fù)已損壞的盤中的信息。●磁盤I/O速度高由于磁盤陣列可采取并行交叉存取方式,故可將磁盤I/O速度提高N-1倍。N為磁盤數(shù)目?!裥阅?價格比高用RAID技術(shù)來實現(xiàn)大容量高速度存儲器時,其體積與具有相同容量和速度的大型磁盤系統(tǒng)相比,只是后者的1/3,價格也是后者的1/3,且可靠性更高。即以犧牲1/N的容量為代價,來換取高可靠性。7.5緩沖管理 緩沖的引入緩和CPU與I/O設(shè)備間速度不匹配的矛盾減少對CPU的中斷頻率提高CPU和I/O設(shè)備之間的并行性協(xié)調(diào)傳輸數(shù)據(jù)大小不一致的設(shè)備緩沖是在通信問題中,為了使通信雙方的速度匹配而引入的一個中間層次,這個層次的速度比通信雙方中較慢的一方快,而與較快的一方更匹配。緩沖的定義緩沖的設(shè)置CACHEI/O設(shè)備或控制器內(nèi)部的純硬件緩沖區(qū)內(nèi)存開辟的緩沖區(qū)脫機I/O技術(shù)和SPOOLing技術(shù)本節(jié)重點研究的內(nèi)容——內(nèi)存中的緩沖區(qū)單緩沖

若沒有緩沖區(qū):從磁盤把一塊數(shù)據(jù)送入用戶區(qū),其所花費的時間為T,CPU對數(shù)據(jù)進行計算,其所花費的時間為C,則系統(tǒng)對整塊數(shù)據(jù)的處理時間為T+C(T與C串行)

提供緩沖區(qū)從磁盤把一塊數(shù)據(jù)送入緩沖區(qū),其所花費的時間為T,操作系統(tǒng)將緩沖區(qū)的數(shù)據(jù)送入用戶區(qū),花費的時間為M,CPU對數(shù)據(jù)進行計算,其所花費的時間為C,則系統(tǒng)對整塊數(shù)據(jù)的處理時間為max(C,T)+M(通常M遠小于T或C)

(T與C并行)問題:通常T>C,CPU等待雙緩沖

對于雙緩沖,先將數(shù)據(jù)輸入到第一個緩沖區(qū),

在向第二個緩沖區(qū)送數(shù)據(jù)的同時,CPU對第一個緩沖區(qū)中數(shù)據(jù)進行計算。

因此在有雙緩沖的情況下,系統(tǒng)處理一塊數(shù)據(jù)的時間為max(C,T)。

如果C<T,塊設(shè)備連續(xù)地輸入,CPU有短時間的等待;

如果C>T,CPU就不必等待設(shè)備輸入。問題:T>>C,CPU仍等待循環(huán)緩沖

當輸入、輸出的速度基本相匹配時,可使用雙緩沖,但若兩者的速度相差甚遠時,雙緩沖的效果就不太理想,因此可有多緩沖。典型的即生產(chǎn)者和消費者問題。緩沖池以上的緩沖只能用于某一進程,他們屬于專用緩沖。為了提高緩沖區(qū)的利用率,可采用公用緩沖池。三個緩沖區(qū)鏈組成的隊列:空緩沖區(qū)隊列emq輸入隊列inq輸出隊列outq緩沖池四種工作緩沖區(qū):用于收容輸入數(shù)據(jù)的工作緩沖區(qū)hin用于提取輸入數(shù)據(jù)的工作緩沖區(qū)sin用于收容輸出數(shù)據(jù)的工作緩沖區(qū)hout用于提取輸出數(shù)據(jù)的工作緩沖區(qū)sout緩沖池管理的兩個過程GetBuf和PutBuf

ProcedurePutbuf(type,number){ wait(MS(type)); Addbuf(type,number); Signal(MS(type)); Signal(RS(type));}ProcedureGetbuf(type){ wait(RS(type));

//同步信號燈 wait(MS(type));

//互斥信號燈B(number)=Takebuf(type);

//從隊列中摘取一緩沖區(qū) Signal(MS(type));}

對三個隊列的操作是類似的,主要有兩個操作:

AddBuf(Type,number):將由number指向的緩沖區(qū)掛在某個隊列Type

TakeBuf(Type):從Type指示的某個隊列上,摘下一個緩沖區(qū)。

實現(xiàn)互斥和同步,系統(tǒng)設(shè)置兩個過程:GetBuf和PutBuf。

緩沖池管理的工作方式

收容輸入:輸入進程需要輸入數(shù)據(jù)時,調(diào)用GetBuf(emq)從emq隊列摘下一空緩沖區(qū),作為收容輸入工作緩沖區(qū)hin。把數(shù)據(jù)輸入其中,之后調(diào)用PutBuf(inq,hin),

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論