計算機操作系統(tǒng)(第四版)課后習題答案第三章_第1頁
計算機操作系統(tǒng)(第四版)課后習題答案第三章_第2頁
計算機操作系統(tǒng)(第四版)課后習題答案第三章_第3頁
計算機操作系統(tǒng)(第四版)課后習題答案第三章_第4頁
計算機操作系統(tǒng)(第四版)課后習題答案第三章_第5頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第三章處理機調度與死鎖1,高級調度與低級調度的主要任務是什么?為什么要引入中級調度?【解】(1)高級調度主要任務是用于決定把外存上處于后備隊列中的那些作業(yè)調入內存,并為它們創(chuàng)建進程,分配必要的資源,然后再將新創(chuàng)建的進程排在就緒隊列上,準備執(zhí)行。(2)低級調度主要任務是決定就緒隊列中的哪個進程將獲得處理機,然后由分派程序執(zhí)行把處理機分配給該進程的操作。(3)引入中級調度的主要目的是為了提高內存的利用率和系統(tǒng)吞吐量。為此,應使那些暫時不能運行的進程不再占用寶貴的內存空間,而將它們調至外存上去等待,稱此時的進程狀態(tài)為就緒駐外存狀態(tài)或掛起狀態(tài)。當這些進程重又具備運行條件,且內存又稍有空閑時,由中級調度

2、決定,將外存上的那些重又具備運行條件的就緒進程重新 調入內存,并修改其狀態(tài)為就緒狀態(tài),掛在就緒隊列上,等待進程調度。3、何謂作業(yè)、作業(yè)步和作業(yè)流?【解】作業(yè)包含通常的程序和數(shù)據(jù),還配有作業(yè)說明書。系統(tǒng)根據(jù)該說明書對 程序的運行進行控制。批處理系統(tǒng)中是以作業(yè)為基本單位從外存調入內存。 作業(yè)步是指每個作業(yè)運行期間都必須經(jīng)過若干個相對獨立相互關聯(lián)的順序加工的 步驟。作業(yè)流是指若干個作業(yè)進入系統(tǒng)后依次存放在外存上形成的輸入作業(yè)流;在操作系統(tǒng)的控制下,逐個作業(yè)進程處理,于是形成了處理作業(yè)流。4、 在什么情冴下需要使用作業(yè)控制塊JCB其中包含了哪些內容?【解】每當作業(yè)進入系統(tǒng)時,系統(tǒng)便為每個作業(yè)建立一個作

3、業(yè)控制塊JCB根據(jù)作業(yè)類型將它插入到相應的后備隊列中。JCB包含的內容通常有:1)作業(yè)標識2)用戶名稱3)用戶賬戶4)作業(yè)類型(CPU 繁忙型、I/O芳名型、批量型、終端型)5)作業(yè)狀態(tài)6)調度信息(優(yōu)先級、作業(yè)已運行)7)資源要求8)進入系統(tǒng)時間9)開始處理時間10)作業(yè)完成時間11)作業(yè) 退出時間12)資源使用情況等5 .在作業(yè)調度中應如何確定接納多少個作業(yè)和接納哪些作業(yè)?【解】作業(yè)調度每次接納進入內存的作業(yè)數(shù),取決于多道程序度。應將哪些作 業(yè)從外存調入內存,取決于采用的調度算法。最簡單的是先來服務調度算法,較常 用的是短作業(yè)優(yōu)先調度算法和基于作業(yè)優(yōu)先級的調度算法。7 試說明低級調度的主要

4、功能?!窘狻浚?)保存處理機的現(xiàn)場信息(2)按某種算法選取進程(3)把處理機分 配給進程。8、在搶占調度方式中,搶占的原則是什么?【解】剝奪原則有:(1)時間片原則各進程按時間片運行,當一個時間片用完后,便停止該進程的執(zhí)行而重新進行調度。這種原則適用于分時系統(tǒng)、大多數(shù)實時系統(tǒng),以及要求較高的批處理系統(tǒng)。(2)優(yōu)先權原則 通常是對一些重要的和緊急的作業(yè)賦予較高的優(yōu)先權。當這種作業(yè)到達時,如果其優(yōu)先權比正在執(zhí)行進程的優(yōu)先權高,便停止正在執(zhí)行的進程,將處理機分配給優(yōu)先權高的進程, 使之執(zhí)行。(3)短作業(yè)(進程)優(yōu)先原則當新到達的作業(yè)(進程)比正在執(zhí)行的作業(yè)(進程)明顯地短時,將剝奪長作業(yè)(進程)的執(zhí)

5、行,將處理機分配給短 作業(yè)(進程),使之優(yōu)先執(zhí)行。9、選擇調度方式和調度算法時,應遵循的準則是什么?【解】應遵循的準則有(1)面向用戶的準則:周轉時間短,響應時間快,截止時間的保證,優(yōu)先權準則。(2)面向系統(tǒng)的準則:系統(tǒng)吞吐量高,處理機利用率好,各類資源的平衡利用。10、 在批處理系統(tǒng)、分時系統(tǒng)和實時系統(tǒng)中,各采用哪幾種進程(作業(yè))調度算法?【解】批處理系統(tǒng):FCFS算法、最小優(yōu)先數(shù)優(yōu)先算法、搶占式最小優(yōu)先數(shù)優(yōu)先算法分時系統(tǒng):可剝奪調度、輪轉調度實時系統(tǒng):時間片輪轉調度算法、非搶占優(yōu)先權調度算法、基于時鐘中斷搶占的優(yōu)先權調度算法、 立即搶占的優(yōu)先權調度。11、何謂靜態(tài)和動態(tài)優(yōu)先權?確定靜態(tài)優(yōu)先

6、權的依據(jù)是什么?【解】靜態(tài)優(yōu)先權是在創(chuàng)建進程時確定的,且在進程的整個運行期間保持不 變。動態(tài)優(yōu)先權是指,在創(chuàng)建進程時所賦予的優(yōu)先權,是可以隨進程的推進或隨其等待時間的增加而改變的, 以便獲得更好的調度性能。確定靜態(tài)優(yōu)先權的依據(jù)是:(1)進程類型,通常系統(tǒng)進程的優(yōu)先權高于一般用戶進程的優(yōu)先權。(2)進程對資源的需要。(3 )用戶要求,用戶進程的緊迫程度及用戶所付費用的多少來確定優(yōu)先權的。12、試比較FCFS和 SPF兩種進程調度算法?!窘狻縁CFS算法按照作業(yè)提交或進程變?yōu)榫途w狀態(tài)的先后次序,分派CPU。當前作業(yè)或進程占有 CPU,直到執(zhí)行完或阻塞,才讓出CPU。在作業(yè)或進程喚醒后, 并不立即恢

7、復執(zhí)行,通常等到當前作業(yè)或進程讓出CPU。FCFS比較有利于長作業(yè),而不利于短作業(yè);有利于 CPU繁忙的作業(yè),而不利于 I/O繁忙的作業(yè)。SPF有利于短進程調度,是從就緒隊列中選出一估計運行時間最短的進程,將處理機分配給它,使它立即執(zhí)行并一直執(zhí)行到完成,或發(fā)生某事件而被阻塞放棄處理機時,再重新調度。比FCFS改善了平均周轉時間和平均帶權周轉時間,縮短了作業(yè)的等待時間,提高了系統(tǒng)的吞吐量。但 SPF有其不容忽視的缺點:該算法對長作業(yè)不利;完 全未考慮作業(yè)的緊迫程度,因而不能保證緊迫性作業(yè)(進程)會被及時處理;用戶 可能會有意無意地干擾作業(yè)的運行時間,致使該算法不一定能真正做到短作業(yè)優(yōu)先調度。13

8、、在時間片輪轉法中,應如何確定時間片的大???【解】時間片應略大于一次典型的交互需要的時間。一般應考慮三個因素:系統(tǒng)對相應時間的要求、就緒隊列中進程的數(shù)目和系統(tǒng)的處理能力。14、通過一個例子來說明通常的優(yōu)先級調度算法不能適用于實時系統(tǒng)?【解】實時系統(tǒng)的調度算法很多,主要是基于任務的開始截止時間和任務緊急/松弛程度的任務優(yōu)先級調度算法,通常的優(yōu)先級調度算法不能滿足實時系統(tǒng)的調 度實時性要求而不適用。15、為什么說多級反饋隊列調度算法能較好地滿足各方面用戶的需要?【解】(1)對于終端型用戶來說,他們提交的大多屬于較小的交互型作業(yè), 系統(tǒng)只要能使這些作業(yè) (進程)在第一隊列所規(guī)定的時間片內完成,便可使

9、終端型作業(yè)用戶都感到滿意。(2)對短批處理作業(yè)用戶來說,在第一隊列中執(zhí)行一個時間片或至多只需在第二隊列和第三隊列中各執(zhí)行一個時間片即可完成。(3)對長批處理作業(yè)用戶來說,只要將作業(yè)依次在第1, 2, , n個隊列中運行,然后再按輪轉方式運行,用戶不必擔心其作業(yè)長期得不到處理。16、19、為什么在實時系統(tǒng)中,要求系統(tǒng)(尤其是CPU)具有較強的處理能力?【解】在實時系統(tǒng)中都存在著若干個實時進程或任務,它們用來反應或控制某個(些)外部事件,往往帶有某種程度的緊迫性,因而對實時系統(tǒng)中的調度提出 了某些特殊要求。若處理機的處理能力不夠強,則有可能因處理機忙不過來而使某些實時任務不能得到及時處理,從而導致

10、發(fā)生難以預料的后果。20、按調度方式可將實時調度算法分為哪幾種?【解】按調度方式可將實時調度算法分為兩大類四小類:(1)非搶占式調度算法:非搶占式輪轉調度算法;非搶占式優(yōu)先調度算法;(2)搶占式調度算法:基于時鐘中斷的搶占式優(yōu)先權調度算法;立即搶占的優(yōu)先權調度算法。21、什么是最早截止時間優(yōu)先調度算法?舉例說明之?!窘狻吭谙到y(tǒng)中保持一個實時任務就緒隊列,該隊列按各任務截止時間的早晚排序,截止時間愈早的優(yōu)先級愈高, 在隊列中排列愈靠前,調度程序在選擇任務時, 總是選擇就緒隊列中的第一個任務,為之分配處理機,使之投入運行。例:四個非周期任務,它們先后到達。系統(tǒng)首先調度任務1執(zhí)行,在任務1執(zhí)行期間,

11、任務 2、3又先后到達。由于任務3的開始截止時間早于任務 2,系統(tǒng)在任務1后將調度 任務3執(zhí)行。在此期間又到達作業(yè) 4,其開始截止時間仍是早于任務 2的,在任務 3執(zhí)行完后,系統(tǒng)又調度任務 4的執(zhí)行,最后才調度任務 2執(zhí)行。22、什么是最低松弛度優(yōu)先調度算法?舉例說明之?!窘狻吭撍惴ㄊ歉鶕?jù)任務緊急(或松弛)的程度,來確定任務的優(yōu)先級。任務的緊急程度愈高,為該任務所賦予的優(yōu)先級就愈高,以使之優(yōu)先執(zhí)行。例如,一個任務 在200 ms時必須完成,而它本身所需的運行時間就有100 ms,因此,調度程序必須在100 ms之前調度執(zhí)行,該任務的緊急程度(松弛程度)1 100 ms o又如,另一任務在400

12、 ms時必須完成,它本身需要運行150 ms,則其松弛程度為 250 ms。27、何謂死鎖?產(chǎn)生死鎖的原因和必要條件是什么?【解】所謂死鎖,是指多個進程因競爭資源而造成的一種僵局,若無外力作用,這些進程都將永遠不能再向前推進。產(chǎn)生死鎖的原因:(1)競爭資源,當系統(tǒng)中供多個進程所共享的資源,不足以同時滿足它們的需要時,引起它們對資源的競爭而產(chǎn)生死鎖;(2)進程推進順序非法,進程在運行過程中,請求和釋放資源的順序不當,導致進程死鎖。產(chǎn)生死鎖的必要條件:(1)互斥條件進程對所分配到的資源進行排他性使用。如果此時還有其他進程請求該資源,請求者只能阻塞,直到占有該資源的進程釋放該資源。(2)請求和保持條

13、件進程已經(jīng)保持了至少一個資源, 但又提出了新的資源要求,而該資源又已被其他進程占有,此時請求進程阻塞,但請求進程又對已經(jīng)獲得的其他資源保持不放。(3)不剝奪條件 進程已獲得的資源,在未使用完之前,不能被剝奪,只能在使用完后由自己釋放。 (4)環(huán)路等待條件 在發(fā)生死鎖時,必然存在一個進程一一資源的 環(huán)形鏈。29、請詳細說明可通過哪些途徑預防死鎖?【解】可以通過:(1)摒棄“請求和保持”條件,系統(tǒng)要求所有進程要一次性地申請 在整個運行過程所需的全部資源。如系統(tǒng)有足夠的資源分配給進程,便一次性的把其所需要的所有資源分配給該進程。這樣,該進程在整個運行期間, 便不會再提出資源要求, 從而摒棄了請求條件

14、。但在分配時,只要有一種資源要求得不到滿足,則即使是已有的其他資源,也全部不分配給該進程,而讓該進程等待。 這樣,由于等待期間的進程未占有任何資源,因而也摒棄了保持條件,從而可以避 免發(fā)生死鎖。 (2)摒棄“不剝奪”條件,進程是在需要資源時才提出請求,這 樣,一個已經(jīng)保持了某些資源的進程,當它在提出新的資源要求而不能立即得到 滿足時,必須釋放它已經(jīng)保持的所有資源,待以后需要時再重新申請。這意味著進程已經(jīng)占有的資源,在運行過程中可能會暫時釋放,也可認為是被剝奪了,從而摒棄了 “不剝奪條件” 。(3)摒棄“環(huán)路等待”條件,系統(tǒng)將所有資源按類型進行 線性排隊,并賦予不同的序號。所有進程對資源的請求必

15、須嚴格按資源序號遞增 的次序提出,這樣,在所形成的資源分配圖中,不可能再出現(xiàn)環(huán)路,從而摒棄了 “環(huán)路等待”條件。30、在銀行家算法的例子中,如果 P0發(fā)出的請求向量由Requests,2,0)改為Request(0,1,0),問系統(tǒng)可否將資源分配給它?【解】 能。 request0(0,1,0) < need0(7,4,3);request0(0,1,0) w available(2,3,0);系統(tǒng)暫 時先假定可為P0分配資源,并修改有關數(shù)據(jù),如下所示:allocati onABCn eedavailableABCABCP00207332 2 0P1302020P2302600P3211

16、011P4002431存在一個安全序列P1,P3,P0,P2,P4故系統(tǒng)是安全的,可以分配資源。31、在銀行家算法中,若出現(xiàn)下述資源分配情況:ProcessAllocati onNeedAvailableP0003200 121622P110001750P213542 356P303320652P400 140656試問:(1)該狀態(tài)是否安全?(2)若進程P2提出請求Request (1, 2, 2, 2)后,系統(tǒng)能否將資源分配給它?,找到了一個安全序【解】(1)利用安全性算法對上面的狀態(tài)進行分析(見下表)列P0,P3,P4,P1,P2故系統(tǒng)是安全的。WorkNeedAllocati onWork+Allocatio nFinishP0162200 1200321654trueP31654065203321986trueP41986065600 1419910trueP11 99 101750100029910trueP22 99 102 35613543121414true(2) P2發(fā)出請求向量 Request(1,2,2,2),系統(tǒng)按銀行家算法進行檢查: Request2(1,2,2,2)<=Need2(2,3,5,6) Request2(1

溫馨提示

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

評論

0/150

提交評論