課件復習二章練習_第1頁
課件復習二章練習_第2頁
課件復習二章練習_第3頁
課件復習二章練習_第4頁
課件復習二章練習_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1.一條小河上有一座獨木橋,規(guī)定每次只允許一個人過橋?,F(xiàn)河東和河西都有相等的人數(shù)在等待過橋,為了使兩邊的人都有同樣的過橋機會,規(guī)定某邊的一個人過橋后要讓另一邊的一個人過橋,即兩邊的人交替過橋。如果把每個過橋者看做一個進程,為保證安全,可用PV操作來管理。(1)寫出應定義的信號量及其初值。(2)假定開始時讓河東的一個人先過橋,然后交替過橋。請用適當?shù)腜V操作,達到上述管理要求。

1.解答:1)定義兩個信號量S1和S2,S1:=1,S2:=0。2)假定開始時讓河東的一個人先過橋,則用PV操作管理時的程序應如下:processE->W;

begin

……

P(S1);

過橋;

V(S2);

……

end;

processW->E;

begin

……

P(S2);

過橋;

V(S1);

……

end;

2.某車站售票廳,任何時刻最多可容納20名購票者進入,當售票廳中少于20名購票者時,則廳外的購票者可立即進入,否則需在外面等待。若把一個購票者看作一個進程,請回答下列問題:

(1)用PV操作管理這些并發(fā)進程時,應怎樣定義信號量,寫出信號量的初值以及信號量各種取值的含義。

(2)根據(jù)所定義的信號量,利用PV操作寫出能正確并發(fā)執(zhí)行的進程。

(3)若欲購票者最多為n個人,寫出信號量可能的變化范圍(最大值和最小值)。解答3.某高校計算機系開設網(wǎng)絡課并安排上機實習,假設機房共有2m臺機器,有2n名學生,規(guī)定:每兩個學生組成一組,各占一臺機器,協(xié)同完成實習;只有一組兩個學生到齊,并且此時機房有空閑機器時,該組學生才能進入機房;上機實習由一名教師檢查,當學生上完機后,教師檢查完一組學生的實習后,這組學生才能同時離開。試用P,V操作模擬上機實習的過程。(提示:除了有學生和教師進程外,還應該有門衛(wèi)進程)解答4.某工廠有兩個生產車間和一個裝配車間,兩個生產車間分別生產A、B兩種零件,裝配車間的任務是把A、B兩種零件組裝成產品。兩個生產車間每生產一個零件后都要分別把它們送到裝配車間的貨架F1和F2上,F(xiàn)1存放A、F2存放B;

F1、F2的容量均為10。裝配工人每次從貨架上取一個零件A和B后組裝成產品。請用P、V操作進行正確的管理。解答2.答:(1)定義一信號量S,初始值為20。意義:

S>0S的值表示可繼續(xù)進入售票廳的人數(shù)

S=0表示售票廳中已有20名顧客(購票者)S<0|S|的值為等待進入售票廳的人數(shù)(2)COBEGINPROCESSPi(i=1,2,……)begin;

P(S);進入售票廳;購票;退出;

V(S);

end;

COEND(3)S的最大值為20S的最小值為20-nstudent:

beginP(computer);//得到一臺計算機

V(student);//有學生來,通知門衛(wèi)

P(enter);//等待進入

Practice;V(finish);//結束,通知教師

P(test);//等待教師檢查

V(computer);//釋放計算機資源

End;Teacher:beginP(finish);//等待學生實習結束

P(finish);//等另一學生實習結束

Check;V(test);//檢查完成

V(test);//檢查完成

End;Guard:beginP(student);//等待學生到達

P(student);//等待另一學生到達

V(enter);//允許學生進入

V(enter);//允許另一學生進入

End;Varputer,enter,finish,test:semaphore:=0,2m,0,0,0;3.解答:返回(2)COBEGIN

PROCESSP1begin;生產一個零件A

P(puta);

P(mutex1)放到貨架F1;

V(mutex1)

V(geta);

end;

PROCESSP2begin;生產一個零件B

P(putb);

P(mutex2)放到貨架F2;

V(mutex2)

V(getb);

end;

4、解答:

(1)varputa,geta,putb,getb,mutex1,mutex2:semaphore=10,0,10,0,1,1返回PROCESSCbegin;

P(geta);

P(mutex1);從貨架F1取零件A;

V(mutex1);

V(puta);

P(getb)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論