典型例題PV操作_第1頁
典型例題PV操作_第2頁
典型例題PV操作_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

1、1、請用信號(hào)量解決以下的“過獨(dú)木橋問題:同一方向的行人可連續(xù)過橋,當(dāng)某一方向有人過橋時(shí),另一方向的行人必須等待;當(dāng)某 一方向無人過橋時(shí),另一方向的行人可以過橋。將獨(dú)木橋的兩個(gè)方向分別標(biāo)記為A和B;并用整形變量countA和 coimtE分別表示A、E方向上已在獨(dú)木橋上的行人數(shù),初值為0; 再設(shè)置三個(gè)初值都1的互斥信號(hào)量:SA用來實(shí)現(xiàn)對countA的互斥 訪問,SB用來實(shí)現(xiàn)對countB的互斥訪問,mutex用來實(shí)現(xiàn)兩個(gè)方向 的行人對獨(dú)木橋的互斥使用。則具體描述如下:VarSA, SB .mutex: semaphore:=1,1,1;endCount AfoimtB: integer: =0

2、O beginparbeginCount AfoimtB: integer: =0 O beginparbeginprocessA: beginwait(SA);if(coiintA=0) thenwait(mutex);countA:=countA+l;signal(SA);過獨(dú)木橋;wait(SA);countA:=countA-1;if (countA=0) then signal(mutex);signa(SA);processB: beginwait(SB);if(countB=0) thenwait(mutex);countB :=countB+1;signal(SB);過獨(dú)木橋;

3、wait(SB);countB :=countB-1;if (countB=0) then signal(mutex);signa(SB);endparendend2、有一閱覽室,共有100個(gè)座位。為了很好利用它,讀者進(jìn)入時(shí)必 須先在登記表上進(jìn)行登記。該表表目設(shè)有座位號(hào)和讀者姓名;離開 時(shí)再將其登記項(xiàng)扌賓除。試用P、V操作描述進(jìn)程之間的同步或算法。試寫岀讀者迸入”和注銷”之間的同步算法。答:讀者的動(dòng)作有兩個(gè),一是填表進(jìn)入閱覽室讀書,這時(shí)要考虎閱覽室里是否有座位; 二是讀者聞讀完畢,需要注銷登記再離開閱覽室,這時(shí)的操作要考虎閱覽室里是否有 讀者存在。讀者在閱覽室讀書時(shí),由于沒有引起資源的變動(dòng),不

4、算動(dòng)作變化。因此,設(shè)置算法所涉及的三個(gè)信號(hào)量:empty資源信號(hào)量一表示閱怎室里的空 座位的數(shù)目,初值為100 ;full資源信號(hào)量一示闔覽室里有人的座位的數(shù)目(或 表示聞?dòng)[室里的讀者的數(shù)目)”初值為0 ; mutex互斥信號(hào)量一表示對登記表這個(gè) 臨界資源的互斥訪問,初值設(shè)為10 使用信號(hào)量機(jī)制對讀者進(jìn)入閱覽室和注銷“登記之間的同步算法描述如下:Semaphore empty,full,mutex; 首先定義兩個(gè)資源信號(hào)量empty, full和一個(gè)互斥信號(hào) 量 mutexempty.value= 100; full.value=O;mutex.value=l;cobegi nprocess getin() 讀者進(jìn)入閱覽室的進(jìn)程while(l)P (empty);沒有座位則離開P (mutex);迸入臨界區(qū)填寫登記表;進(jìn)入閱覽室讀書;V (mutex);離開臨界區(qū)V (full);V (full);process getout () 讀者注銷登記、離開閱覽室的進(jìn)程while(l)P(full);閱覽室是否有人在讀書(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論