![進(jìn)程同步問(wèn)題實(shí)例_第1頁(yè)](http://file4.renrendoc.com/view/44cc3d20d5d343309b605424c4d3a933/44cc3d20d5d343309b605424c4d3a9331.gif)
![進(jìn)程同步問(wèn)題實(shí)例_第2頁(yè)](http://file4.renrendoc.com/view/44cc3d20d5d343309b605424c4d3a933/44cc3d20d5d343309b605424c4d3a9332.gif)
![進(jìn)程同步問(wèn)題實(shí)例_第3頁(yè)](http://file4.renrendoc.com/view/44cc3d20d5d343309b605424c4d3a933/44cc3d20d5d343309b605424c4d3a9333.gif)
![進(jìn)程同步問(wèn)題實(shí)例_第4頁(yè)](http://file4.renrendoc.com/view/44cc3d20d5d343309b605424c4d3a933/44cc3d20d5d343309b605424c4d3a9334.gif)
![進(jìn)程同步問(wèn)題實(shí)例_第5頁(yè)](http://file4.renrendoc.com/view/44cc3d20d5d343309b605424c4d3a933/44cc3d20d5d343309b605424c4d3a9335.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
操作系統(tǒng)概念進(jìn)程同步問(wèn)題實(shí)例1本章主要內(nèi)容經(jīng)典同步問(wèn)題生產(chǎn)者-消費(fèi)者問(wèn)題:緩沖區(qū)問(wèn)題嗜睡理發(fā)師問(wèn)題吸煙者問(wèn)題吃水果問(wèn)題21經(jīng)典同步問(wèn)題有限緩沖問(wèn)題讀者-作者問(wèn)題哲學(xué)家進(jìn)餐問(wèn)題3有限緩沖問(wèn)題(生產(chǎn)者-消費(fèi)者問(wèn)題)do{ … produceaniteminnextp … wait(empty); wait(mutex); … addnextptobuffer … signal(mutex); signal(full);}while(1);do{ wait(full); wait(mutex); … removeanitemfrombuffertonextc … signal(mutex); signal(empty); … consumetheiteminnextc …}while(1);4讀者-作者問(wèn)題一個(gè)數(shù)據(jù)對(duì)象可以為多個(gè)并發(fā)進(jìn)程所共享。其中有的進(jìn)程可能只需要讀共享對(duì)象的內(nèi)容,而其他進(jìn)程可能要更新共享對(duì)象(即讀和寫)。將只對(duì)讀感興趣的進(jìn)程稱為讀者其他則稱為作者第一讀者-作者問(wèn)題僅當(dāng)無(wú)讀者等待時(shí),才允許寫者執(zhí)行第二讀者-作者問(wèn)題在讀者與作者同時(shí)申請(qǐng)資源的時(shí)候,寫者優(yōu)先。5第一讀者-作者問(wèn)題wait(wrt);…writingisperformed…signal(wrt);wait(mutex);readcount++;if(readcount==1) wait(wrt);signal(mutex);…readingisperformed…wait(mutex);readcount--;if(readcount==0) signal(wrt);signal(mutex);6哲學(xué)家就餐問(wèn)題7
共享數(shù)據(jù)semaphorechopstick[5];哲學(xué)家i結(jié)構(gòu)do{ wait(chopstick[i]); wait(chopstick[(I+1)%5]); … eat … signal(chopstick[i]); signal(chopstick[(I+1)%5]); … think …}while(1);82緩沖區(qū)問(wèn)題(生產(chǎn)者-消費(fèi)者問(wèn)題)三個(gè)進(jìn)程P1、P2、P3互斥使用一個(gè)包含N(N>0)個(gè)單元的緩沖區(qū)。P1每次用produce()生成一個(gè)正整數(shù)并用put()送入緩沖區(qū)某一個(gè)空單元中;P2每次用getodd()從該緩沖區(qū)中取出一個(gè)奇數(shù)并用countodd()統(tǒng)計(jì)奇數(shù)個(gè)數(shù);P3每次用geteven()從該緩沖區(qū)中取出一個(gè)偶數(shù)并用counteven()統(tǒng)計(jì)偶數(shù)個(gè)數(shù)。請(qǐng)用信號(hào)量機(jī)制實(shí)現(xiàn)這三個(gè)進(jìn)程的同步與互斥活動(dòng),并說(shuō)明所定義的信號(hào)量的含義。要求用偽代碼描述。9緩沖區(qū)問(wèn)題求解(1)緩沖區(qū)是一互斥資源,因此設(shè)互斥信號(hào)量mutex。(2)同步問(wèn)題:P1、P2因?yàn)槠鏀?shù)的放置與取用而同步,設(shè)同步信號(hào)量odd;P1、P3因?yàn)榕紨?shù)的放置于取用而同步,設(shè)同步信號(hào)量even;P1、P2、P3因?yàn)楣蚕砭彌_區(qū),設(shè)同步信號(hào)量empty。semaphoremutex=1,odd=0,even=0,empty=N;ProcessP1:while(true){number=produce();P(empty);P(mutex);put();V(mutex);Ifnumber%2==0V(even);elseV(odd);}10緩沖區(qū)問(wèn)題求解ProcessP2:while(true){P(odd);P(mutex);getodd();V(mutex);V(empty);countodd();}ProcessP3:while(true){P(even);P(mutex);geteven();V(mutex);V(empty);counteven();}113嗜睡理發(fā)師問(wèn)題一個(gè)理發(fā)店里有一個(gè)理發(fā)師,一張理發(fā)椅子,多張等候的椅子,當(dāng)沒(méi)有顧客的時(shí)候,理發(fā)師就睡覺(jué)。當(dāng)一個(gè)顧客來(lái)到店里時(shí),如果理發(fā)師在睡覺(jué),則叫醒理發(fā)師;否則便坐著等;如果等待的椅子都滿了就離開。
123嗜睡理發(fā)師問(wèn)題int
waiting=0;//等候理發(fā)的顧客數(shù)
int
chairs=5;
//為顧客準(zhǔn)備的椅子數(shù)
semaphore
customers=0,barbers=0,mutex=1;
Barber進(jìn)程:while(TRUE){P(cutomers);//若無(wú)顧客,理發(fā)師睡眠P(mutex);//進(jìn)程互斥,要求顧客等候
waiting=waiting–1;//等候顧客數(shù)少一個(gè)V(barbers);//理發(fā)師去為一個(gè)顧客理發(fā)V(mutex);//開放臨界區(qū)cut-hair();//正在理發(fā)(非臨界區(qū)操作)}Customer進(jìn)程:P(mutex);//進(jìn)入臨界區(qū)if(waiting<chairs){waiting=waiting+1;//等候顧客數(shù)加1V(customers);//必要的話喚醒理發(fā)師V(mutex);//開放臨界區(qū)P(barbers);//無(wú)理發(fā)師,顧客坐著養(yǎng)神get-haircut();//一個(gè)顧客坐下等候服務(wù)}elseV(mutex);//人滿了,上自習(xí)去!134吸煙者問(wèn)題三個(gè)吸煙者在一間房間內(nèi),還有一個(gè)香煙供應(yīng)者。(1)為了制造并抽掉香煙,每個(gè)吸煙者需要三樣?xùn)|西:煙草、紙和火柴。(2)供應(yīng)者有豐富的貨物提供。(3)三個(gè)吸煙者中,第一個(gè)有自己的煙草,第二個(gè)有自己的紙,第三個(gè)有自己的火柴。(4)供應(yīng)者將兩樣?xùn)|西放在桌子上,允許一個(gè)吸煙者進(jìn)行對(duì)健康不利的吸煙。當(dāng)吸煙者完成吸煙后喚醒供應(yīng)者,供應(yīng)者再放兩樣?xùn)|西(隨機(jī)地)在桌面上,然后喚醒另一個(gè)吸煙者。試為吸煙者和供應(yīng)者用同步法解決問(wèn)題。144吸煙者問(wèn)題供應(yīng)者需要3個(gè)進(jìn)程X:提供tobacco和matchY:提供match和wrapperZ:提供wrapper和tobacco3個(gè)吸煙者進(jìn)程A:只有tobaccoB:只有matchC:只有wrapper則一次只能有X,Y,Z中的一個(gè)執(zhí)行(供應(yīng));X,Y,Z只能在消耗完一個(gè)后才能供應(yīng)下一個(gè)154吸煙者問(wèn)題Semaphoretobacco=0,match=0,wrapper=0,mutex=1;ProcessX:P(mutex);V(tobacco);V(match);ProcessY:P(mutex);V(match);V(wrapper);ProcessZ:P(mutex);V(wrapper);V(tobacco);ProcessA:P(match);P(wrapper);Smoke;V(mutex);ProcessB:P(wrapper);P(tobacco);Smoke;V(mutex);ProcessC:P(tobacco);P(match);Smoke;V(mutex);16桌上有一空盤,允許存放一只水果。爸爸向盤中放蘋果,媽媽向盤中放桔子,兒子專等吃盤中的桔子,女兒專等吃盤中的蘋果。規(guī)定當(dāng)盤空時(shí)一次只能放一只水果供吃者取用,請(qǐng)用P、V原語(yǔ)實(shí)現(xiàn)爸爸、媽媽、兒子、女兒三個(gè)并發(fā)進(jìn)程的同步。5吃水果問(wèn)題plate爸爸媽媽兒子女兒175吃水果問(wèn)題應(yīng)設(shè)置三個(gè)信號(hào)量S、So、Sa,信號(hào)量S表示盤子是否為空,其初值為1;信號(hào)量So表示盤中是否有桔子,其初值為0;信號(hào)量Sa表示盤中是否有蘋果,其初值為0。同步描述如下:SemaphorS=1,
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(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-2031年中國(guó)銀行IT服務(wù)行業(yè)發(fā)展運(yùn)行現(xiàn)狀及發(fā)展趨勢(shì)預(yù)測(cè)報(bào)告
- 2025年篷帳布基布行業(yè)深度研究分析報(bào)告-20241226-193707
- 電力穩(wěn)定供應(yīng)與醫(yī)療設(shè)備安全運(yùn)行
- 2025年后懸掛割草機(jī)項(xiàng)目可行性研究報(bào)告
- 2025年氧化物玻璃生產(chǎn)建設(shè)項(xiàng)目節(jié)能評(píng)估報(bào)告(節(jié)能專)
- 醫(yī)院共同投資合同范本
- 看守所建設(shè)項(xiàng)目可行性研究報(bào)告(完美版)
- 倉(cāng)儲(chǔ)售賣瓷磚合同范本
- 與物流簽發(fā)貨合同范本
- 寫好網(wǎng)上商城合同范本
- 無(wú)人機(jī)飛行原理與性能理論知識(shí)考試題庫(kù)及答案
- 旅游學(xué)概論(第五版)課件 第一章 旅游學(xué)概述
- 陜西少華山森林公園管軌式滑道項(xiàng)目 環(huán)境影響報(bào)告書
- 場(chǎng)地自行車講解材料
- 道路工程試驗(yàn)檢測(cè)培訓(xùn)課件
- 2024年青島酒店管理職業(yè)技術(shù)學(xué)院高職單招(英語(yǔ)/數(shù)學(xué)/語(yǔ)文)筆試歷年參考題庫(kù)含答案解析
- 預(yù)防食物過(guò)敏
- 16學(xué)時(shí)《中醫(yī)藥膳學(xué)》教學(xué)大綱(可編輯修改文本版)
- 媒體和傳媒行業(yè)的技術(shù)培訓(xùn)資料
- 中國(guó)一流大學(xué)國(guó)際傳播力及其影響因素
- 概算審核服務(wù)投標(biāo)方案(技術(shù)方案)
評(píng)論
0/150
提交評(píng)論