版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
6.7緩?沖?區(qū)?管?理
在現(xiàn)代操作系統(tǒng)中,幾乎所有的I/O設(shè)備在與處理機交換數(shù)據(jù)時都用了緩沖區(qū)。緩沖區(qū)是一個存儲區(qū)域,它可以由專門的硬件寄存器組成,但由于硬件的成本較高,容量也較小,一般僅用在對速度要求非常高的場合,如存儲器管理中所用的聯(lián)想存儲器;設(shè)備控制器中用的數(shù)據(jù)緩沖區(qū)等。6.7.1緩沖的引入
引入緩沖區(qū)的原因有很多,可歸結(jié)為以下幾點:
(1)緩和CPU與I/O設(shè)備間速度不匹配的矛盾。
(2)減少對CPU的中斷頻率,放寬對CPU中斷響應(yīng)時間的限制。
(3)解決數(shù)據(jù)粒度不匹配的問題。
(4)提高CPU和I/O設(shè)備之間的并行性。圖6-22利用緩沖寄存器實現(xiàn)緩沖6.7.2單緩沖區(qū)和雙緩沖區(qū)
1.單緩沖區(qū)(SingleBuffer)
在單緩沖情況下,每當(dāng)用戶進程發(fā)出一I/O請求時,操作系統(tǒng)便在主存中為之分配一緩沖區(qū),如圖6-23所示。圖6-23單緩沖工作示意圖
2.雙緩沖區(qū)(DoubleBuffer)
由于緩沖區(qū)是共享資源,生產(chǎn)者與消費者在使用緩沖區(qū)時必須互斥。如果消費者尚未取走緩沖區(qū)中的數(shù)據(jù),即使生產(chǎn)者又生產(chǎn)出新的數(shù)據(jù),也無法將它送入緩沖區(qū),生產(chǎn)者等待。如果為生產(chǎn)者與消費者設(shè)置了兩個緩沖區(qū),便能解決這一問題。圖6-24雙緩沖工作示意圖如果在實現(xiàn)兩臺機器之間的通信時僅為它們配置了單緩沖,如圖6-25(a)所示,那么,它們之間在任一時刻都只能實現(xiàn)單方向的數(shù)據(jù)傳輸。例如,只允許把數(shù)據(jù)從A傳送到B,或者從B傳送到A,而絕不允許雙方同時向?qū)Ψ桨l(fā)送數(shù)據(jù)。為了實現(xiàn)雙向數(shù)據(jù)傳輸,必須在兩臺機器中都設(shè)置兩個緩沖區(qū),一個用作發(fā)送緩沖區(qū),另一個用作接收緩沖區(qū),如圖6-25(b)所示。圖6-25雙機通信時緩沖區(qū)的設(shè)置6.7.3環(huán)形緩沖區(qū)
1.環(huán)形緩沖區(qū)的組成
(1)多個緩沖區(qū)。在環(huán)形緩沖中包括多個緩沖區(qū),其每個緩沖區(qū)的大小相同。作為輸入的多緩沖區(qū)可分為三種類型:用于裝輸入數(shù)據(jù)的空緩沖區(qū)R、已裝滿數(shù)據(jù)的緩沖區(qū)G以及計算進程正在使用的現(xiàn)行工作緩沖區(qū)C,如圖6-26所示。圖6-26環(huán)形緩沖區(qū)
2.環(huán)形緩沖區(qū)的使用
計算進程和輸入進程可利用下述兩個過程來使用形環(huán)緩沖區(qū)。
(1)Getbuf過程。
(2)Releasebuf過程。
3.進程之間的同步問題
使用輸入循環(huán)緩沖,可使輸入進程和計算進程并行執(zhí)行。相應(yīng)地,指針Nexti和指針Nextg將不斷地沿著順時針方向移動,這樣就可能出現(xiàn)下述兩種情況:
(1)Nexti指針追趕上Nextg指針。
(2)Nextg指針追趕上Nexti指針。6.7.4緩沖池(BufferPool)
1.緩沖池的組成
緩沖池管理著多個緩沖區(qū),每個緩沖區(qū)由用于標(biāo)識和管理的緩沖首部以及用于存放數(shù)據(jù)的緩沖體兩部分組成。緩沖首部一般包括緩沖區(qū)號、設(shè)備號、設(shè)備上的數(shù)據(jù)塊號、同步信號量以及隊列鏈接指針等。為了管理上的方便,一般將緩沖池中具有相同類型的緩沖區(qū)鏈接成一個隊列,于是可形成以下三個隊列:
(1)空白緩沖隊列emq。
(2)輸入隊列inq。
(3)輸出隊列outq。
2.?Getbuf過程和Putbuf過程
在數(shù)據(jù)結(jié)構(gòu)課程中,曾介紹過隊列和對隊列進行操作的兩個過程,第一個是Addbuf(type,number)過程。該過程用于將由參數(shù)number所指示的緩沖區(qū)B掛在type隊列上。第二個是Takebuf(type)過程。它用于從typ
溫馨提示
- 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)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 創(chuàng)新產(chǎn)品專利授權(quán)合同(2篇)
- 2024年度天津市公共營養(yǎng)師之二級營養(yǎng)師題庫與答案
- 2024年度四川省公共營養(yǎng)師之三級營養(yǎng)師自我提分評估(附答案)
- 2024年度四川省公共營養(yǎng)師之二級營養(yǎng)師題庫附答案(典型題)
- 2025年中國資產(chǎn)管理行業(yè)發(fā)展監(jiān)測及投資戰(zhàn)略規(guī)劃研究報告
- 中國共聚焦顯微鏡行業(yè)發(fā)展運行現(xiàn)狀及投資策略研究報告
- 2024-2030年中國航運金融行業(yè)發(fā)展運行現(xiàn)狀及投資策略研究報告
- 中國TETR(數(shù)字集群無線電)系統(tǒng)行業(yè)競爭模式與發(fā)展戰(zhàn)略研究報告
- 2025年全新消防驗收報告范本(二)
- 2019-2025年中國支線航空市場供需格局及未來發(fā)展趨勢報告
- 2024年山西廣播電視臺招聘20人歷年高頻500題難、易錯點模擬試題附帶答案詳解
- 2024山西太原文化局直屬事業(yè)單位招聘30人歷年高頻500題難、易錯點模擬試題附帶答案詳解
- 中國普通食物營養(yǎng)成分表(修正版)
- 2024年北京市第一次普通高中學(xué)業(yè)水平合格性考試英語仿真模擬卷03(全解全析)
- 2024年江蘇省淮安技師學(xué)院長期招聘高技能人才3人高頻考題難、易錯點模擬試題(共500題)附帶答案詳解
- 應(yīng)急救援員五級理論考試題庫含答案
- 2024年導(dǎo)游服務(wù)技能大賽《導(dǎo)游綜合知識測試》題庫及答案
- 高中化學(xué)實驗開展情況的調(diào)查問卷教師版
- 《聲聲慢(尋尋覓覓)》課件 統(tǒng)編版高中語文必修上冊
- 初中物理-:八年級上學(xué)期競賽題
- 生物治療與再生醫(yī)療應(yīng)用
評論
0/150
提交評論