操作系統(tǒng)課后習(xí)題第二PPT課件_第1頁
操作系統(tǒng)課后習(xí)題第二PPT課件_第2頁
操作系統(tǒng)課后習(xí)題第二PPT課件_第3頁
操作系統(tǒng)課后習(xí)題第二PPT課件_第4頁
操作系統(tǒng)課后習(xí)題第二PPT課件_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、.,1,進(jìn)程和線程的關(guān)系,線程是進(jìn)程的一個(gè)組成部分,一個(gè)進(jìn)程可以有多個(gè)線程,而且至少有一個(gè)可執(zhí)行線程。進(jìn)程的多個(gè)線程都在進(jìn)程的地址空間內(nèi)活動(dòng)。資源是分給進(jìn)程的,而不是分給線程的,線程需要資源時(shí),系統(tǒng)從進(jìn)程的資源配額中扣除并分配給它。,.,2,處理機(jī)調(diào)度的基本單位是線程,線程之間競(jìng)爭(zhēng)處理機(jī),真正在處理機(jī)上運(yùn)行的是線程。線程在執(zhí)行過程中,需要同步。,.,3,例題1,有一單向行駛的公路橋,每次只允許一輛汽車通過,當(dāng)汽車到達(dá)橋頭時(shí),若橋上無車,便可上橋;否則需等待,直到橋上的汽車下橋?yàn)橹?,若每一輛汽車為一個(gè)進(jìn)程,請(qǐng)用P、V操作編程實(shí)現(xiàn)。,.,4,解:設(shè)信號(hào)量初值S=1汽車進(jìn)程Pi(i=1,2,3,)到

2、達(dá)橋頭P(s)上橋行駛到達(dá)橋另一端V(s),.,5,例題二,若有一售票廳只能容納300人,當(dāng)少于300人時(shí),可以進(jìn)入。否則,需在外等候,若將每一個(gè)購票者作為一個(gè)進(jìn)程,請(qǐng)用P、V操作編程。,.,6,解:信號(hào)量初值S=300購票者進(jìn)程Pi(i=1,2,3,)P(s)進(jìn)入售票廳購票退出售票廳V(s),.,7,例題三,有三個(gè)進(jìn)程PA、PB、PC合作解決文件打印問題:PA將文件記錄從磁盤讀入內(nèi)存的緩沖區(qū)1,每執(zhí)行一次讀一個(gè)記錄;PB將緩沖區(qū)1的記錄復(fù)制到緩沖區(qū)2,每執(zhí)行一次復(fù)制一個(gè)記錄;PC打印緩沖區(qū)2中的記錄,每執(zhí)行一次打印一個(gè)記錄。每個(gè)緩沖區(qū)只能存放一個(gè)記錄。請(qǐng)用信號(hào)量機(jī)制實(shí)現(xiàn)文件的正確打印。,.,

3、8,解:設(shè)置四個(gè)信號(hào)量empty1、empty2、full1、full2,其中empty1、empty2分別表示緩沖區(qū)1和2是否為空,初值為1;full1、full2分別表示緩沖區(qū)1和2是否有記錄,初值為0。,.,9,PA進(jìn)程PB進(jìn)程PC進(jìn)程讀一個(gè)記錄P(full1)P(full2)P(empty1)從緩1取一個(gè)記錄從緩2取一個(gè)記錄存入緩沖區(qū)1V(empty1)V(empty2)V(full1)P(empty2)打印輸出記錄存入緩沖區(qū)2V(full2),.,10,例題四,有一只鐵籠子,每次只能放入一只動(dòng)物,獵手向籠中放入老虎,農(nóng)民向籠中放入豬,動(dòng)物園等待取籠中的老虎,飯店等待取籠中的豬,試用P

4、、V操作寫出能同步執(zhí)行的程序。,.,11,解:兩個(gè)生產(chǎn)者和兩個(gè)消費(fèi)者共享了一個(gè)僅能存放一件產(chǎn)品的緩沖器,生產(chǎn)者各自生產(chǎn)不同的產(chǎn)品,消費(fèi)者各自取自己需要的產(chǎn)品,P、V操作編程為:,.,12,獵手進(jìn)程農(nóng)民進(jìn)程動(dòng)物園進(jìn)程飯店進(jìn)程P(s)P(s)P(s1)P(s2)放入虎放入豬買老虎買豬V(s1)V(s2)V(s)V(s)其中S初值=1,S1=S2=0,.,13,例題五,桌上有一只盤子,每次只能放入一個(gè)水果。爸爸專向盤中放蘋果,媽媽專向盤中放桔子,女兒專等吃盤中的蘋果,兒子專等吃盤中的桔子。用P、V操作寫出它們能正確同步的程序。,.,14,解:信號(hào)量初值S1=0,S2=0,S=1爸爸進(jìn)程媽媽進(jìn)程女兒進(jìn)

5、程兒子進(jìn)程repeatrepeatrepeatrepeatP(s)P(s)P(s1)P(s2)放蘋果放桔子取蘋果取桔子V(s1)V(s2)V(s)V(s)untilfalseuntilfalseuntilfalseuntilfalse,.,15,例題六,設(shè)有兩個(gè)優(yōu)先級(jí)相同的進(jìn)程P1和P2如下,S1和S2初值均為0,求:P1,P2并發(fā)執(zhí)行結(jié)束后,x,y,z分別是多少?進(jìn)程P1進(jìn)程P2y:=1;x:=1;y:=y+2;x:=x+1;V(s1);P(s1);z:=y+1;x:=x+y;P(s2);V(s2)y:=z+y;z:=x+z;,.,16,解:因?yàn)镻1、P2是并發(fā)進(jìn)程,所以P1和P2調(diào)度順序不

6、確定。假設(shè)P1先執(zhí)行,當(dāng)P1執(zhí)行到P(s2)時(shí),s2=-1,P1阻塞,此時(shí)y=3,z=4;當(dāng)調(diào)度程序調(diào)度到P2時(shí),由于進(jìn)程P1巳執(zhí)行到了V(s1),P2在執(zhí)行P(s1)時(shí),不阻塞而繼續(xù)執(zhí)行,當(dāng)執(zhí)行到V(s2)時(shí),將P1喚醒,然后執(zhí)行到最后一個(gè)語句,此時(shí)x=5,z=9;當(dāng)P1再次被喚醒、調(diào)度時(shí),,.,17,繼續(xù)執(zhí)行P1的最后一處語句,此時(shí)y=12.所以最后結(jié)果是:x=5,y=12,z=9.如果P2先執(zhí)行,結(jié)果同上。,.,18,習(xí)題1:有三個(gè)并發(fā)進(jìn)程使用同一個(gè)緩沖區(qū),進(jìn)程P1負(fù)責(zé)寫數(shù)據(jù)到緩沖區(qū),P2負(fù)責(zé)加工緩沖區(qū)中的數(shù)據(jù),進(jìn)程P3負(fù)責(zé)將緩沖區(qū)中加工后的數(shù)據(jù)輸出.在進(jìn)程P3沒有輸完之前,進(jìn)程P1不能

7、讀入新的數(shù)據(jù)到緩沖區(qū)中.請(qǐng)用P、V操作編程.,.,19,解:信號(hào)量初值:S1=0,S2=0,S=1進(jìn)程P1進(jìn)程P2進(jìn)程P3P(S)P(S1)P(S2)讀數(shù)據(jù)到緩沖區(qū)加工輸出V(S1)V(S2)V(S),.,20,習(xí)題2:設(shè)有六個(gè)進(jìn)程P1、P2、P3、P4、P5、P6,它們并發(fā)執(zhí)行。由P1開始執(zhí)行,P6執(zhí)行后結(jié)束。當(dāng)進(jìn)程P1執(zhí)行后,進(jìn)程P2、P3才能執(zhí)行;當(dāng)進(jìn)程P2執(zhí)行后,進(jìn)程P4才能執(zhí)行;當(dāng)進(jìn)程P3執(zhí)行后,進(jìn)程P5才能執(zhí)行;當(dāng)進(jìn)程P4、P5都執(zhí)行后,進(jìn)程P6才能執(zhí)行;請(qǐng)用P、V操作編程.,.,21,解:這是一個(gè)同步問題,信號(hào)量初值:S2=0,S3=0,S4=0,S5=0,S6=0進(jìn)程P1進(jìn)程P

8、2進(jìn)程P3執(zhí)行P1P(S2)P(S3)V(S2)執(zhí)行P2執(zhí)行P3V(S3)V(S4)V(S5),.,22,進(jìn)程P4進(jìn)程P5進(jìn)程P6P(S4)P(S5)P(S6)執(zhí)行P4執(zhí)行P5P(S6)V(S6)V(S6)執(zhí)行P6,.,23,習(xí)題3三個(gè)進(jìn)程P1、P2、P3互斥使用一個(gè)包含N(N0)個(gè)單元的緩沖區(qū)。P1每次用produce()生產(chǎn)廠一個(gè)正整數(shù)并用put()送入緩沖區(qū)某一空單元中;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)這3個(gè)進(jìn)程的同步于互斥活動(dòng),并說明所定義的信號(hào)量的含義。要求用偽代碼描述。,.,24,解:設(shè)資源信號(hào)量empty為空緩沖區(qū)個(gè)數(shù),互斥信號(hào)量mutex對(duì)緩沖區(qū)的使用,s1表示是否有奇數(shù),s2表示是否有偶數(shù)。初值為:empty=N,mutex=1,s1=0,s2=0,.,25,P1beginx=produce()p(empty)p(mutex)put()if(x%2=0)v(s2)else

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論