![第二章進程管理課堂討論-習(xí)題_第1頁](http://file4.renrendoc.com/view/e8a010ea9b5ce2b79f3f103e9eb98ecc/e8a010ea9b5ce2b79f3f103e9eb98ecc1.gif)
![第二章進程管理課堂討論-習(xí)題_第2頁](http://file4.renrendoc.com/view/e8a010ea9b5ce2b79f3f103e9eb98ecc/e8a010ea9b5ce2b79f3f103e9eb98ecc2.gif)
![第二章進程管理課堂討論-習(xí)題_第3頁](http://file4.renrendoc.com/view/e8a010ea9b5ce2b79f3f103e9eb98ecc/e8a010ea9b5ce2b79f3f103e9eb98ecc3.gif)
![第二章進程管理課堂討論-習(xí)題_第4頁](http://file4.renrendoc.com/view/e8a010ea9b5ce2b79f3f103e9eb98ecc/e8a010ea9b5ce2b79f3f103e9eb98ecc4.gif)
![第二章進程管理課堂討論-習(xí)題_第5頁](http://file4.renrendoc.com/view/e8a010ea9b5ce2b79f3f103e9eb98ecc/e8a010ea9b5ce2b79f3f103e9eb98ecc5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
進程:概念,特征,進程控制塊,狀態(tài)及其轉(zhuǎn)換,進程與程序的比較進程的同步與互斥:同步和互斥,臨界資源和臨界區(qū),信號量機制線程管程第一頁,共19頁。第一頁,共19頁。2.下述哪些情況是對的?(1)進程由自己創(chuàng)建;
(2)進程由自己阻塞;
(3)進程由自己掛起;
(4)進程由自己解除掛起;
(5)進程由自己喚醒;
(6)進程由自己撤消。1.為什么說PCB是進程存在的唯一標(biāo)志?第二頁,共19頁。第二頁,共19頁。3.進程和線程的關(guān)系是什么?線程是由進程建立的,是嗎?答:進程和線程的關(guān)系是:線程是進程內(nèi)的一個相對獨立的可調(diào)度的執(zhí)行單元。第三頁,共19頁。第三頁,共19頁。進程在創(chuàng)建時,系統(tǒng)至少需要同時為該進程創(chuàng)建一個線程,即進程中至少要有一個或一個以上的線程,否則進程無法被調(diào)度執(zhí)行。進程是被分給并擁有資源的基本單元,同一進程內(nèi)的多個線程共享該資源,但線程并不擁有該資源只是使用它們。線程不是由進程建立的,因為需要時線程可以創(chuàng)建其他線程。第四頁,共19頁。第四頁,共19頁。4.下面是兩個并發(fā)執(zhí)行的程序它們能正確執(zhí)行嗎?若不能正確執(zhí)行請舉例說明并改正之(X是公共變量)cobegin
varx:integer;
proceccp1(進程p1)
vary,z:integer;
begin
x:=1;
y:=0;
ifx>=1theny:=y+1
z:=y
endproceccp2
vart,u:integer;
begin
x:=0;
t:=0;
ifx<1thent:=t+z;
u:=t
end
coend第五頁,共19頁。第五頁,共19頁。修改讀者寫者問題的算法,使之對寫者優(yōu)先,即一旦有寫者到達,后續(xù)的讀者必須必須等待,無論是否有讀者在讀。有兩組并發(fā)進程:讀者和寫者,共享一組數(shù)據(jù)區(qū)要求:允許多個讀者同時執(zhí)行讀操作不允許讀者、寫者同時操作不允許多個寫者同時操作P(wait)、V(signal)操作(1)第六頁,共19頁。第六頁,共19頁。讀者操作(Reader):是否有寫者正在寫或請求寫?讀者數(shù)+1;判斷讀者數(shù),為1則申請數(shù)據(jù)區(qū);釋放寫信號;讀數(shù)據(jù);讀者數(shù)-1判斷讀者數(shù),為0則釋放數(shù)據(jù)區(qū);寫者操作(Writer):寫者數(shù)+1;判斷寫者數(shù),為1則申請寫;申請數(shù)據(jù)區(qū);寫數(shù)據(jù);釋放數(shù)據(jù)區(qū);寫者數(shù)-1;判斷寫者數(shù),為0則釋放寫;全局變量:readcount(讀者數(shù)),0,writecount(寫者數(shù)),0信號量:S1(資源數(shù)據(jù)區(qū)),1; Read(臨界資源readcount),1;Write(臨界資源writecount),1 W(寫信號量),1;第七頁,共19頁。第七頁,共19頁。讀者操作(Reader):是否有寫者正在寫或請求寫?讀者數(shù)+1;判斷讀者數(shù),為1則申請數(shù)據(jù)區(qū);釋放寫信號;讀數(shù)據(jù);讀者數(shù)-1判斷讀者數(shù),為0則釋放數(shù)據(jù)區(qū);寫者操作(Writer):寫者數(shù)+1;判斷寫者數(shù),為1則申請寫;申請數(shù)據(jù)區(qū);寫數(shù)據(jù);釋放數(shù)據(jù)區(qū);寫者數(shù)-1;判斷寫者數(shù),為0則釋放寫;Reader: P(W);P(Read); ifreadcount=0thenP(S1);readcount:=readcount+1;V(Read); V(W);readfile;P(Read);readcount:=readcount-1;ifreadcount=0thenV(S1);V(Read);全局變量:readcount(讀者數(shù)),0,writecount(寫者數(shù)),0信號量:S1(資源數(shù)據(jù)區(qū)),1; Read(臨界資源readcount),1;Write(臨界資源writecount),1 W(寫信號量),1;第八頁,共19頁。第八頁,共19頁。讀者操作(Reader):是否有寫者正在寫或請求寫?讀者數(shù)+1;判斷讀者數(shù),為1則申請數(shù)據(jù)區(qū);允許寫者申請寫;讀數(shù)據(jù);讀者數(shù)-1判斷讀者數(shù),為0則釋放數(shù)據(jù)區(qū);寫者操作(Writer):寫者數(shù)+1;判斷寫者數(shù),為1則申請寫;申請數(shù)據(jù)區(qū);寫數(shù)據(jù);釋放數(shù)據(jù)區(qū);寫者數(shù)-1;判斷寫者數(shù),為0則釋放寫;Writer:P(Write); ifwritecount=0thenP(W);writecount:=writecount+1;V(Write); P(S1);writefile;V(S1);P(Write);writecount:=writecount-1;ifwritecount=0thenV(W);V(Write);全局變量:readcount(讀者數(shù)),0,writecount(寫者數(shù)),0信號量:S1(資源數(shù)據(jù)區(qū)),1; Read(臨界資源readcount),1;Write(臨界資源writecount),1 W(寫信號量),1;第九頁,共19頁。第九頁,共19頁。Writer:P(Write); ifwritecount=0thenP(W);writecount:=writecount+1;V(Write); P(S1);writefile;V(S1);P(Write);writecount:=writecount-1;ifwritecount=0thenV(W);V(Write);全局變量:readcount(讀者數(shù)),0,writecount(寫者數(shù)),0信號量:S1(資源數(shù)據(jù)區(qū)),1; Read(臨界資源readcount),1;Write(臨界資源writecount),1 W(寫信號量),1;Reader: P(W);P(Read); ifreadcount=0thenP(S1);readcount:=readcount+1;V(Read); V(W);readfile;P(Read);readcount:=readcount-1;ifreadcount=0thenV(S1);V(Read);讀者1讀者2寫者1W阻塞隊列第十頁,共19頁。第十頁,共19頁。Writer:P(Write); ifwritecount=0thenP(W);writecount:=writecount+1;V(Write); P(S1);writefile;V(S1);P(Write);writecount:=writecount-1;ifwritecount=0thenV(W);V(Write);全局變量:readcount(讀者數(shù)),0,writecount(寫者數(shù)),0信號量:S1(資源數(shù)據(jù)區(qū)),1; Read(臨界資源readcount),1;Write(臨界資源writecount),1 W(寫信號量),1;R(讀信號量),1Reader: P(W);P(Read); ifreadcount=0thenP(S1);readcount:=readcount+1;V(Read); V(W);readfile;P(Read);readcount:=readcount-1;ifreadcount=0thenV(S1);V(Read);P(R);V(R);第十一頁,共19頁。第十一頁,共19頁。P(wait)、V(signal)操作(2)如圖,試用信號量實現(xiàn)這7個進程的同步:要求詳細解釋為進程圖設(shè)置的每一個同步信號量的具體涵義及初值,然后為進程圖中的每一個進程設(shè)計P、V操作;
P1P2P5P6P3P4P7第十二頁,共19頁。第十二頁,共19頁。P(wait)、V(signal)操作(3)用P、V操作解決下圖之同步問題:get進程負責(zé)往雙緩沖區(qū)S中輸入數(shù)據(jù),copy進程負責(zé)將雙緩沖區(qū)S中的數(shù)據(jù)復(fù)制到雙緩沖區(qū)T,put進程負責(zé)從雙緩中區(qū)T中取出數(shù)據(jù)用于處理。提示:雙緩沖區(qū),代表有兩個緩沖區(qū),可以存儲兩個數(shù)據(jù)copyputSTget第十三頁,共19頁。第十三頁,共19頁。四個進程A、B、C、D都要讀一個共享文件F,系統(tǒng)允許多個進程同時讀文件F,但限制是:進程A和C不能同時讀文件F,進程B和D也不能同時讀文件F。請回答下面的問題:(1)應(yīng)定義的信號量及初值:(2)在程序中填上適當(dāng)?shù)腜、V操作,以保證它們能正確并發(fā)工作:A()B()C()D(){{{{[1];[3];[5];[7];readF;readF;readF;readF;[2];[4];[6];[8];}}}}P(wait)、V(signal)操作(4)第十四頁,共19頁。第十四頁,共19頁。P(wait)、V(signal)操作(5)桌上有一空盤,最多允許放一只水果。爸爸可向盤中放一個蘋果,媽媽可向盤中放一個桔子,兒子專等吃盤中的桔子,女兒專等吃蘋果。試用P、V操作實現(xiàn)爸爸、媽媽、兒子、女兒四個并發(fā)進程的同步。第十五頁,共19頁。第十五頁,共19頁。5.設(shè)有n個進程共享一互斥段對如下兩種情況1)每次只允許一個進程進入互斥段;2)最多允許M個進程(M<N)同時進入互斥段;所采用信號量是否相同?信號量值的變化范圍如何?第十六頁,共19頁。第十六頁,共19頁。P(Wait)、V(Signal)操作動物園的飼養(yǎng)員喂黑熊,飼養(yǎng)員蘋果到盆中,黑熊從盆中抓走蘋果吃掉,盆中只能放一個蘋果。分別用飼養(yǎng)員進程、黑熊進程模擬飼養(yǎng)員喂黑熊的過程,請用P、V操作(即wait和signal)利用信號量機制實現(xiàn)這兩個進程同步第十七頁,共19頁。第十七頁,共19頁。P(wait)、V(signal)操作如圖所示,四個進程和四個信箱,進程間借助相鄰信箱傳遞消息,即Pi每次從Mi中取一條消息,經(jīng)加工后送入Mi+1,其中Mi(i=0~3)分別可存放3,3,2,2個消息。初始狀態(tài)下,M0裝了3條消息,其余為空。試以P、V操作為工具,寫出Pi(i=0~3)的同步工作算法。
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年成都房產(chǎn)預(yù)約買賣居間服務(wù)合同
- 2025年公司租賃共享協(xié)議模板
- 2025年報廢汽車收購與再利用諒解協(xié)議
- 2025年建筑工人雇傭合同樣本
- 2025年建設(shè)銀行二手住房貸款合同
- 2025年全球研發(fā)合作與專利授權(quán)合同范本
- 2025年工程退款協(xié)議書模板下載
- 2025年專業(yè)清潔服務(wù)勞動合同范本
- 2025年分公司之間業(yè)務(wù)合作與分工的策劃協(xié)議
- 2025年交通工具抵債協(xié)議
- JBT 7387-2014 工業(yè)過程控制系統(tǒng)用電動控制閥
- 小學(xué)數(shù)學(xué)教學(xué)評一體化教學(xué)探究
- 2024年保安員考試題庫【典型題】
- 人教版數(shù)學(xué)八年級下冊第十九章課堂同步練習(xí)
- 第一章創(chuàng)新意識課件
- 2024-2029年中國R290制冷劑行業(yè)市場現(xiàn)狀分析及競爭格局與投資發(fā)展研究報告
- 售后工程師績效考核指南
- 北師大版(2019)選擇性必修第三冊Unit 7 Careers Topic Talk 導(dǎo)學(xué)案
- 春節(jié)復(fù)工復(fù)產(chǎn)安全教育培訓(xùn)
- 2024年廣西公務(wù)員考試行測真題及答案解析
- 護理質(zhì)量改進項目
評論
0/150
提交評論