版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
計(jì)算機(jī)專(zhuān)業(yè)基礎(chǔ)綜合(進(jìn)程管理)-試卷1(總分:56.00,做題時(shí)間:90分鐘)一、單項(xiàng)選擇題(總題數(shù):17,分?jǐn)?shù):34.00)單項(xiàng)選擇題1-40小題。下列每題給出的四個(gè)選項(xiàng)中,只有一個(gè)選項(xiàng)是最符合題目要求的。(分?jǐn)?shù):2.00)解析:進(jìn)程處于()等待狀態(tài)時(shí),它是處于非阻塞狀態(tài)的。(分?jǐn)?shù):2.00)等待從鍵盤(pán)輸入數(shù)據(jù)等待協(xié)作進(jìn)程的一個(gè)信號(hào)等待操作系統(tǒng)分配CPU寸間V等待網(wǎng)絡(luò)數(shù)據(jù)進(jìn)入內(nèi)存解析:下列敘述中,錯(cuò)誤的是()。(分?jǐn)?shù):2.00)操作系統(tǒng)是用戶(hù)與計(jì)算機(jī)之間的接口程序的并發(fā)執(zhí)行,使程序失去了順序執(zhí)行時(shí)具有的封閉性和可再現(xiàn)性,程序與程序的執(zhí)行不再一一對(duì)應(yīng)進(jìn)程從一個(gè)狀態(tài)到另一個(gè)狀態(tài)的轉(zhuǎn)換,都是靠使用不同的原語(yǔ)來(lái)實(shí)現(xiàn)的V在單CPU系統(tǒng)中,任何時(shí)刻處于就緒狀態(tài)的進(jìn)程有多個(gè),而且只有處于就緒狀態(tài)的進(jìn)程經(jīng)調(diào)度程序選中后才可進(jìn)入運(yùn)行狀態(tài)解析:解析:從用戶(hù)的角度看,操作系統(tǒng)是用戶(hù)使用計(jì)算機(jī)的橋梁,用戶(hù)通過(guò)操作系統(tǒng)的兩類(lèi)接口來(lái)達(dá)到操縱計(jì)算機(jī)的目的。選項(xiàng)A正確。選項(xiàng)B的敘述也是正確的,因?yàn)檫@正是引入進(jìn)程概念的原因。進(jìn)程從一個(gè)狀態(tài)到另一個(gè)狀態(tài)的轉(zhuǎn)換是一個(gè)非常復(fù)雜的過(guò)程,除了要使用不同的原語(yǔ)外,有時(shí)還要借助于硬件觸發(fā)器才能完成。例如,UNIX系統(tǒng)中,從系統(tǒng)態(tài)到用戶(hù)態(tài)的轉(zhuǎn)換要借助硬件觸發(fā)器。因此,選項(xiàng)C錯(cuò)誤。處于就緒狀態(tài)的進(jìn)程巳經(jīng)獲得了除CPU之外的所有資源,由于只有一個(gè)CPU,任何時(shí)刻就只能有一個(gè)進(jìn)程獲得CPU,而其他的就只能在就緒狀態(tài)對(duì)應(yīng)的隊(duì)列上排隊(duì)等待調(diào)度程序的調(diào)度。所以選項(xiàng)D也正確。進(jìn)程調(diào)度是從()選擇一個(gè)進(jìn)程投入運(yùn)行的。(分?jǐn)?shù):2.00)就緒隊(duì)列V等待隊(duì)列作業(yè)后備隊(duì)列提交隊(duì)列解析:解析:處于就緒隊(duì)列的進(jìn)程是獲得了除處理機(jī)以外的所有資源處于準(zhǔn)備執(zhí)行的狀態(tài)。進(jìn)程調(diào)度就是負(fù)責(zé)從就緒隊(duì)列中挑選進(jìn)程投入運(yùn)行的。下列敘述中,正確的是()。(分?jǐn)?shù):2.00)分時(shí)系統(tǒng)中,時(shí)間片越小,響應(yīng)時(shí)間越長(zhǎng)多道程序的引入,主要是為了提高CPU及其他資源的利用率V飛機(jī)票訂票系統(tǒng)是分時(shí)系統(tǒng)PCB是進(jìn)程存在的唯一標(biāo)志,而程序是系統(tǒng)感知進(jìn)程存在的唯一實(shí)體解析:解析:分時(shí)系統(tǒng)的響應(yīng)時(shí)間T^nq,n是用戶(hù)數(shù)目,而q是時(shí)間片。當(dāng)在用戶(hù)數(shù)目一定的情況下,時(shí)間片越小,響應(yīng)時(shí)間越短。因此,選項(xiàng)A錯(cuò)誤。在單道程序環(huán)境中,系統(tǒng)的全部資源為一個(gè)作業(yè)所獨(dú)占,如果該作業(yè)在進(jìn)行輸入或輸出時(shí),CPU仍然被它所占有,處于等待狀態(tài)。由于CPU與外設(shè)處理速度上的差異,如果采用多道程序設(shè)計(jì)技術(shù),當(dāng)某個(gè)作業(yè)輸入或輸出時(shí),CPU就可處理其他的作業(yè),其他資源也是類(lèi)似的。因此,選項(xiàng)B正確。飛機(jī)票訂票系統(tǒng)是實(shí)時(shí)信息處理系統(tǒng)。所以,選項(xiàng)C錯(cuò)誤。PCB是進(jìn)程存在的唯一標(biāo)志,也是系統(tǒng)感知進(jìn)程存在的唯一實(shí)體,而進(jìn)程的程序部分描述了進(jìn)程所要完成的功能。因此,選項(xiàng)D錯(cuò)誤。一個(gè)進(jìn)程被喚醒,意味著()。(分?jǐn)?shù):2.00)該進(jìn)程重新占有了CPU進(jìn)程狀態(tài)變?yōu)榫途wV它的優(yōu)先權(quán)變?yōu)樽畲笃銹CB移至就緒隊(duì)列的隊(duì)首解析:解析:進(jìn)程被喚醒是進(jìn)入就緒隊(duì)列。是否插入到就緒隊(duì)列的什么地方,取決于就緒的管理方法和進(jìn)程調(diào)度的算法。如果進(jìn)程調(diào)度是最高優(yōu)先數(shù)優(yōu)先,該進(jìn)程按優(yōu)先數(shù)插入該隊(duì)列中;如果該隊(duì)列是按到達(dá)的先后次序排列的,則按到達(dá)的先后插入。進(jìn)程和程序的本質(zhì)區(qū)別是()。(分?jǐn)?shù):2.00)存儲(chǔ)在內(nèi)存和外存順序和非順序執(zhí)行機(jī)器指令分時(shí)使用和獨(dú)占使用計(jì)算機(jī)資源動(dòng)態(tài)和靜態(tài)特征V解析:解析:程序是指令的集合,而進(jìn)程是可以和其他程序并發(fā)執(zhí)行的程序的一次執(zhí)行過(guò)程。程序可以作為資料長(zhǎng)期保存,而進(jìn)程有從產(chǎn)生到消亡的過(guò)程。系統(tǒng)感知進(jìn)程的唯一實(shí)體是()。(分?jǐn)?shù):2.00)JCBFCBPCBVSJT解析:解析:進(jìn)程控制塊PCB是進(jìn)程存在的唯一標(biāo)志。一進(jìn)程在某一時(shí)刻具有()。(分?jǐn)?shù):2.00)一種狀態(tài)V兩種狀態(tài)三種狀態(tài)四種狀態(tài)解析:解析:進(jìn)程可能處于就緒、運(yùn)行、等待三種基本狀態(tài),但進(jìn)程在任一時(shí)刻只能處于一種狀態(tài)。在單處理機(jī)的多進(jìn)程系統(tǒng)中,進(jìn)程什么時(shí)候占用處理機(jī)以及決定占用時(shí)間的長(zhǎng)短是()。(分?jǐn)?shù):2.00)進(jìn)程相應(yīng)的代碼長(zhǎng)度進(jìn)程總共需要運(yùn)行的時(shí)間進(jìn)程特點(diǎn)和進(jìn)程調(diào)度策略V進(jìn)程完成什么功能解析:解析:本題考查進(jìn)程調(diào)度的時(shí)機(jī)和進(jìn)程調(diào)度的策略。進(jìn)程調(diào)度的時(shí)機(jī)與進(jìn)程特點(diǎn)有關(guān),例如,進(jìn)程是CPU繁忙型還是I/O繁忙型、自身的優(yōu)先級(jí)等。但是僅有這些特點(diǎn)是不夠的,能否得到調(diào)度還取決于進(jìn)程調(diào)度策略,若采用優(yōu)先級(jí)調(diào)度算法,則進(jìn)程的優(yōu)先級(jí)才起作用。至于占用處理機(jī)運(yùn)行時(shí)間的長(zhǎng)短,則要看進(jìn)程自身,若進(jìn)程是I/O繁忙型,運(yùn)行過(guò)程中要頻繁訪問(wèn)I/O,也就是說(shuō),可能會(huì)頻繁主動(dòng)放棄CPU,所以,占用CPU的時(shí)間就不會(huì)長(zhǎng),一旦放棄CPU,則必須等待下次調(diào)度。若進(jìn)程是CPU繁忙型,則一旦占有CPU就可能會(huì)運(yùn)行很長(zhǎng)時(shí)間,但是,運(yùn)行時(shí)間還取決于進(jìn)程調(diào)度策略。多數(shù)情況下,交互式系統(tǒng)為改善用戶(hù)的響應(yīng)時(shí)間,大多采用時(shí)間片輪轉(zhuǎn)算法,這種算法在進(jìn)程長(zhǎng)期占用CPU到一定時(shí)間后,會(huì)強(qiáng)制將其換下,以保證其他進(jìn)程的CPU使用權(quán)。所以,本題的正確答案應(yīng)為選項(xiàng)C。進(jìn)程從運(yùn)行狀態(tài)變?yōu)樽枞脑蚩赡苁牵ǎ?。(分?jǐn)?shù):2.00)輸入/輸出事件發(fā)生V時(shí)間片到輸入/輸出事件完成某個(gè)進(jìn)程被喚醒解析:解析:正在運(yùn)行的進(jìn)程如果要申請(qǐng)輸入或輸出,這時(shí)進(jìn)程的狀態(tài)將從運(yùn)行變?yōu)榈却?,將CPU讓出,等待輸入或輸出完成。進(jìn)程創(chuàng)建原語(yǔ)的任務(wù)是()。(分?jǐn)?shù):2.00)為進(jìn)程編制程序?yàn)檫M(jìn)程建立PCB表V為進(jìn)程分配CPU為進(jìn)程分配所需的各種資源解析:解析:進(jìn)程存在的標(biāo)志是進(jìn)程控制塊,所以創(chuàng)建進(jìn)程就是要?jiǎng)?chuàng)建PCB,并將有關(guān)參數(shù)填入PCB中。進(jìn)程被創(chuàng)建后即進(jìn)入()排隊(duì)。(分?jǐn)?shù):2.00)阻塞隊(duì)列就緒隊(duì)列V緩沖隊(duì)列運(yùn)行隊(duì)列解析:解析:進(jìn)程創(chuàng)建后,按就緒隊(duì)列的排列順序插入其中,等待進(jìn)程調(diào)度程序的調(diào)度。多道程序系統(tǒng)中,()的作用是從就緒狀態(tài)中挑選一個(gè)進(jìn)程投入運(yùn)行。(分?jǐn)?shù):2.00)作業(yè)調(diào)度交換調(diào)度進(jìn)程調(diào)度VSPOOLing調(diào)度解析:多道系統(tǒng)環(huán)境下,操作系統(tǒng)分配資源以()為基本單位。(分?jǐn)?shù):2.00)作業(yè)指令程序進(jìn)程V解析:解析:多道環(huán)境下,程序這個(gè)概念巳經(jīng)難以反映程序并發(fā)執(zhí)行的特點(diǎn),所以,在多道環(huán)境下,為了更好地描述程序并發(fā)執(zhí)行的特點(diǎn),引入了進(jìn)程的概念。進(jìn)程是在多道環(huán)境下資源分配的基本單位。進(jìn)程調(diào)度主要負(fù)責(zé)()。(分?jǐn)?shù):2.00)選作業(yè)進(jìn)入內(nèi)存選一進(jìn)程占有CPUV建立一進(jìn)程撤銷(xiāo)一進(jìn)程解析:解析:進(jìn)程調(diào)度主要負(fù)責(zé)選擇下一個(gè)將要運(yùn)行的進(jìn)程,進(jìn)程運(yùn)行與進(jìn)程占用CPU是同一過(guò)程。出現(xiàn)下列的情況可能導(dǎo)致死鎖的是()。(分?jǐn)?shù):2.00)進(jìn)程釋放資源一個(gè)進(jìn)程進(jìn)入死循環(huán)多個(gè)進(jìn)程競(jìng)爭(zhēng)資源出現(xiàn)了循環(huán)等待V多個(gè)進(jìn)程競(jìng)爭(zhēng)使用共享型的設(shè)備解析:解析:死鎖的定義:兩個(gè)或兩個(gè)以上并發(fā)進(jìn)程,如果每個(gè)進(jìn)程持有某種資源,而又等待著別的進(jìn)程釋放它或它們現(xiàn)在保持著的資源,否則就不能向前推進(jìn)。此時(shí),每個(gè)進(jìn)程都占用了一定的資源,但又都不能向前推進(jìn)。這種現(xiàn)象稱(chēng)為死鎖。死鎖的起因:互斥條件,不可剝奪條件,部分分配,環(huán)路條件。二、綜合應(yīng)用題(總題數(shù):11,分?jǐn)?shù):22.00)綜合應(yīng)用題41-47小題。(分?jǐn)?shù):2.00)解析:簡(jiǎn)述判斷死鎖的必要條件。(分?jǐn)?shù):2.00)正確答案:(正確答案:(1)互斥條件。進(jìn)程競(jìng)爭(zhēng)的資源必須互斥使用。(2)請(qǐng)求與保持條件。當(dāng)前巳擁有資源的進(jìn)程,仍能申請(qǐng)新的資源,而當(dāng)該進(jìn)程因?yàn)樾碌馁Y源被其他進(jìn)程占據(jù)而被阻塞時(shí),它仍保持自己的資源不釋放。(3)不可剝奪條件。進(jìn)程申請(qǐng)的資源只能在使用完畢時(shí)自行釋放。(4)循環(huán)等待條件。存在一個(gè)至少包含兩個(gè)進(jìn)程的循環(huán)等待鏈,鏈中的每個(gè)進(jìn)程都在等待下一個(gè)進(jìn)程所占有的資源。)解析:假定系統(tǒng)有三個(gè)并發(fā)進(jìn)程read、move和print共享緩沖器B1和B2。進(jìn)程read負(fù)責(zé)從輸入設(shè)備上讀信息,每讀出一條記錄后把它存放到緩沖器B1中。進(jìn)程move從緩沖器B1中取出一條記錄,加工后存入緩沖器B2。進(jìn)程print將B2中的記錄取出打印輸出。緩沖器B1和B2每次只能存放一條記錄。要求三個(gè)進(jìn)程協(xié)調(diào)完成任務(wù),使打印出來(lái)的與讀入的記錄的條數(shù),次序完全一樣。請(qǐng)用wait和signal原語(yǔ)寫(xiě)出它們的并發(fā)程序。(分?jǐn)?shù):2.00)正確答案:(正確答案:beginSR,SM1,SM2,SP:semaphore;B1,B2:record;SR:=1;SM1:=0;SM2:=1;SP:=0;cobeginprocessreadX:record;beginR:(接收來(lái)自輸入設(shè)備上一條記錄)X:=接收的一條記錄;wait(SR);B1:=X;signal(SM1);gotoR;end;ProcessmoveY:record;beginM:wait(SMl);Y:=B1:Signal(SR)加工Ywait(SM2);B2:=Y;signal(SP);gotoM;end;ProcessprintZ:record;beginP:wait(SP);Z:=B2;signal(SM2)打印ZgotoP;end;coend;end;)解析:舉例說(shuō)明,P、V操作為什么要求設(shè)計(jì)成原語(yǔ)(即對(duì)同一信號(hào)量上的操作必須互斥)°P(S)操作:S.value--;if(S.value<=0){RemoveaprocessPfromS.L:Wakeup(P);}(分?jǐn)?shù):2.00)正確答案:(正確答案:例如,用P、V操作來(lái)實(shí)現(xiàn)進(jìn)程對(duì)臨界資源互斥使用。此時(shí),只需定義一個(gè)信號(hào)量S,其初值{1,NULL},并在臨界區(qū)前執(zhí)行P(S)操作,而在臨界區(qū)后執(zhí)行V(S)操作。此時(shí)P、V操作不設(shè)計(jì)成原語(yǔ),那么在執(zhí)行P、V操作時(shí)進(jìn)程可以被中斷。由于在初始狀態(tài)下臨界資源空閑,故應(yīng)允許第一個(gè)申請(qǐng)臨界資源的進(jìn)程進(jìn)入臨界區(qū)使用臨界資源,但如果該進(jìn)程在執(zhí)行到P操作的語(yǔ)句S.value一一后(此時(shí)S.Value的值為0)便被另一個(gè)進(jìn)程中斷,而那個(gè)進(jìn)程也企圖通過(guò)執(zhí)行P(S)操作進(jìn)入臨界區(qū),則第二個(gè)進(jìn)程也必須執(zhí)行語(yǔ)句S.value一,從而將S.value的值為一1,并由于S.value<0而被阻塞,而第一個(gè)進(jìn)程再次獲得CPU后也同樣由于S.value<0而被阻塞,這就造成了臨界資源雖然空閑但進(jìn)程卻申請(qǐng)不到臨界資源的情況,也就是說(shuō),此時(shí)的P、V操作巳無(wú)法滿(mǎn)足同步機(jī)制的要求。同樣,一個(gè)執(zhí)行P(S)操作的進(jìn)程被中斷后另一進(jìn)程去執(zhí)行V(S)操作,一個(gè)執(zhí)行V(S)操作的進(jìn)程被中斷后而另一個(gè)進(jìn)程去執(zhí)行P(S)或V(S)操作,都將發(fā)生混亂而難以實(shí)現(xiàn)進(jìn)程同步。因此,P、V操作必須設(shè)計(jì)成原語(yǔ)的方式。)解析:并發(fā)使得處理機(jī)的利用率得到提高,其主要原因是處理機(jī)與I/O可以同時(shí)為多個(gè)進(jìn)程服務(wù),也即處理機(jī)與I/O設(shè)備真正地并行。但是處理機(jī)的利用率提高并不是簡(jiǎn)單地將兩個(gè)進(jìn)程的處理機(jī)利用率相加,而是遵循一定的規(guī)律?,F(xiàn)在有一個(gè)計(jì)算機(jī)系統(tǒng)采用多道程序技術(shù)實(shí)現(xiàn)了并發(fā),調(diào)度算法采用時(shí)間片輪轉(zhuǎn),時(shí)間片很小可以不計(jì)進(jìn)程并發(fā)時(shí)的次序。忽略計(jì)算機(jī)系統(tǒng)的開(kāi)銷(xiāo)。假設(shè)進(jìn)程創(chuàng)建時(shí)間和完全占有CPU運(yùn)行的確-請(qǐng)計(jì)算并填寫(xiě)下列空格切時(shí)間如下表所示。巳知其I/O繁忙率為80%,處理機(jī)的利用率為20%。
-請(qǐng)計(jì)算并填寫(xiě)下列空格正確答案:(正確答案:本題考查的是并發(fā)進(jìn)程之間的計(jì)算。計(jì)算機(jī)引入多道程序設(shè)計(jì)技術(shù)主要是為提高處理機(jī)的利用率。在多道程序并發(fā)的情況下,處理機(jī)的利用率呈現(xiàn)出如下的規(guī)律:U=1一Pn其中,U為處理機(jī)利用率,P為I/O繁忙率,n為并發(fā)進(jìn)程數(shù)。據(jù)此,對(duì)題目給定的數(shù)據(jù)進(jìn)行計(jì)算,并將結(jié)果填入表格中。當(dāng)1個(gè)進(jìn)程運(yùn)行時(shí),處理機(jī)利用率為20%,這個(gè)進(jìn)程獨(dú)享該處理機(jī),所以20%的利用率均被使用。在時(shí)刻10:00到10:10期間,進(jìn)程0獨(dú)享處理機(jī)。這期間,進(jìn)程0實(shí)際的處理機(jī)時(shí)間為10分鐘X20%=2分鐘。當(dāng)2個(gè)進(jìn)程運(yùn)行時(shí),根據(jù)公式計(jì)算得到處理機(jī)利用率為36%,2個(gè)進(jìn)程共享處理機(jī),所以每個(gè)進(jìn)程的處理機(jī)的利用率為18%。在時(shí)刻10:10到10:15期間,進(jìn)程0和1共享處理機(jī)。這期間,進(jìn)程0和1各自實(shí)際的處理機(jī)時(shí)間為5X36%:2=0.9分鐘。當(dāng)3個(gè)進(jìn)程運(yùn)行時(shí),根據(jù)公式計(jì)算得到處理機(jī)利用率為49%,3個(gè)進(jìn)程共享處理機(jī),所以每個(gè)進(jìn)程的處理機(jī)的利用率為16%。在時(shí)刻10:15到10:20期間,進(jìn)程0、1和2共享處理機(jī)。這期間,進(jìn)程0、1和2各自實(shí)際的處理機(jī)時(shí)間為5x49%-3=0.8分鐘。當(dāng)4個(gè)進(jìn)程運(yùn)行時(shí),根據(jù)公式計(jì)算得到處理機(jī)利用率為59%,4個(gè)進(jìn)程共享處理機(jī),所以每個(gè)進(jìn)程的處理機(jī)的利用率為15%。從時(shí)刻10:20開(kāi)始,4個(gè)進(jìn)程并發(fā)。那么,從圖中可以看到,進(jìn)程0巳經(jīng)運(yùn)行了3.7分鐘,進(jìn)程1運(yùn)行了1.7分鐘,進(jìn)程2運(yùn)行了0.8分鐘,進(jìn)程3剛運(yùn)行。根據(jù)題目給出的每個(gè)進(jìn)程實(shí)際占有處理機(jī)的時(shí)間,可以看出,進(jìn)程0還剩余時(shí)間0.3分鐘,進(jìn)程l還剩余1.3分鐘,進(jìn)程2還剩余1.2分鐘,進(jìn)程3還剩余2分鐘,顯然,在并發(fā)并且平均使用處理機(jī)的情況下,進(jìn)程結(jié)束的次序應(yīng)該為0、2、1、3。首先我們計(jì)算進(jìn)程0還需要運(yùn)行多長(zhǎng)時(shí)間結(jié)束。經(jīng)過(guò)剛才計(jì)算得知,進(jìn)程0還剩余0.3分鐘,那么,在進(jìn)程4并發(fā),處理機(jī)利用率為每進(jìn)程15%的情況下,尚需要時(shí)間為0.3:15%=2分鐘,由此得知,到10:22時(shí),進(jìn)程0結(jié)束。進(jìn)程0退出后再計(jì)算剩余進(jìn)程的剩余時(shí)間,進(jìn)程1,2,3分別為1.0、0.9、1.7分鐘,上面巳經(jīng)分析,下一個(gè)結(jié)束的進(jìn)程是進(jìn)程2,所以,我們計(jì)算0.9-16%=5.6分鐘。注意,此時(shí)是3個(gè)進(jìn)程并發(fā)了,處理機(jī)的利用率為每進(jìn)程16%,此處切記不可疏忽。到10:27.6,進(jìn)程2結(jié)束。同理,進(jìn)程2退出以后再計(jì)算剩余進(jìn)程的剩余時(shí)間,進(jìn)程1、3分別為0.1、0.8分鐘,上面巳經(jīng)分析,下一個(gè)結(jié)束的進(jìn)程是進(jìn)程1,所以,0.1:18%=0.6分鐘。注意,此時(shí)是2個(gè)進(jìn)程并發(fā)了,處理機(jī)的利用率為每進(jìn)程18%。到10:28.2,進(jìn)程1結(jié)束。同樣計(jì)算,進(jìn)程1退出以后,進(jìn)程3的剩余時(shí)間為0.7分鐘,計(jì)算得出0.7-20%=3.5分鐘,而此時(shí)處理機(jī)的利用率為每進(jìn)程20%。到10:31.7,進(jìn)程3結(jié)束。據(jù)此,填寫(xiě)下列各個(gè)表格和空格。根據(jù)題意計(jì)算得到U=1-0.8=0.2=20%U=1—0.82=0.36=36%1 C特圖中空白括號(hào)U3=1-0.83=0.49=49%U=1-0.84=0.59=59%因此,表格填寫(xiě)如下:特圖中空白括號(hào)-)填寫(xiě)如下圖所示:-)解析:設(shè)有一緩沖池P,P中含有10個(gè)可用緩沖區(qū),一個(gè)輸入進(jìn)程將外部數(shù)據(jù)讀AP,另有一個(gè)輸出進(jìn)程將P中數(shù)據(jù)取出并輸出,如下所示。若進(jìn)程每次操作均以一個(gè)緩沖區(qū)為單位,試用記錄型信號(hào)量寫(xiě)出兩個(gè)進(jìn)程的同步算法,要求寫(xiě)出信號(hào)量的設(shè)置。輸入進(jìn)程輸出進(jìn)程匚讀入數(shù)據(jù)L:從一滿(mǎn)緩沖區(qū)中取出數(shù)據(jù)將數(shù)據(jù)寫(xiě)入一空緩沖區(qū)將數(shù)據(jù)輸出GOTOLGOTOL(分?jǐn)?shù):2.00)正確答案:(正確答案:(1)設(shè)置信號(hào)量mutex,empty,full初值:mutex=1,empty=10,full=0(2)設(shè)置wait,signal操作如下:輸入進(jìn)程輸出進(jìn)程L:讀入數(shù)據(jù)L:wait(full)wait(empty)wait(mutex)wait(mutex)從一滿(mǎn)緩沖區(qū)中取出數(shù)據(jù)將數(shù)據(jù)寫(xiě)入一空緩沖區(qū)signal(mutex)signal(mutex)signal(empty)signal(full)數(shù)據(jù)輸出)解析:一個(gè)SPOOLing系統(tǒng)由輸入進(jìn)程I、用戶(hù)進(jìn)程P、輸出進(jìn)程。、輸入緩沖區(qū)、輸出緩沖區(qū)組成。進(jìn)程I通過(guò)輸入緩沖區(qū)為進(jìn)程P輸入數(shù)據(jù),進(jìn)程P的處理結(jié)果通過(guò)輸出緩沖區(qū)交給進(jìn)程O(píng)輸出。進(jìn)程間數(shù)據(jù)交換以等長(zhǎng)度的數(shù)據(jù)塊為單位,這些數(shù)據(jù)塊均存儲(chǔ)在同一個(gè)磁盤(pán)上,因此,SPOOLing系統(tǒng)的數(shù)據(jù)塊通信原語(yǔ)保證始終滿(mǎn)足:i+o()max。其中,max為磁盤(pán)容量(以該數(shù)據(jù)塊為單位),i為磁盤(pán)上輸入數(shù)據(jù)塊總數(shù),o為磁盤(pán)上輸出數(shù)據(jù)總數(shù)。該SPOOLing系統(tǒng)運(yùn)行時(shí):(1)只要有輸入數(shù)據(jù),進(jìn)程I終究會(huì)將它放入輸入緩沖區(qū);(2)只要輸入緩沖區(qū)有數(shù)據(jù)塊,進(jìn)程P終究會(huì)輸入、處理并產(chǎn)生結(jié)果數(shù)據(jù)寫(xiě)到輸出緩;中區(qū);(3)只要輸出緩沖區(qū)有數(shù)據(jù)塊,進(jìn)程。終究會(huì)輸出它。請(qǐng)說(shuō)明該SPOOLing系統(tǒng)在什么情況下死鎖,并說(shuō)明如何修正約束條件(1)避免死鎖,同時(shí)仍允許輸入數(shù)據(jù)塊和輸出數(shù)據(jù)塊存儲(chǔ)在同一個(gè)磁盤(pán)上。(分?jǐn)?shù):2.00)正確答案:(正確答案:(1)i+oWmax(2)當(dāng)i=max,P的輸出數(shù)據(jù)無(wú)處存放,i的輸入數(shù)據(jù)占滿(mǎn)磁盤(pán)時(shí),死鎖。(3)應(yīng)該增加約束:i+o0。)解析:什么是AND信號(hào)量?請(qǐng)利用AND信號(hào)量寫(xiě)出生產(chǎn)者一消費(fèi)者問(wèn)題的解法。(分?jǐn)?shù):2.00)正確答案:(正確答案:此題主要考查進(jìn)程與死鎖的相關(guān)轉(zhuǎn)換內(nèi)容。(1)為解決并行所帶來(lái)的死鎖問(wèn)題,在wait操作中引入AND條件,其基本思想是將進(jìn)程在整個(gè)運(yùn)行過(guò)程中所需要的所有臨界資源一次性地全部分配給進(jìn)程,用完后一次性釋放。(2)解決生產(chǎn)者一消費(fèi)者問(wèn)題可描述如下:varmutex,empty,full:semaphore:=1,n,0;buffer:array[0..n-1]ofitem;in,out:integer:=0,0;beginparbeginproducer:beginrepeatproduceaniteminnextpwait(empty);wait(s1,s2,s3,…,sn); //s1,s2,s3,…,sn為執(zhí)行生產(chǎn)者進(jìn)程除empty外其余的條件wait(mutex);buffer(in):=nextp;in:=(in+1)modn;signal(mutex);signal(full);signal(s1,s2,s3,…,sn);untilfalse;endconsumer:beginrepeatwait(full);wait(k1,k2,k3,…,kn); //k1,k2,k3,…,kn為執(zhí)行生產(chǎn)者進(jìn)程除full夕卜其余的條件wait(mutex);nextc:=buffer(out);out:=(out+1)modn;signal(mutex);signal(empty);signal(k1,k2,k3,…,kn);consumetheiteminnextc;untilfalse;endparendend)解析:測(cè)量控制系統(tǒng)中的數(shù)據(jù)采集任務(wù)把所采集的數(shù)據(jù)送一個(gè)單緩沖區(qū),計(jì)算任務(wù)從該單緩沖區(qū)中取出數(shù)據(jù)進(jìn)行計(jì)算。試寫(xiě)出利用信號(hào)量機(jī)制實(shí)現(xiàn)兩者共享單緩沖區(qū)的同步算法。(分?jǐn)?shù):2.00)正確答案:(正確答案:此題主要考查進(jìn)程間共享緩沖區(qū)來(lái)實(shí)現(xiàn)同步的相關(guān)內(nèi)容。intmutex=1intempty=n;intfull=0;intin=0;intout=0:main(
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 從日常生活出發(fā)的家庭教育思維訓(xùn)練方法
- 教科版二年級(jí)上冊(cè)科學(xué)期末測(cè)試卷及答案參考
- 健康教育課程小兒腹瀉的預(yù)防和處理技巧
- 企業(yè)品牌形象在商業(yè)展會(huì)中的空間表達(dá)
- 小學(xué)食品安全主題班會(huì)方案
- 企業(yè)員工壓力管理與團(tuán)隊(duì)支持系統(tǒng)的建立實(shí)踐
- 不同年齡階段人群的家庭康樂(lè)需求分析與建議報(bào)告
- 信息技術(shù)在學(xué)校管理中的創(chuàng)新應(yīng)用
- 創(chuàng)意無(wú)限標(biāo)貼設(shè)計(jì)在市場(chǎng)營(yíng)銷(xiāo)中的實(shí)踐
- 企業(yè)家在家庭火災(zāi)預(yù)防中的責(zé)任與行動(dòng)
- artcam2008軟件及使用artcam的安裝和破解
- --動(dòng)車(chē)所建設(shè)工程施工組織設(shè)計(jì)
- 企業(yè)微信的使用培訓(xùn)
- 普外科專(zhuān)科護(hù)理規(guī)范及標(biāo)準(zhǔn)
- UML學(xué)生成績(jī)管理系統(tǒng)
- 渝價(jià)〔2013〕430號(hào)
- CA6132普通車(chē)床使用說(shuō)明書(shū)
- 工程交工驗(yàn)收會(huì)議監(jiān)理發(fā)言
- 電力工程項(xiàng)目管理中的溝通與協(xié)調(diào)
- 中國(guó)農(nóng)業(yè)銀行流水單_免費(fèi)下載
- 護(hù)士延續(xù)注冊(cè)申請(qǐng)表范本
評(píng)論
0/150
提交評(píng)論