freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

操作系統(tǒng)習(xí)題解答(編輯修改稿)

2025-07-04 19:40 本頁面
 

【文章內(nèi)容簡介】 器B2。進程print將B2中的記錄取出打印輸出。緩沖器B1和B2每次只能存放一個記錄。要求三個進程協(xié)調(diào)完成任務(wù),使打印出來的與讀入的記錄的個數(shù),次序完全一樣。請用PV操作,寫出它們的并發(fā)程序。答:begin SR,SM1,SM2,SP:semaphore。B1,B2:record。SR:=1。SM1:=0。SM2:=1。SP:=0cobeginprocess readX:record。begin R: (接收來自輸入設(shè)備上一個記錄)X:=接收的一個記錄;P(SR);B1:=X。V(SM1)。goto R。end。Process moveY:record。beginM:P(SM1)。Y:=B1。V(SR)加工 YP(SM2);B2:=Y。V(SP)。goto M。end。Process printZ:record。beginP:P(SP)。Z:=B2。V(SM2)打印Zgoto P。end。coend。end。8、某系統(tǒng)中有10臺打印機,有三個進程P1,P2,P3分別需要8臺,7臺和4臺。若P1,P2,P3已申請到4臺,2臺和2臺。試問:按銀行家算法能安全分配嗎?請說明分配過程。答:系統(tǒng)能為進程P3分配二臺打印機。因為盡管此時10臺打印機已分配給進程P1 4臺,P22臺和P34臺,全部分配完,但P3已分配到所需要的全部4臺打印機,它不會對打印機再提出申請,所以它能順利運行下去,能釋放占用的4臺打印機,使進程P1,P2均可能獲得乘余的要求4臺和5臺,按銀行家算法是安全的。9、有兩個用戶進程A和B,在運行過程中都要使用系統(tǒng)中的一臺打印機輸出計算結(jié)果。(1) 試說明A、B兩進程之間存在什么樣的制約關(guān)系?(2)為保證這兩個進程能正確地打印出各自的結(jié)果,請用信號量和P、V操作寫出各自的有關(guān)申請、使用打印機的代碼。要求給出信號量的含義和初值。答:(1) A、B兩進程之間存在互斥的制約關(guān)系。因為打印機屬于臨界資源,必須一個進程使用完之后另一個進程才能使用。(2)mutex:用于互斥的信號量,初值為1。 進程A 進程B ... ... ... ... P(mutex) P(mutex) 申請打印機 申請打印機 使用打印機 使用打印機 V(mutex) V(mutex)試以生產(chǎn)者—消費者問題說明進程同步問題的實質(zhì)。答:一個生產(chǎn)者,一個消費者和一個產(chǎn)品之間關(guān)系是典型的進程同步問題。設(shè)信號量S為倉庫內(nèi)產(chǎn)品,P V操作配對進行缺一不可。生產(chǎn)者進程將產(chǎn)品放人倉庫后通知消費者可用;消費者進程在得知倉庫有產(chǎn)品時取走,然后告訴生產(chǎn)者可繼續(xù)生產(chǎn)。10、請描述產(chǎn)生死鎖的四個必要條件。答:互斥使用(資源獨占)一個資源每次只能給一個進程使用不可強占(不可剝奪)資源申請者不能強行的從資源占有者手中奪取資源,資源只能由占有者自愿釋放請求和保持(部分分配,占有申請)-一個進程在申請新的資源的同時保持對原有資源的占有(只有這樣才是動態(tài)申請,動態(tài)分配)循環(huán)等待-存在一個進程等待隊列 {P1 , P2 , … , Pn}, 其中P1等待P2占有的資源,P2等待P3占有的資源,…,Pn等待P1占有的資源,形成一個進程等待環(huán)路11、兩個并發(fā)執(zhí)行的進程A和B的程序如下:進程ARepeatN=N+5。Until false。進程BRepeat打印N的值;N=0;Until false。其中N為整數(shù),初值為4。若進程A先執(zhí)行了三個循環(huán)后,進程A和進程B又并發(fā)執(zhí)行了一個循環(huán),寫出可能出現(xiàn)的打印值。正確的打印值應(yīng)該是多少?請用P、V操作進行管理,使進程A和B并發(fā)執(zhí)行時不會出現(xiàn)與時間有關(guān)的錯誤。 答:因為N初值為4,若進程A先執(zhí)行了三個循環(huán),此時N的值為19。當(dāng)進程A和進程B并發(fā)執(zhí)行時可能會有如下兩種執(zhí)行次序,即進程A先執(zhí)行一次循環(huán),然后再進程B執(zhí)行一次循環(huán),此時打印的是正確值24,執(zhí)行后N中的值為0。但若進程B先執(zhí)行一次循環(huán),然后再進程A執(zhí)行一次循環(huán),則打印的值是19,執(zhí)行后N中的值是5。這是錯誤的,即發(fā)生了與時間有關(guān)的錯誤。用P、V操作進行管理,使進程A和B并發(fā)時不會出現(xiàn)與時間有關(guān)的錯誤的程序如下:(S為互斥信號量,初值為1),進程ARepeatP(S)。N=N+5。V(S)。Until false。進程BRepeatP(S)。打印N的值;N=0;V(S)。Until false。12、四個進程P0,P1,P2,P3和四個信箱M0,M1,M2,M3進程間借助相鄰的信箱傳遞消息: 每次從 中取出一條消息,經(jīng)加工送入 中。其中M0,M1,M2,M3分別設(shè)有3,3,2,2個格子,每個格子放一條消息,初始時,M0裝滿了三條消息,其余為空。寫出使用信號量實現(xiàn)進程 (i=0,1,2,3)同步及互斥的流程。答:mutex0 ~ mutex3 : 分別用于控制互斥訪問M0 ~ M 3,初值為1。full0 ~ full3 : 分別用于控制同步訪問M0 ~ M3 ,其中full0 初值為3,full1 ~ full3 初值為0,表示信箱中消息條數(shù)。 empty0 ~ empty3 : 分別用于同步控制對M0 ~ M3的訪問。Empty0初值為0,empty2~ empty3初值為2,empty1初值為3,分別用于表示信箱中空格子個數(shù)。另用send ( Mi , message )表示將消息送到(Mi mod 4)號信箱中;而用receive ( Mi,message )表示接收已存在于( Mi mod 4 )中的消息。則使用信號量實現(xiàn)進程Pi (i = 0 , 1 ,2 ,3 )同步及互斥的流程如下:mutex0 , m utex 1, m utex2 , m utex3 : semaphore 。full0 , ful l1 , ful l2 , ful l3 : semaphore 。empty0 , em pty1 , em pty2 , em pty3 : semaphore 。begin mutex0 : = 1 。mutex1 : = 1 。mutex2 : = 1 。mutex : = 1 。 full0 : = 3 。full1 : = 0 。full2 : = 0 。full3 := 0 。 empty0 : = 0 。empty1 : = 3 。empty2 : = 2 。empty3 : = 2 。 Parbegin P0:beginrepeat P ( mutex0 ) 。P ( full0 ) 。Receive ( M0,message)。V (empty0 )
點擊復(fù)制文檔內(nèi)容
教學(xué)教案相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1