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

正文內(nèi)容

操作系統(tǒng)課后題答案5篇材料(編輯修改稿)

2025-11-04 23:03 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 、特權(quán)指令錯(cuò)、運(yùn)行超時(shí)、等待超時(shí)、算術(shù)運(yùn)算錯(cuò)、I/O 故障)、外界干預(yù)(操作員或操作系 統(tǒng)干預(yù)、父進(jìn)程請(qǐng)求、父進(jìn)程終止)。13.在創(chuàng)建一個(gè)進(jìn)程時(shí)所要完成的主要工作是什么?答:(1)OS 發(fā)現(xiàn)請(qǐng)求創(chuàng)建新進(jìn)程事件后,調(diào)用進(jìn)程創(chuàng)建原語Creat();(2)申請(qǐng)空白PCB;(3)為新進(jìn)程分配資源;(4)初始化進(jìn)程控制塊;(5).在撤銷一個(gè)進(jìn)程時(shí)所要完成的主要工作是什么?答:(1)根據(jù)被終止進(jìn)程標(biāo)識(shí)符,從PCB 集中檢索出進(jìn)程PCB,讀出該進(jìn)程狀態(tài)。(2)若被終止進(jìn)程處于執(zhí)行狀態(tài),立即終止該進(jìn)程的執(zhí)行,置調(diào)度標(biāo)志真,指示該進(jìn)程被 終止后重新調(diào)度。(3)若該進(jìn)程還有子進(jìn)程,應(yīng)將所有子孫進(jìn)程終止,以防它們成為不可控進(jìn)程。(4)將被終止進(jìn)程擁有的全部資源,歸還給父進(jìn)程,或歸還給系統(tǒng)。(5)將被終止進(jìn)程PCB 從所在隊(duì)列或列表中移出,等待其它程序搜集信息。15.試說明引起進(jìn)程阻塞或被喚醒的主要事件是什么?答:;;;.進(jìn)程在運(yùn)行時(shí)存在哪兩種形式的制約?并舉例說明之。答:(1)間接相互制約關(guān)系。舉例:有兩進(jìn)程A 和B,如果A 提出打印請(qǐng)求,系統(tǒng)已把唯一的 一臺(tái)打印機(jī)分配給了進(jìn)程B,則進(jìn)程A 只能阻塞;一旦B 釋放打印機(jī),A 才由阻塞改為就 緒。(2)直接相互制約關(guān)系。舉例:有輸入進(jìn)程A 通過單緩沖向進(jìn)程B 提供數(shù)據(jù)。當(dāng)緩沖空時(shí),計(jì)算進(jìn)程因不能獲得所需數(shù)據(jù)而阻塞,當(dāng)進(jìn)程A 把數(shù)據(jù)輸入緩沖區(qū)后,便喚醒進(jìn)程B;反 之,當(dāng)緩沖區(qū)已滿時(shí),進(jìn)程A 因沒有緩沖區(qū)放數(shù)據(jù)而阻塞,進(jìn)程B 將緩沖區(qū)數(shù)據(jù)取走后便 喚醒A。17.為什么進(jìn)程在進(jìn)入臨界區(qū)之前應(yīng)先執(zhí)行“進(jìn)入?yún)^(qū)”代碼?而在退出前又要執(zhí)行“退出 區(qū)”代碼?答:為了實(shí)現(xiàn)多個(gè)進(jìn)程對(duì)臨界資源的互斥訪問,必須在臨界區(qū)前面增加一段用于檢查欲訪問 的臨界資源是否正被訪問的代碼,如果未被訪問,該進(jìn)程便可進(jìn)入臨界區(qū)對(duì)資源進(jìn)行訪問,并設(shè)置正被訪問標(biāo)志,如果正被訪問,則本進(jìn)程不能進(jìn)入臨界區(qū),實(shí)現(xiàn)這一功能的代碼為“ 北京石油化工學(xué)院信息工程學(xué)院計(jì)算機(jī)系6/48 《計(jì)算機(jī)操作系統(tǒng)》習(xí)題參考答案余有明與計(jì)07和計(jì)G09的同學(xué)們編著 6/48 進(jìn)入?yún)^(qū)”代碼;在退出臨界區(qū)后,必須執(zhí)行“退出區(qū)”代碼,用于恢復(fù)未被訪問標(biāo)志,使其它進(jìn)程能再訪問此 臨界資源。?為什么?答:同步機(jī)構(gòu)應(yīng)遵循的基本準(zhǔn)則是:空閑讓進(jìn)、忙則等待、有限等待、讓權(quán)等待原因:為實(shí)現(xiàn)進(jìn)程互斥進(jìn)入自己的臨界區(qū)。 和signal。答:wait(S):0 時(shí),表示目前系統(tǒng)中這類資源還有可用的。執(zhí)行一次wait 操 作,意味著進(jìn)程請(qǐng)求一個(gè)單位的該類資源,使系統(tǒng)中可供分配的該類資源減少一個(gè),因此描 :=;signal(S):執(zhí)行一次signal操作,意味著釋放一個(gè)單位的可用資源,使系統(tǒng)中可供分配 的該類資源數(shù)增加一個(gè),:=+1 操作。若加1 ≤0,則表 示在該信號(hào)量鏈表中,仍有等待該資源的進(jìn)程被阻塞,因此應(yīng)調(diào)用wakeup 原語, 鏈表中的第一個(gè)等待進(jìn)程喚醒。20.你認(rèn)為整型信號(hào)量機(jī)制是否完全遵循了同步機(jī)構(gòu)的四條準(zhǔn)則?答:整型信號(hào)量機(jī)制不完全遵循同步機(jī)制的四條準(zhǔn)則,它不滿足“讓權(quán)等待”準(zhǔn)則。21.如何利用信號(hào)量機(jī)制來實(shí)現(xiàn)多個(gè)進(jìn)程對(duì)臨界資源的互斥訪問?并舉例說明之。答:為使多個(gè)進(jìn)程互斥訪問某臨界資源,只需為該資源設(shè)置一互斥信號(hào)量mutex,并設(shè)其 初值為1,然后將各進(jìn)程訪問該資源的臨界區(qū)CS置于wait(mutex)和signal(mutex)操作 之間即可。這樣,每個(gè)欲訪問該臨界資源的進(jìn)程在進(jìn)入臨界區(qū)之前,都要先對(duì)mutex 執(zhí)行 wait 操作,若該資源此刻未被訪問,本次wait 操作必然成功,進(jìn)程便可進(jìn)入自己的臨界區(qū),這時(shí)若再有其他進(jìn)程也欲進(jìn)入自己的臨界區(qū),此時(shí)由于對(duì)mutex 執(zhí)行wait操作定會(huì)失敗,因而該進(jìn)程阻塞,從而保證了該臨界資源能被互斥訪問。當(dāng)訪問臨界資源的進(jìn)程退出臨界區(qū) 后,應(yīng)對(duì)mutex執(zhí)行signal 操作,釋放該臨界資源。利用信號(hào)量實(shí)現(xiàn)進(jìn)程互斥的進(jìn)程描述 如下:Var mutex: semaphore:=1; begin parbegin process 1: begin repeat wait(mutex); critical section signal(mutex); remainder seetion until false; end process 2: begin repeat wait(mutex); critical section signal(mutex); remainder section until false; end parend22.試寫出相應(yīng)的程序來描述圖217所示的前驅(qū)圖。答:(a)Var a, b, c, d, e, f, g, h。semaphore:= 0, 0, 0, 0, 0, 0, 0, 0。begin parbegin begin S1。signal(a)。signal(b)。end。begin wait(a)。S2。signal(c)。signal(d)。end。begin wait(b)。S3。signal(e)。end。begin wait(c)。S4。signal(f)。end。begin wait(d)。S5。signal(g)。end。begin wait(e)。S6。signal(h)。end。begin wait(f)。wait(g)。wait(h)。S7。end。parend end(b)Var a, b, c, d, e, f, g, h,i,j。semaphore:= 0, 0, 0, 0, 0, 0, 0,0,0, 0。begin parbegin begin S1。signal(a)。signal(b)。end。begin wait(a)。S2。signal(c)。signal(d)。end。begin wait(b)。S3。signal(e)。signal(f)。end。begin wait(c)。S4。signal(g)。end。begin wait(d)。S5。signal(h)。end。begin wait(e)。S6。signal(i)。end。begin wait(f)。S7。signal(j)。end。begin wait(g)。wait(h)。wait(i)。wait(j)。S8。end。parend end 23.在生產(chǎn)者消費(fèi)者問題中,如果缺少了signal(full)或signal(empty),對(duì)執(zhí)行結(jié)果有何影響? 答:如果缺少signal(full),那么表明從第一個(gè)生產(chǎn)者進(jìn)程開始就沒有改變信號(hào)量full 值,即使緩沖池產(chǎn)品已滿,但full 值還是0,這樣消費(fèi)者進(jìn)程執(zhí)行wait(full)時(shí)認(rèn)為緩沖池是空 而取不到產(chǎn)品,消費(fèi)者進(jìn)程一直處于等待狀態(tài)。如果缺少signal(empty),在生產(chǎn)者進(jìn)程向n個(gè)緩沖區(qū)投滿產(chǎn)品后消費(fèi)者進(jìn)程才開始從中取產(chǎn)品,這時(shí)empty=0,full=n,那么每當(dāng)消費(fèi)者進(jìn)程取走一個(gè)產(chǎn)品empty 值并不改變,7 直到緩沖池取空了,empty 值也是0,即使目前緩沖池有n 個(gè)空緩沖區(qū),生產(chǎn)者進(jìn)程要想 再往緩沖池中投放產(chǎn)品也會(huì)因?yàn)樯暾?qǐng)不到空緩沖區(qū)被阻塞。24.在生產(chǎn)消費(fèi)者問題中,如果將兩個(gè)wait 操作即wait(full)和wait(mutex)互換位置,或者將signal(mutex)與signal(full)互換位置,結(jié)果如何?答:將wait(full)和wait(mutex)互換位置后,可能引起死鎖??紤]系統(tǒng)中緩沖區(qū)全滿時(shí),若一生產(chǎn)者進(jìn)程先執(zhí)行了wait(mutex)操作并獲得成功,則當(dāng)再執(zhí)行wait(empty)操作時(shí),它將因失敗而進(jìn)入阻塞狀態(tài),它期待消費(fèi)者進(jìn)程執(zhí)行signal(empty)來喚醒自己,在此之前,它不可能執(zhí)行signal(mutex)操作,從而使試圖通過執(zhí)行wait(mutex)操作而進(jìn)入自己的臨 界區(qū)的其他生產(chǎn)者和所有消費(fèi)者進(jìn)程全部進(jìn)入阻塞狀態(tài),這樣容易引起系統(tǒng)死鎖。若signal(mutex)和signal(full)互換位置后只是影響進(jìn)程對(duì)臨界資源的釋放次序,而 不會(huì)引起系統(tǒng)死鎖,因此可以互換位置。25.我們?cè)跒槟骋慌R界資源設(shè)置一把鎖W,當(dāng)W=1時(shí)表示關(guān)鎖,當(dāng)W=0時(shí)表示鎖已打開。試寫出開鎖和關(guān)鎖的原語,并利用他們實(shí)現(xiàn)互斥。答:整型信號(hào)量:lock(W): while W=1 do noopW:=1。unlock(W): W:=0。記錄型信號(hào)量:lock(W): W:=W+1。if(W1)then block(W, L)unlock(W): W:=W1。if(W0)then wakeup(W, L)例子:Var W:semaphore:=0;begin repeat lock(W)。critical section unlock(W)。remainder section until false。end26.試修改下面生產(chǎn)者-消費(fèi)者問題解法中的錯(cuò)誤: 答: producer: begin repeat ?producer an item in nextp。wait(mutex)。wait(full)。/* 應(yīng)為wait(empty),而且還應(yīng)該在wait(mutex)的前面 */ buffer(in):=nextp。/* 緩沖池?cái)?shù)組游標(biāo)應(yīng)前移: in:=(in+1)mod n。*/ signal(mutex)。8 /* signal(full)。*/ until false。end consumer: begin repeat wait(mutex)。wait(empty)。/* 應(yīng)為wait(full),而且還應(yīng)該在wait(mutex)的前面 */ nextc:=buffer(out)。out:=out+1。/* 考慮循環(huán),應(yīng)改為: out:=(out+1)mod n。*/ signal(mutex)。/* signal(empty)。*/ consumer item in nextc。until false。end 27.:Var chopstick:array[0,?,4] of semaphore。所有信號(hào)量均被初始化為1,第i 位哲學(xué)家的活動(dòng)可描述為: Repeat Wait(chopstick[i])。Wait(.chopstick[(i+1)mod 5])。?。?Signal(chopstick[i])。Signal(chopstick[(i+1)mod 5])。?Think。Until false。28.在測(cè)量控制系統(tǒng)中的數(shù)據(jù)采集任務(wù),把所采集的數(shù)據(jù)送一單緩沖區(qū);計(jì)算任務(wù)從該單 。答: mutex, empty, full: semaphore:=1, 1, 0。gather: begin repeat ??gather data in nextp。wait(empty)。wait(mutex)。buffer:=nextp。signal(mutex)。9 signal(full)。until false。end pute: begin repeat ??wait(full)。wait(mutex)。nextc:=buffer。signal(mutex)。signal(empty)。pute data in nextc。until false。end empty, full: semaphore:=1, 0。gather: begin repeat ??gather data in nextp。wait(empty)。buffer:=nextp。signal(full)。until false。end pute: begin repeat ??wait(full)。nextc:=buffer。signal(empty)。pute data in nextc。until false。end 29.畫圖說明管程由哪幾部分組成,為什么要引入條件變量?答:管程由四部分組成:①管程的名稱;②局部于管程內(nèi)部的共享數(shù)據(jù)結(jié)構(gòu)說明;③對(duì)該數(shù) 據(jù)結(jié)構(gòu)進(jìn)行操作的一組過程;④對(duì)局部于管程內(nèi)部的共享數(shù)據(jù)設(shè)置初始值的語句;當(dāng)一個(gè)進(jìn)程調(diào)用了管程,在管程中時(shí)被阻塞或掛起,直到阻塞或掛起的原因解除,而在此期 間,如果該進(jìn)程不釋放管程,則其它進(jìn)程無法進(jìn)入管程,被迫長(zhǎng)時(shí)間地等待。為了解決這個(gè) 問題,引入了條件變量condition。30.如何利用管程來解決生產(chǎn)者與消費(fèi)者問題?答:首先建立一個(gè)管程,命名為ProclucerConsumer,包括兩個(gè)過程:(1)Put(item)過程。生產(chǎn)者利用該過程將自己生產(chǎn)的產(chǎn)品放到緩沖池,用整型變 量count 表示在緩沖池中已有的產(chǎn)品數(shù)目,當(dāng)count≥n 時(shí),表示緩沖池已滿,生產(chǎn)者須 等待。(2)get(item)過程。消費(fèi)者利用該過程從緩沖池中取出一個(gè)產(chǎn)品,當(dāng)count≤0 時(shí),表示緩沖池中已無可取的產(chǎn)品,消費(fèi)者應(yīng)等待。PC 管程可描述如下:type producerconsumer =monitor Var in,out,count:integer。buffer:array[0,?,n1]of item。notfull,notempty:condition。procedure entry dot(item)begin if count=n then not 。buffer(in):=nextp。in:=(in+1)mod n。count:=count+1。if then 。end procedure entry get(item)begin if count答:為解決并行帶來的死鎖問題,在wait 操作中引入AND 條件,其基本思想是將進(jìn) 程在整個(gè)運(yùn)行過程中所需要的所有臨界資源,一次性地全部分配給進(jìn)程,用完后一次性釋放。解決生產(chǎn)者-消費(fèi)者問題可描述如下: var mutex,empty,full: semaphore:=1,n,0。buffer: array[0,...,n1] of item。in,out: integer:=0,0。begin parbegin producer: begin repeat ?produce an item in nextp。?wait(empty)。wait
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1