版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
計(jì)算機(jī)專業(yè)基礎(chǔ)綜合(進(jìn)程管理)-試卷1(總分:56.00,做題時(shí)間:90分鐘)一、單項(xiàng)選擇題(總題數(shù):17,分?jǐn)?shù):34.00)單項(xiàng)選擇題1-40小題。下列每題給出的四個選項(xiàng)中,只有一個選項(xiàng)是最符合題目要求的。(分?jǐn)?shù):2.00)解析:進(jìn)程處于()等待狀態(tài)時(shí),它是處于非阻塞狀態(tài)的。(分?jǐn)?shù):2.00)等待從鍵盤輸入數(shù)據(jù)等待協(xié)作進(jìn)程的一個信號等待操作系統(tǒng)分配CPU寸間V等待網(wǎng)絡(luò)數(shù)據(jù)進(jìn)入內(nèi)存解析:下列敘述中,錯誤的是()。(分?jǐn)?shù):2.00)操作系統(tǒng)是用戶與計(jì)算機(jī)之間的接口程序的并發(fā)執(zhí)行,使程序失去了順序執(zhí)行時(shí)具有的封閉性和可再現(xiàn)性,程序與程序的執(zhí)行不再一一對應(yīng)進(jìn)程從一個狀態(tài)到另一個狀態(tài)的轉(zhuǎn)換,都是靠使用不同的原語來實(shí)現(xiàn)的V在單CPU系統(tǒng)中,任何時(shí)刻處于就緒狀態(tài)的進(jìn)程有多個,而且只有處于就緒狀態(tài)的進(jìn)程經(jīng)調(diào)度程序選中后才可進(jìn)入運(yùn)行狀態(tài)解析:解析:從用戶的角度看,操作系統(tǒng)是用戶使用計(jì)算機(jī)的橋梁,用戶通過操作系統(tǒng)的兩類接口來達(dá)到操縱計(jì)算機(jī)的目的。選項(xiàng)A正確。選項(xiàng)B的敘述也是正確的,因?yàn)檫@正是引入進(jìn)程概念的原因。進(jìn)程從一個狀態(tài)到另一個狀態(tài)的轉(zhuǎn)換是一個非常復(fù)雜的過程,除了要使用不同的原語外,有時(shí)還要借助于硬件觸發(fā)器才能完成。例如,UNIX系統(tǒng)中,從系統(tǒng)態(tài)到用戶態(tài)的轉(zhuǎn)換要借助硬件觸發(fā)器。因此,選項(xiàng)C錯誤。處于就緒狀態(tài)的進(jìn)程巳經(jīng)獲得了除CPU之外的所有資源,由于只有一個CPU,任何時(shí)刻就只能有一個進(jìn)程獲得CPU,而其他的就只能在就緒狀態(tài)對應(yīng)的隊(duì)列上排隊(duì)等待調(diào)度程序的調(diào)度。所以選項(xiàng)D也正確。進(jìn)程調(diào)度是從()選擇一個進(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í)間越長多道程序的引入,主要是為了提高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是用戶數(shù)目,而q是時(shí)間片。當(dāng)在用戶數(shù)目一定的情況下,時(shí)間片越小,響應(yīng)時(shí)間越短。因此,選項(xiàng)A錯誤。在單道程序環(huán)境中,系統(tǒng)的全部資源為一個作業(yè)所獨(dú)占,如果該作業(yè)在進(jìn)行輸入或輸出時(shí),CPU仍然被它所占有,處于等待狀態(tài)。由于CPU與外設(shè)處理速度上的差異,如果采用多道程序設(shè)計(jì)技術(shù),當(dāng)某個作業(yè)輸入或輸出時(shí),CPU就可處理其他的作業(yè),其他資源也是類似的。因此,選項(xiàng)B正確。飛機(jī)票訂票系統(tǒng)是實(shí)時(shí)信息處理系統(tǒng)。所以,選項(xiàng)C錯誤。PCB是進(jìn)程存在的唯一標(biāo)志,也是系統(tǒng)感知進(jìn)程存在的唯一實(shí)體,而進(jìn)程的程序部分描述了進(jìn)程所要完成的功能。因此,選項(xiàng)D錯誤。一個進(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)存儲在內(nèi)存和外存順序和非順序執(zhí)行機(jī)器指令分時(shí)使用和獨(dú)占使用計(jì)算機(jī)資源動態(tài)和靜態(tài)特征V解析:解析:程序是指令的集合,而進(jìn)程是可以和其他程序并發(fā)執(zhí)行的程序的一次執(zhí)行過程。程序可以作為資料長期保存,而進(jìn)程有從產(chǎn)生到消亡的過程。系統(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í)間的長短是()。(分?jǐn)?shù):2.00)進(jìn)程相應(yī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)先級等。但是僅有這些特點(diǎn)是不夠的,能否得到調(diào)度還取決于進(jìn)程調(diào)度策略,若采用優(yōu)先級調(diào)度算法,則進(jìn)程的優(yōu)先級才起作用。至于占用處理機(jī)運(yùn)行時(shí)間的長短,則要看進(jìn)程自身,若進(jìn)程是I/O繁忙型,運(yùn)行過程中要頻繁訪問I/O,也就是說,可能會頻繁主動放棄CPU,所以,占用CPU的時(shí)間就不會長,一旦放棄CPU,則必須等待下次調(diào)度。若進(jìn)程是CPU繁忙型,則一旦占有CPU就可能會運(yùn)行很長時(shí)間,但是,運(yùn)行時(shí)間還取決于進(jìn)程調(diào)度策略。多數(shù)情況下,交互式系統(tǒng)為改善用戶的響應(yīng)時(shí)間,大多采用時(shí)間片輪轉(zhuǎn)算法,這種算法在進(jìn)程長期占用CPU到一定時(shí)間后,會強(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í)間片到輸入/輸出事件完成某個進(jìn)程被喚醒解析:解析:正在運(yùn)行的進(jìn)程如果要申請輸入或輸出,這時(shí)進(jìn)程的狀態(tài)將從運(yùn)行變?yōu)榈却?,將CPU讓出,等待輸入或輸出完成。進(jìn)程創(chuàng)建原語的任務(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)程就是要創(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)中挑選一個進(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)境下,程序這個概念巳經(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)程撤銷一進(jìn)程解析:解析:進(jìn)程調(diào)度主要負(fù)責(zé)選擇下一個將要運(yùn)行的進(jìn)程,進(jìn)程運(yùn)行與進(jìn)程占用CPU是同一過程。出現(xiàn)下列的情況可能導(dǎo)致死鎖的是()。(分?jǐn)?shù):2.00)進(jìn)程釋放資源一個進(jìn)程進(jìn)入死循環(huán)多個進(jìn)程競爭資源出現(xiàn)了循環(huán)等待V多個進(jìn)程競爭使用共享型的設(shè)備解析:解析:死鎖的定義:兩個或兩個以上并發(fā)進(jìn)程,如果每個進(jìn)程持有某種資源,而又等待著別的進(jìn)程釋放它或它們現(xiàn)在保持著的資源,否則就不能向前推進(jìn)。此時(shí),每個進(jìn)程都占用了一定的資源,但又都不能向前推進(jìn)。這種現(xiàn)象稱為死鎖。死鎖的起因:互斥條件,不可剝奪條件,部分分配,環(huán)路條件。二、綜合應(yīng)用題(總題數(shù):11,分?jǐn)?shù):22.00)綜合應(yīng)用題41-47小題。(分?jǐn)?shù):2.00)解析:簡述判斷死鎖的必要條件。(分?jǐn)?shù):2.00)正確答案:(正確答案:(1)互斥條件。進(jìn)程競爭的資源必須互斥使用。(2)請求與保持條件。當(dāng)前巳擁有資源的進(jìn)程,仍能申請新的資源,而當(dāng)該進(jìn)程因?yàn)樾碌馁Y源被其他進(jìn)程占據(jù)而被阻塞時(shí),它仍保持自己的資源不釋放。(3)不可剝奪條件。進(jìn)程申請的資源只能在使用完畢時(shí)自行釋放。(4)循環(huán)等待條件。存在一個至少包含兩個進(jìn)程的循環(huán)等待鏈,鏈中的每個進(jìn)程都在等待下一個進(jìn)程所占有的資源。)解析:假定系統(tǒng)有三個并發(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每次只能存放一條記錄。要求三個進(jìn)程協(xié)調(diào)完成任務(wù),使打印出來的與讀入的記錄的條數(shù),次序完全一樣。請用wait和signal原語寫出它們的并發(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:(接收來自輸入設(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;)解析:舉例說明,P、V操作為什么要求設(shè)計(jì)成原語(即對同一信號量上的操作必須互斥)°P(S)操作:S.value--;if(S.value<=0){RemoveaprocessPfromS.L:Wakeup(P);}(分?jǐn)?shù):2.00)正確答案:(正確答案:例如,用P、V操作來實(shí)現(xiàn)進(jìn)程對臨界資源互斥使用。此時(shí),只需定義一個信號量S,其初值{1,NULL},并在臨界區(qū)前執(zhí)行P(S)操作,而在臨界區(qū)后執(zhí)行V(S)操作。此時(shí)P、V操作不設(shè)計(jì)成原語,那么在執(zhí)行P、V操作時(shí)進(jìn)程可以被中斷。由于在初始狀態(tài)下臨界資源空閑,故應(yīng)允許第一個申請臨界資源的進(jìn)程進(jìn)入臨界區(qū)使用臨界資源,但如果該進(jìn)程在執(zhí)行到P操作的語句S.value一一后(此時(shí)S.Value的值為0)便被另一個進(jìn)程中斷,而那個進(jìn)程也企圖通過執(zhí)行P(S)操作進(jìn)入臨界區(qū),則第二個進(jìn)程也必須執(zhí)行語句S.value一,從而將S.value的值為一1,并由于S.value<0而被阻塞,而第一個進(jìn)程再次獲得CPU后也同樣由于S.value<0而被阻塞,這就造成了臨界資源雖然空閑但進(jìn)程卻申請不到臨界資源的情況,也就是說,此時(shí)的P、V操作巳無法滿足同步機(jī)制的要求。同樣,一個執(zhí)行P(S)操作的進(jìn)程被中斷后另一進(jìn)程去執(zhí)行V(S)操作,一個執(zhí)行V(S)操作的進(jìn)程被中斷后而另一個進(jìn)程去執(zhí)行P(S)或V(S)操作,都將發(fā)生混亂而難以實(shí)現(xiàn)進(jìn)程同步。因此,P、V操作必須設(shè)計(jì)成原語的方式。)解析:并發(fā)使得處理機(jī)的利用率得到提高,其主要原因是處理機(jī)與I/O可以同時(shí)為多個進(jìn)程服務(wù),也即處理機(jī)與I/O設(shè)備真正地并行。但是處理機(jī)的利用率提高并不是簡單地將兩個進(jìn)程的處理機(jī)利用率相加,而是遵循一定的規(guī)律?,F(xiàn)在有一個計(jì)算機(jī)系統(tǒng)采用多道程序技術(shù)實(shí)現(xiàn)了并發(fā),調(diào)度算法采用時(shí)間片輪轉(zhuǎn),時(shí)間片很小可以不計(jì)進(jìn)程并發(fā)時(shí)的次序。忽略計(jì)算機(jī)系統(tǒng)的開銷。假設(shè)進(jìn)程創(chuàng)建時(shí)間和完全占有CPU運(yùn)行的確-請計(jì)算并填寫下列空格切時(shí)間如下表所示。巳知其I/O繁忙率為80%,處理機(jī)的利用率為20%。
-請計(jì)算并填寫下列空格正確答案:(正確答案:本題考查的是并發(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ù)此,對題目給定的數(shù)據(jù)進(jìn)行計(jì)算,并將結(jié)果填入表格中。當(dāng)1個進(jìn)程運(yùn)行時(shí),處理機(jī)利用率為20%,這個進(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個進(jìn)程運(yùn)行時(shí),根據(jù)公式計(jì)算得到處理機(jī)利用率為36%,2個進(jìn)程共享處理機(jī),所以每個進(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個進(jìn)程運(yùn)行時(shí),根據(jù)公式計(jì)算得到處理機(jī)利用率為49%,3個進(jìn)程共享處理機(jī),所以每個進(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個進(jìn)程運(yùn)行時(shí),根據(jù)公式計(jì)算得到處理機(jī)利用率為59%,4個進(jìn)程共享處理機(jī),所以每個進(jìn)程的處理機(jī)的利用率為15%。從時(shí)刻10:20開始,4個進(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ù)題目給出的每個進(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)行多長時(shí)間結(jié)束。經(jīng)過剛才計(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)分析,下一個結(jié)束的進(jìn)程是進(jìn)程2,所以,我們計(jì)算0.9-16%=5.6分鐘。注意,此時(shí)是3個進(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)分析,下一個結(jié)束的進(jìn)程是進(jìn)程1,所以,0.1:18%=0.6分鐘。注意,此時(shí)是2個進(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ù)此,填寫下列各個表格和空格。根據(jù)題意計(jì)算得到U=1-0.8=0.2=20%U=1—0.82=0.36=36%1 C特圖中空白括號U3=1-0.83=0.49=49%U=1-0.84=0.59=59%因此,表格填寫如下:特圖中空白括號-)填寫如下圖所示:-)解析:設(shè)有一緩沖池P,P中含有10個可用緩沖區(qū),一個輸入進(jìn)程將外部數(shù)據(jù)讀AP,另有一個輸出進(jìn)程將P中數(shù)據(jù)取出并輸出,如下所示。若進(jìn)程每次操作均以一個緩沖區(qū)為單位,試用記錄型信號量寫出兩個進(jìn)程的同步算法,要求寫出信號量的設(shè)置。輸入進(jìn)程輸出進(jìn)程匚讀入數(shù)據(jù)L:從一滿緩沖區(qū)中取出數(shù)據(jù)將數(shù)據(jù)寫入一空緩沖區(qū)將數(shù)據(jù)輸出GOTOLGOTOL(分?jǐn)?shù):2.00)正確答案:(正確答案:(1)設(shè)置信號量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)從一滿緩沖區(qū)中取出數(shù)據(jù)將數(shù)據(jù)寫入一空緩沖區(qū)signal(mutex)signal(mutex)signal(empty)signal(full)數(shù)據(jù)輸出)解析:一個SPOOLing系統(tǒng)由輸入進(jìn)程I、用戶進(jìn)程P、輸出進(jìn)程。、輸入緩沖區(qū)、輸出緩沖區(qū)組成。進(jìn)程I通過輸入緩沖區(qū)為進(jìn)程P輸入數(shù)據(jù),進(jìn)程P的處理結(jié)果通過輸出緩沖區(qū)交給進(jìn)程O輸出。進(jìn)程間數(shù)據(jù)交換以等長度的數(shù)據(jù)塊為單位,這些數(shù)據(jù)塊均存儲在同一個磁盤上,因此,SPOOLing系統(tǒng)的數(shù)據(jù)塊通信原語保證始終滿足:i+o()max。其中,max為磁盤容量(以該數(shù)據(jù)塊為單位),i為磁盤上輸入數(shù)據(jù)塊總數(shù),o為磁盤上輸出數(shù)據(jù)總數(shù)。該SPOOLing系統(tǒng)運(yùn)行時(shí):(1)只要有輸入數(shù)據(jù),進(jìn)程I終究會將它放入輸入緩沖區(qū);(2)只要輸入緩沖區(qū)有數(shù)據(jù)塊,進(jìn)程P終究會輸入、處理并產(chǎn)生結(jié)果數(shù)據(jù)寫到輸出緩;中區(qū);(3)只要輸出緩沖區(qū)有數(shù)據(jù)塊,進(jìn)程。終究會輸出它。請說明該SPOOLing系統(tǒng)在什么情況下死鎖,并說明如何修正約束條件(1)避免死鎖,同時(shí)仍允許輸入數(shù)據(jù)塊和輸出數(shù)據(jù)塊存儲在同一個磁盤上。(分?jǐn)?shù):2.00)正確答案:(正確答案:(1)i+oWmax(2)當(dāng)i=max,P的輸出數(shù)據(jù)無處存放,i的輸入數(shù)據(jù)占滿磁盤時(shí),死鎖。(3)應(yīng)該增加約束:i+o0。)解析:什么是AND信號量?請利用AND信號量寫出生產(chǎn)者一消費(fèi)者問題的解法。(分?jǐn)?shù):2.00)正確答案:(正確答案:此題主要考查進(jìn)程與死鎖的相關(guān)轉(zhuǎn)換內(nèi)容。(1)為解決并行所帶來的死鎖問題,在wait操作中引入AND條件,其基本思想是將進(jìn)程在整個運(yùn)行過程中所需要的所有臨界資源一次性地全部分配給進(jìn)程,用完后一次性釋放。(2)解決生產(chǎn)者一消費(fèi)者問題可描述如下: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)解析:測量控制系統(tǒng)中的數(shù)據(jù)采集任務(wù)把所采集的數(shù)據(jù)送一個單緩沖區(qū),計(jì)算任務(wù)從該單緩沖區(qū)中取出數(shù)據(jù)進(jìn)行計(jì)算。試寫出利用信號量機(jī)制實(shí)現(xiàn)兩者共享單緩沖區(qū)的同步算法。(分?jǐn)?shù):2.00)正確答案:(正確答案:此題主要考查進(jìn)程間共享緩沖區(qū)來實(shí)現(xiàn)同步的相關(guān)內(nèi)容。intmutex=1intempty=n;intfull=0;intin=0;intout=0:main(
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 城市廣場道路鋪設(shè)簡易合同
- 地下科研設(shè)施引孔施工協(xié)議
- 雇傭合同模板
- 公積金繳納比例調(diào)整影響
- 健身中心泳池翻新協(xié)議
- 城市供水管道改造工程施工合同
- 2025版機(jī)械運(yùn)輸租賃及安裝指導(dǎo)服務(wù)合同范本3篇
- 2024年物流運(yùn)輸車輛維修保養(yǎng)合同模板3篇
- 2025版客車節(jié)能環(huán)保技術(shù)應(yīng)用與推廣承包協(xié)議3篇
- 2025版航空航天設(shè)備設(shè)計(jì)與制造合同范本3篇
- 傷口造口護(hù)理質(zhì)量標(biāo)準(zhǔn)
- 熱性驚厥診斷治療與管理專家共識
- 《橋梁輕量化監(jiān)測系統(tǒng)建設(shè)規(guī)范(征求意見稿)》
- 現(xiàn)代農(nóng)業(yè)產(chǎn)業(yè)園建設(shè)規(guī)劃方案(2篇)
- 物流配送中心租賃合同
- 幼兒園幼小銜接方案及反思
- 生命科學(xué)前沿技術(shù)智慧樹知到期末考試答案章節(jié)答案2024年蘇州大學(xué)
- 低空經(jīng)濟(jì)產(chǎn)業(yè)園項(xiàng)目可行性研究報(bào)告
- 中國神話故事繪本倉頡造字
- 消化道出血護(hù)理新進(jìn)展
- MOOC 心理健康與創(chuàng)新能力-電子科技大學(xué) 中國大學(xué)慕課答案
評論
0/150
提交評論