第2章習(xí)題解答19837_第1頁
第2章習(xí)題解答19837_第2頁
第2章習(xí)題解答19837_第3頁
第2章習(xí)題解答19837_第4頁
第2章習(xí)題解答19837_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、第2章習(xí)題解答一、填空1進(jìn)程在執(zhí)行過程中有3種基本狀態(tài),它們是 運(yùn)行 態(tài)、 就緒 態(tài)和 阻塞 態(tài)。2系統(tǒng)中一個(gè)進(jìn)程由 程序 、 數(shù)據(jù)集合 和 進(jìn)程控制塊(PCB) 三部分組成。3在多道程序設(shè)計(jì)系統(tǒng)中,進(jìn)程是一個(gè) 動(dòng) 態(tài)概念,程序是一個(gè) 靜 態(tài)概念。4在一個(gè)單CPU系統(tǒng)中,若有5個(gè)用戶進(jìn)程。假設(shè)當(dāng)前系統(tǒng)為用戶態(tài),則處于就緒狀態(tài)的用戶進(jìn)程最多有 4 個(gè),最少有 0 個(gè)。注意,題目里給出的是假設(shè)當(dāng)前系統(tǒng)為用戶態(tài),這表明現(xiàn)在有一個(gè)進(jìn)程處于運(yùn)行狀態(tài),因此最多有4個(gè)進(jìn)程處于就緒態(tài)。也可能除一個(gè)在運(yùn)行外,其他4個(gè)都處于阻塞。這時(shí),處于就緒的進(jìn)程一個(gè)也沒有。5總的來說,進(jìn)程調(diào)度有兩種方式,即 不可剝奪 方式和

2、 剝奪 方式。6進(jìn)程調(diào)度程序具體負(fù)責(zé) 中央處理機(jī)(CPU)的分配。7為了使系統(tǒng)的各種資源得到均衡使用,進(jìn)行作業(yè)調(diào)度時(shí),應(yīng)該注意 CPU忙碌 作業(yè)和 I/O忙碌 作業(yè)的搭配。8所謂系統(tǒng)調(diào)用,就是用戶程序要調(diào)用 操作系統(tǒng) 提供的一些子功能。9作業(yè)被系統(tǒng)接納后到運(yùn)行完畢,一般還需要經(jīng)歷 后備 、 運(yùn)行 和 完成 三個(gè)階段。10假定一個(gè)系統(tǒng)中的所有作業(yè)同時(shí)到達(dá),那么使作業(yè)平均周轉(zhuǎn)時(shí)間為最小的作業(yè)調(diào)度算法是 短作業(yè)優(yōu)先 調(diào)度算法。11在引入線程的操作系統(tǒng)中,所謂“線程”,是指進(jìn)程中實(shí)施 處理機(jī)調(diào)度和分配 的基本單位。12有了線程概念后,原來的進(jìn)程就屬于是 單線程 的進(jìn)程情形。二、選擇1在進(jìn)程管理中,當(dāng)

3、C 時(shí),進(jìn)程從阻塞狀態(tài)變?yōu)榫途w狀態(tài)。A進(jìn)程被調(diào)度程序選中B進(jìn)程等待某一事件發(fā)生C等待的事件出現(xiàn)D時(shí)間片到2在分時(shí)系統(tǒng)中,一個(gè)進(jìn)程用完給它的時(shí)間片后,其狀態(tài)變?yōu)?A 。A就緒B等待C運(yùn)行D由用戶設(shè)定3下面對(duì)進(jìn)程的描述中,錯(cuò)誤的是 D 。A進(jìn)程是動(dòng)態(tài)的概念B進(jìn)程的執(zhí)行需要CPUC進(jìn)程具有生命周期D進(jìn)程是指令的集合4操作系統(tǒng)通過 B 對(duì)進(jìn)程進(jìn)行管理。AJCBBPCBCDCTDFCB5一個(gè)進(jìn)程被喚醒,意味著該進(jìn)程 D 。A重新占有CPUB優(yōu)先級(jí)變?yōu)樽畲驝移至等待隊(duì)列之首D變?yōu)榫途w狀態(tài)6由各作業(yè)JCB形成的隊(duì)列稱為 C 。A就緒作業(yè)隊(duì)列B阻塞作業(yè)隊(duì)列C后備作業(yè)隊(duì)列D運(yùn)行作業(yè)隊(duì)列7既考慮作業(yè)等待時(shí)間,又考

4、慮作業(yè)執(zhí)行時(shí)間的作業(yè)調(diào)度算法是 A 。A響應(yīng)比高者優(yōu)先B短作業(yè)優(yōu)先C優(yōu)先級(jí)調(diào)度D先來先服務(wù)8作業(yè)調(diào)度程序從處于 D 狀態(tài)的隊(duì)列中選取適當(dāng)?shù)淖鳂I(yè)投入運(yùn)行。A就緒B提交C等待D后備9 A 是指從作業(yè)提交系統(tǒng)到作業(yè)完成的時(shí)間間隔。A周轉(zhuǎn)時(shí)間B響應(yīng)時(shí)間C等待時(shí)間D運(yùn)行時(shí)間10計(jì)算機(jī)系統(tǒng)在執(zhí)行 C 時(shí),會(huì)自動(dòng)從目態(tài)變換到管態(tài)。AP操作BV操作C系統(tǒng)調(diào)用DI/O指令11進(jìn)程狀態(tài)由就緒變?yōu)檫\(yùn)行,是由于 C 引起的。A中斷事件B進(jìn)程狀態(tài)變遷C進(jìn)程調(diào)度D為作業(yè)創(chuàng)建進(jìn)程三、問答1在多道程序設(shè)計(jì)系統(tǒng)中,如何理解“內(nèi)存中的多個(gè)程序的執(zhí)行過程交織在一起,大家都在走走停?!边@樣一個(gè)現(xiàn)象?答:在多道程序設(shè)計(jì)系統(tǒng)中,內(nèi)存中存

5、放多個(gè)程序,它們以交替的方式使用CPU。因此,從宏觀上看,這些程序都開始了自己的工作。但由于CPU只有一個(gè),在任何時(shí)刻CPU只能執(zhí)行一個(gè)進(jìn)程程序。所以這些進(jìn)程程序的執(zhí)行過程是交織在一起的。也就是說,從微觀上看,每一個(gè)進(jìn)程一會(huì)兒在向前走,一會(huì)兒又停步不前,處于一種“走走停?!钡臓顟B(tài)之中。2什么是“原語”、“特權(quán)指令”、“系統(tǒng)調(diào)用命令”和“訪管指令”?它們之間有無一定的聯(lián)系?答:特權(quán)指令和訪管指令都是CPU指令系統(tǒng)中的指令,只是前者是一些只能在管態(tài)下執(zhí)行的指令,后者是一條只能在目態(tài)下執(zhí)行的指令。原語和系統(tǒng)調(diào)用命令都是操作系統(tǒng)中的功能程序,只是前者執(zhí)行時(shí)不能被其他程序所打斷,后者沒有這個(gè)要求。操作系

6、統(tǒng)中有些系統(tǒng)調(diào)用命令是以原語的形式出現(xiàn)的,例如創(chuàng)建進(jìn)程就是一條原語式的系統(tǒng)調(diào)用命令。但并不是所有系統(tǒng)調(diào)用命令都是原語。因?yàn)槿绻菢拥脑?,整個(gè)系統(tǒng)的并發(fā)性就不可能得到充分地發(fā)揮。3操作系統(tǒng)是如何處理源程序中出現(xiàn)的系統(tǒng)調(diào)用命令的?答:編譯程序總是把源程序中的系統(tǒng)調(diào)用命令改寫成為一條訪管指令和相應(yīng)的參數(shù)。這樣在程序?qū)嶋H被執(zhí)行時(shí),就通過訪管指令進(jìn)入操作系統(tǒng),達(dá)到調(diào)用操作系統(tǒng)功能子程序的目的。4系統(tǒng)調(diào)用與一般的過程調(diào)用有什么區(qū)別?答:系統(tǒng)調(diào)用是指在用戶程序中調(diào)用操作系統(tǒng)提供的功能子程序;一般的過程調(diào)用是指在一個(gè)程序中調(diào)用另一個(gè)程序。因此它們之間有如下三點(diǎn)區(qū)別。(1)一般的過程調(diào)用,調(diào)用者與被調(diào)用者都運(yùn)行

7、在相同的CPU狀態(tài),即或都處于目態(tài)(用戶程序調(diào)用用戶程序),或都處于管態(tài)(系統(tǒng)程序調(diào)用系統(tǒng)程序);但發(fā)生系統(tǒng)調(diào)用時(shí),發(fā)出調(diào)用命令的調(diào)用者運(yùn)行在目態(tài),而被調(diào)用的對(duì)象則運(yùn)行在管態(tài),即調(diào)用者與被調(diào)用者運(yùn)行在不同的CPU狀態(tài)。(2)一般的過程調(diào)用,是直接通過轉(zhuǎn)移指令轉(zhuǎn)向被調(diào)用的程序;但發(fā)生系統(tǒng)調(diào)用時(shí),只能通過訪管指令提供的一個(gè)統(tǒng)一的入口,由目態(tài)進(jìn)入管態(tài),經(jīng)分析后,才轉(zhuǎn)向相應(yīng)的操作系統(tǒng)命令處理程序。(3)一般的過程調(diào)用,在被調(diào)用者執(zhí)行完后,就徑直返回?cái)帱c(diǎn)繼續(xù)執(zhí)行;但系統(tǒng)調(diào)用可能會(huì)導(dǎo)致進(jìn)程狀態(tài)的變化,從而引起系統(tǒng)重新分配處理機(jī)。因此,系統(tǒng)調(diào)用處理結(jié)束后,不一定是返回調(diào)用者斷點(diǎn)處繼續(xù)執(zhí)行。5試述創(chuàng)建進(jìn)程原語

8、的主要功能。答:創(chuàng)建進(jìn)程原語的主要功能有以下三項(xiàng)。(1)為新建進(jìn)程申請(qǐng)一個(gè)PCB。(2)將創(chuàng)建者(即父進(jìn)程)提供的新建進(jìn)程的信息填入PCB中。(3)將新建進(jìn)程設(shè)置為就緒狀態(tài),并按照所采用的調(diào)度算法,把PCB排入就緒隊(duì)列中。6處于阻塞狀態(tài)的一個(gè)進(jìn)程,它所等待的事件發(fā)生時(shí),就把它的狀態(tài)由阻塞改變?yōu)榫途w,讓它到就緒隊(duì)列里排隊(duì),為什么不直接將它投入運(yùn)行呢?答:只要是涉及管理,就應(yīng)該有管理的規(guī)則,沒有規(guī)則就不成方圓。如果處于阻塞狀態(tài)的一個(gè)進(jìn)程,在它所等待的事件發(fā)生時(shí)就徑直將它投入運(yùn)行(也就是把CPU從當(dāng)前運(yùn)行進(jìn)程的手中搶奪過來),那么系統(tǒng)就無法控制對(duì)CPU這種資源的管理和使用,進(jìn)而也就失去了設(shè)置操作系統(tǒng)

9、的作用。所以,阻塞狀態(tài)的進(jìn)程在它所等待的事件發(fā)生時(shí),必須先進(jìn)入就緒隊(duì)列,然后再去考慮它使用CPU的問題。7作業(yè)調(diào)度與進(jìn)程調(diào)度有什么區(qū)別?答:作業(yè)調(diào)度和進(jìn)程調(diào)度(即CPU調(diào)度)都涉及到CPU的分配。但作業(yè)調(diào)度只是選擇參加CPU競爭的作業(yè),它并不具體分配CPU。而進(jìn)程調(diào)度是在作業(yè)調(diào)度完成選擇后的基礎(chǔ)上,把CPU真正分配給某一個(gè)具體的進(jìn)程使用。8系統(tǒng)中的各種進(jìn)程隊(duì)列都是由進(jìn)程的PCB鏈接而成的。當(dāng)一個(gè)進(jìn)程的狀態(tài)從阻塞變?yōu)榫途w狀態(tài)時(shí),它的PCB從哪個(gè)隊(duì)列移到哪個(gè)隊(duì)列?它所對(duì)應(yīng)的程序也要跟著移來移去嗎?為什么?答:當(dāng)一個(gè)進(jìn)程的狀態(tài)從阻塞變?yōu)榫途w時(shí),它的PCB就從原先在的阻塞隊(duì)列移到就緒隊(duì)列里。在把進(jìn)程的

10、PCB從這個(gè)隊(duì)列移到另一個(gè)隊(duì)列時(shí),只是移動(dòng)進(jìn)程的PCB,進(jìn)程所對(duì)應(yīng)的程序是不動(dòng)的。這是因?yàn)樵谶M(jìn)程的PCB里,總是記錄有它的程序的斷點(diǎn)信息。知道了斷點(diǎn)的信息,就能夠知道程序當(dāng)前應(yīng)該從哪里開始往下執(zhí)行了。這正是保護(hù)現(xiàn)場所起的作用。9為什么說響應(yīng)比高者優(yōu)先作業(yè)調(diào)度算法是對(duì)先來先服務(wù)以及短作業(yè)優(yōu)先這兩種調(diào)度算法的折中?答:先來先服務(wù)的作業(yè)調(diào)度算法,重點(diǎn)考慮的是作業(yè)在后備作業(yè)隊(duì)列里的等待時(shí)間,因此對(duì)短作業(yè)不利;短作業(yè)優(yōu)先的作業(yè)調(diào)度算法,重點(diǎn)考慮的是作業(yè)所需的CPU時(shí)間(當(dāng)然,這個(gè)時(shí)間是用戶自己估計(jì)的),因此對(duì)長作業(yè)不利?!绊憫?yīng)比高者優(yōu)先”作業(yè)調(diào)度算法,總是在需要調(diào)度時(shí),考慮作業(yè)已經(jīng)等待的時(shí)間和所需運(yùn)行時(shí)

11、間之比,即:該作業(yè)已等待時(shí)間 / 該作業(yè)所需CPU時(shí)間不難看出,這個(gè)比值的分母是一個(gè)不變的量。隨著時(shí)間的推移,一個(gè)作業(yè)的“已等待時(shí)間”會(huì)不斷發(fā)生變化,也就是分子在不斷地變化。顯然,短作業(yè)比較容易獲得較高的響應(yīng)比。這是因?yàn)樗姆帜篙^小,只要稍加等待,整個(gè)比值就會(huì)很快上升。另一方面,長作業(yè)的分母雖然很大,但隨著它等待時(shí)間的增加,比值也會(huì)逐漸上升,從而獲得較高的響應(yīng)比。根據(jù)這種分析,可見“響應(yīng)比高者優(yōu)先”的作業(yè)調(diào)度算法,既照顧到了短作業(yè)的利益,也照顧到了長作業(yè)的利益,是對(duì)先來先服務(wù)以及短作業(yè)優(yōu)先這兩種調(diào)度算法的一種折中。10短作業(yè)優(yōu)先調(diào)度算法總能得到最小的平均周轉(zhuǎn)時(shí)間嗎?為什么?答:短作業(yè)優(yōu)先調(diào)度算

12、法只有在所有作業(yè)同時(shí)到達(dá)后備作業(yè)隊(duì)列時(shí),才能得到最小的平均周轉(zhuǎn)時(shí)間。如果各作業(yè)不是同時(shí)到達(dá),這個(gè)結(jié)論是不成立的??梢杂梅蠢f明,例如,教材上舉有如下例子:考慮有5個(gè)作業(yè)A到E,運(yùn)行時(shí)間分別是2、4、1、1、1;到達(dá)時(shí)間分別是0、0、3、3、3。按照短作業(yè)優(yōu)先的原則,最初只有A和B可以參與選擇,因?yàn)槠渌?個(gè)還沒有到達(dá)。于是,運(yùn)行順序應(yīng)該是A、B、C、D、E。它們每個(gè)的周轉(zhuǎn)時(shí)間分別是2、6、4、5、6,平均周轉(zhuǎn)時(shí)間是4.6。但如果按照順序B、C、D、E、A來調(diào)度,它們每一個(gè)的周轉(zhuǎn)時(shí)間成為9、4、2、3、4,平均周轉(zhuǎn)時(shí)間是4.4。結(jié)果比短作業(yè)優(yōu)先調(diào)度算法好。之所以會(huì)這樣,就是因?yàn)檫@5個(gè)作業(yè)并沒有同時(shí)

13、到達(dá)。四、計(jì)算1有三個(gè)作業(yè):作 業(yè)到達(dá)時(shí)間所需CPU時(shí)間10.0820.4431.01分別采用先來先服務(wù)和短作業(yè)優(yōu)先作業(yè)調(diào)度算法。試問它們的平均周轉(zhuǎn)時(shí)間各是什么?你是否還可以給出一種更好的調(diào)度算法,使其平均周轉(zhuǎn)時(shí)間優(yōu)于這兩種調(diào)度算法?解:(1)采用先來先服務(wù)作業(yè)調(diào)度算法時(shí)的實(shí)施過程如下。作 業(yè)到達(dá)時(shí)間所需CPU時(shí)間開始時(shí)間完成時(shí)間周轉(zhuǎn)時(shí)間10.080.08.08.020.448.012.011.631.0112.013.012.0這時(shí),作業(yè)的調(diào)度順序是123。其平均周轉(zhuǎn)時(shí)間為:(8 + 11.6 + 12)/ 3 = 10.53(2)采用短作業(yè)優(yōu)先作業(yè)調(diào)度算法時(shí)的實(shí)施過程如下。作 業(yè)到達(dá)時(shí)間所

14、需CPU時(shí)間開始時(shí)間完成時(shí)間周轉(zhuǎn)時(shí)間10.080.08.08.031.018.09.08.020.449.013.012.6這里要注意,在作業(yè)1運(yùn)行完畢進(jìn)行作業(yè)調(diào)度時(shí),作業(yè)2和3都已經(jīng)到達(dá)。由于是實(shí)行短作業(yè)優(yōu)先作業(yè)調(diào)度算法,因此先調(diào)度作業(yè)3運(yùn)行,最后調(diào)度作業(yè)2運(yùn)行。所以,這時(shí)的作業(yè)調(diào)度順序是132。其平均周轉(zhuǎn)時(shí)間為:(8 + 8 + 12.6)/ 3 = 9.53(3)還可以有更好的作業(yè)調(diào)度算法,使其平均周轉(zhuǎn)時(shí)間優(yōu)于這兩種調(diào)度算法。例如,如果知道在作業(yè)1后面會(huì)來兩個(gè)短作業(yè),那么作業(yè)1到達(dá)后,先不投入運(yùn)行。而是等所有作業(yè)到齊后,再按照短作業(yè)優(yōu)先作業(yè)調(diào)度算法進(jìn)行調(diào)度,具體實(shí)施過程如下。作 業(yè)到達(dá)時(shí)

15、間所需CPU時(shí)間開始時(shí)間完成時(shí)間周轉(zhuǎn)時(shí)間31.011.02.01.020.442.06.05.610.086.014.014.0這時(shí)的作業(yè)調(diào)度順序是321。其平均周轉(zhuǎn)時(shí)間為:(1 + 5.6 + 14)/ 3 = 6.872設(shè)有一組作業(yè),它們的到達(dá)時(shí)間和所需CPU時(shí)間如下所示。作業(yè)號(hào)到達(dá)時(shí)間所需CPU時(shí)間19:0070分鐘29:4030分鐘39:5010分鐘410:105分鐘分別采用先來先服務(wù)和短作業(yè)優(yōu)先作業(yè)調(diào)度算法。試問它們的調(diào)度順序、作業(yè)周轉(zhuǎn)時(shí)間以及平均周轉(zhuǎn)時(shí)間各是什么?解:(1)采用先來先服務(wù)作業(yè)調(diào)度算法時(shí)的實(shí)施過程如下。作業(yè)號(hào)到達(dá)時(shí)間所需CPU時(shí)間開始時(shí)間完成時(shí)間周轉(zhuǎn)時(shí)間19:0070

16、分鐘9:0010:1070分鐘29:4030分鐘10:1010:4060分鐘39:5010分鐘10:4010:5060分鐘410:105分鐘10:5010:5545分鐘這時(shí),作業(yè)的調(diào)度順序是1234。其平均周轉(zhuǎn)時(shí)間為:(70 + 60 + 60 + 45)/ 4 = 58.75 (2)采用短作業(yè)優(yōu)先作業(yè)調(diào)度算法時(shí)的實(shí)施過程如下。作業(yè)號(hào)到達(dá)時(shí)間所需CPU時(shí)間開始時(shí)間完成時(shí)間周轉(zhuǎn)時(shí)間19:0070分鐘9:0010:1070分鐘410:105分鐘10:1010:155分鐘39:5010分鐘10:1510:2535分鐘29:4030分鐘10:2510:5575分鐘這時(shí),作業(yè)的調(diào)度順序是1432。其平均

17、周轉(zhuǎn)時(shí)間為:(70 + 5 + 35 + 75)/ 4 = 46.25 3某系統(tǒng)有三個(gè)作業(yè):作業(yè)號(hào)到達(dá)時(shí)間所需CPU時(shí)間18.81.529.00.439.51.0系統(tǒng)確定在它們?nèi)康竭_(dá)后,開始采用響應(yīng)比高者優(yōu)先調(diào)度算法,并忽略系統(tǒng)調(diào)度時(shí)間。試問對(duì)它們的調(diào)度順序是什么?各自的周轉(zhuǎn)時(shí)間是多少?解:三個(gè)作業(yè)是在9.5時(shí)全部到達(dá)的。這時(shí)它們各自的響應(yīng)比如下:作業(yè)1的響應(yīng)比 =(9.5 8.8)/ 1.5 = 0.46作業(yè)2的響應(yīng)比 =(9.5 9.0)/ 0.4 = 1.25作業(yè)3的響應(yīng)比 =(9.5 9.5)/ 1.0 = 0因此,最先應(yīng)該調(diào)度作業(yè)2運(yùn)行,因?yàn)樗捻憫?yīng)比最高。它運(yùn)行了0.4后完成,這時(shí)的時(shí)間是9.9。再計(jì)算作業(yè)1和3此時(shí)的響應(yīng)比:作業(yè)1

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論