現(xiàn)代操作系統(tǒng)教程(慕課版)-課后習(xí)題答案1-8章全帶原題_第1頁(yè)
現(xiàn)代操作系統(tǒng)教程(慕課版)-課后習(xí)題答案1-8章全帶原題_第2頁(yè)
現(xiàn)代操作系統(tǒng)教程(慕課版)-課后習(xí)題答案1-8章全帶原題_第3頁(yè)
現(xiàn)代操作系統(tǒng)教程(慕課版)-課后習(xí)題答案1-8章全帶原題_第4頁(yè)
現(xiàn)代操作系統(tǒng)教程(慕課版)-課后習(xí)題答案1-8章全帶原題_第5頁(yè)
已閱讀5頁(yè),還剩30頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第1章 操作系統(tǒng)緒論習(xí)題1.1 選擇題1、作為資源管理者,操作系統(tǒng)負(fù)責(zé)管理和控制計(jì)算機(jī)系統(tǒng)的( B )。A. 軟件資源 B. 硬件和軟件資源 C. 用戶有用資源 D硬件資源2、在計(jì)算機(jī)系統(tǒng)中,操作系統(tǒng)是一種( B )。A. 應(yīng)用軟件 B. 系統(tǒng)軟件 C. 用戶軟件D. 支撐軟件3、計(jì)算機(jī)系統(tǒng)中兩個(gè)或多個(gè)事件在同一時(shí)刻發(fā)生指的是( A )。A并行性 B并發(fā)性 C串行性 D多發(fā)性4、以下不屬于現(xiàn)代操作系統(tǒng)主要特性的是( A )。A. 實(shí)時(shí)性B. 虛擬性C. 并發(fā)性D. 不確定性5、下列關(guān)于多道程序設(shè)計(jì)技術(shù)的說法中錯(cuò)誤的是( B )。A需要中斷技術(shù)支持B在某時(shí)間點(diǎn)CPU可由多個(gè)進(jìn)程共享使用 C在某時(shí)

2、間點(diǎn)內(nèi)存可由多個(gè)進(jìn)程共享使用D可以提高CPU利用率6、( C )操作系統(tǒng)允許在一臺(tái)主機(jī)上同時(shí)聯(lián)接多臺(tái)終端,多個(gè)用戶可以通過各自的終端交互使用計(jì)算機(jī)。A網(wǎng)絡(luò) B分布式 C分時(shí) D實(shí)時(shí)7、設(shè)計(jì)多道批處理系統(tǒng)時(shí),首先要考慮的是( C )。A靈活性和可適應(yīng)性B交互性和響應(yīng)時(shí)間C系統(tǒng)效率和吞吐量D實(shí)時(shí)性和可靠性1.2 填空題1、Linus Torvalds因?yàn)槌晒Φ亻_發(fā)了操作系統(tǒng)( Linux )內(nèi)核,獲得了2014年計(jì)算機(jī)先驅(qū)獎(jiǎng)。2、用戶和操作系統(tǒng)之間的接口主要分為( 命令 )界面、( 程序 )接口和圖形界面。3、現(xiàn)代操作系統(tǒng)的四大主要管理模塊是指:( 處理器管理 )、( 存儲(chǔ)管理 )、( 設(shè)備管理

3、)和( 文件管理 )。4、吞吐量是指系統(tǒng)在一段時(shí)間內(nèi)的( 輸入/輸出 )能力。1.3 簡(jiǎn)答題1、現(xiàn)代操作系統(tǒng)一般要滿足哪些主要的設(shè)計(jì)目標(biāo)?答:方便性。操作系統(tǒng)為用戶提供良好的、一致的用戶接口,用戶按需要輸入命令,操作系統(tǒng)按命令去控制程序的執(zhí)行;用戶也可以在程序中調(diào)用操作系統(tǒng)的功能模塊完成相應(yīng)服務(wù),而不必了解硬件的物理特性。有效性。操作系統(tǒng)可有效地管理和分配硬件、軟件資源,合理地組織計(jì)算機(jī)的工作流程,提高系統(tǒng)工作效率。操作系統(tǒng)可擴(kuò)充硬件的功能,使硬件的功能發(fā)揮得更好。操作系統(tǒng)使用戶合理共享資源,防止各用戶間的相互干擾。操作系統(tǒng)以文件形式管理軟件資源,保證信息的安全和快速存取??蓴U(kuò)充性。為滿足計(jì)算

4、機(jī)硬件與體系結(jié)構(gòu)的發(fā)展以及不斷擴(kuò)大的應(yīng)用要求,操作系統(tǒng)應(yīng)能方便地?cái)U(kuò)展新的功能。開放性。開放性指的是產(chǎn)品和技術(shù)之間相互連接和協(xié)作的能力。無(wú)論是硬件還是軟件范籌,開放性接口都已作為一種明確的或?qū)嶋H的行業(yè)標(biāo)準(zhǔn)廣泛應(yīng)用在公開發(fā)行的文檔中。2、操作系統(tǒng)的作用可從哪些方面來理解?答:操作系統(tǒng)是用戶與計(jì)算機(jī)硬件之間的接口??梢哉J(rèn)為操作系統(tǒng)是對(duì)計(jì)算機(jī)硬件系統(tǒng)的第一次擴(kuò)充,用戶通過操作系統(tǒng)來使用計(jì)算機(jī)系統(tǒng)。操作系統(tǒng)是計(jì)算機(jī)系統(tǒng)的資源管理者。操作系統(tǒng)統(tǒng)一管理系統(tǒng)資源,為用戶提供簡(jiǎn)單、有效的資源使用手段,最大限度實(shí)現(xiàn)各類資源的共享,提高資源利用率。3、請(qǐng)描述現(xiàn)代操作系統(tǒng)的定義和主要特性。答:操作系統(tǒng)定義:操作系統(tǒng)是

5、計(jì)算機(jī)系統(tǒng)中的系統(tǒng)軟件,是一些程序模塊的集合它們能以盡量有效、合理的方式組織和管理計(jì)算機(jī)的軟、硬件資源,合理的組織計(jì)算機(jī)的工作流程;控制程序的執(zhí)行并向用戶提供各種服務(wù)功能 ,使整個(gè)計(jì)算機(jī)系統(tǒng)能高效地運(yùn)行;改善人機(jī)界面,使用戶能夠靈活、方便、有效的使用計(jì)算機(jī)。主要特性:包括并發(fā)性、共享性、不確定性、虛擬性。4、分別簡(jiǎn)單敘述批處理操作系統(tǒng)、分時(shí)操作系統(tǒng)、實(shí)時(shí)操作系統(tǒng)的基本特點(diǎn)。答:批處理操作系統(tǒng)的基本特征是“批量處理”,它是將任務(wù)成批裝入計(jì)算機(jī),由操作系統(tǒng)將其組織好,按某種調(diào)度算法選擇一道或幾道任務(wù)裝入內(nèi)存運(yùn)行。它的設(shè)計(jì)目標(biāo)主要是提高資源利用率與系統(tǒng)的吞吐量。分時(shí)操作系統(tǒng)是指一臺(tái)主機(jī)與多個(gè)終端相連

6、,允許多個(gè)用戶通過終端同時(shí)以交互的方式使用計(jì)算機(jī)系統(tǒng),共享資源,使每個(gè)用戶感到好像自己獨(dú)占一臺(tái)支持自己請(qǐng)求服務(wù)的計(jì)算機(jī)系統(tǒng)。實(shí)時(shí)操作系統(tǒng)的主要特點(diǎn)是響應(yīng)及時(shí)和可靠性高。所謂“實(shí)時(shí)”是指對(duì)隨機(jī)發(fā)生的外部事件作出及時(shí)的響應(yīng)并能對(duì)其進(jìn)行處理。實(shí)時(shí)操作系統(tǒng)的設(shè)計(jì)目標(biāo)是能對(duì)特定的輸入作出及時(shí)響應(yīng),并在規(guī)定的時(shí)間內(nèi)完成對(duì)事件的處理。5、在多道程序設(shè)計(jì)系統(tǒng)中,如何理解“內(nèi)存中的多個(gè)程序的執(zhí)行過程交織在一起,各個(gè)進(jìn)程都在走走停?!钡默F(xiàn)象?答:在多道程序設(shè)計(jì)系統(tǒng)中,內(nèi)存中存放多個(gè)程序,它們以交替的方式使用CPU。因此,從宏觀上看,這些程序都開始了自己的工作。但由于CPU只有一個(gè),在任何時(shí)刻CPU只能執(zhí)行一個(gè)進(jìn)程

7、程序。所以這些進(jìn)程程序的執(zhí)行過程是交織在一起的。也就是說,從微觀上看,每一個(gè)進(jìn)程一會(huì)兒在向前進(jìn)行,一會(huì)兒又停步不前,處于一種“走走停?!钡臓顟B(tài)之中。1.4 解答題1、一個(gè)計(jì)算機(jī)系統(tǒng),有一臺(tái)輸入機(jī)和一臺(tái)打印機(jī),現(xiàn)有兩道程序投入運(yùn)行,且程序A先開始運(yùn)行,程序B后開始運(yùn)行。程序A的運(yùn)行軌跡為:計(jì)算50ms、打印100ms、再計(jì)算50ms、打印100ms,結(jié)束。程序B的運(yùn)行軌跡為:計(jì)算50ms、輸入80ms、再計(jì)算100ms,結(jié)束。請(qǐng)回答以下問題:兩道程序運(yùn)行時(shí),CPU有無(wú)空閑等待?若有,在哪段時(shí)間內(nèi)等待?為什么會(huì)等待?程序A、B有無(wú)等待CPU的情況?若有,指出發(fā)生等待的時(shí)刻。答:兩道程序并發(fā)執(zhí)行圖如

8、下:由此圖可以直觀的看出CPU的空閑等待以及程序的彼此等待時(shí)間。第2章 處理器管理習(xí)題1.1 選擇題1、下列選項(xiàng)中,不屬于進(jìn)程關(guān)鍵要素的是( D )。A程序B數(shù)據(jù)和棧C進(jìn)程控制塊D原語(yǔ)2、操作系統(tǒng)管理程序運(yùn)行的狀態(tài),具備較高的特權(quán)級(jí)別,稱為( C )。A用戶態(tài) B目態(tài)C管態(tài) D普通態(tài)3、在操作系統(tǒng)中,PSW的中文全稱是( A )。A程序狀態(tài)字 B進(jìn)程標(biāo)識(shí)符C作業(yè)控制塊 D進(jìn)程控制塊4、當(dāng)系統(tǒng)中或系統(tǒng)外發(fā)生異步事件時(shí),CPU暫停正在執(zhí)行的程序,保留現(xiàn)場(chǎng)后轉(zhuǎn)去執(zhí)行相應(yīng)事件的處理程序,處理完成后返回?cái)帱c(diǎn),繼續(xù)執(zhí)行被打斷的進(jìn)程,這一過程稱為( D )。A作業(yè)調(diào)度 B頁(yè)面置換C磁盤調(diào)度 D中斷5、以下關(guān)

9、于進(jìn)程的說法,錯(cuò)誤的是( B )。A進(jìn)程是程序在處理器上的一次執(zhí)行過程B一個(gè)進(jìn)程是由若干作業(yè)組成的C在線程出現(xiàn)后,進(jìn)程仍然是操作系統(tǒng)中資源分配的基本單位D進(jìn)程具有創(chuàng)建其他進(jìn)程的功能6、在下述關(guān)于父進(jìn)程和子進(jìn)程的敘述中,正確的是( D )。A父進(jìn)程創(chuàng)建了子進(jìn)程,因此父進(jìn)程執(zhí)行完了,子進(jìn)程才能運(yùn)行B子進(jìn)程執(zhí)行完了,父進(jìn)程才能運(yùn)行C撤消子進(jìn)程時(shí),應(yīng)該同時(shí)撤消父進(jìn)程D一個(gè)子進(jìn)程只有一個(gè)父進(jìn)程,但一個(gè)父進(jìn)程可以有多個(gè)子進(jìn)程7、任何兩個(gè)并發(fā)進(jìn)程之間( D )。A一定存在互斥關(guān)系 B一定存在同步關(guān)系C一定彼此獨(dú)立無(wú)關(guān) D可能存在同步或互斥關(guān)系8、調(diào)度程序每次把CPU分配給就緒隊(duì)列首進(jìn)程使用一個(gè)時(shí)間片,就緒隊(duì)

10、列中的每個(gè)進(jìn)程輪流地運(yùn)行一個(gè)時(shí)間片。當(dāng)這個(gè)時(shí)間片結(jié)束時(shí),強(qiáng)迫一個(gè)進(jìn)程讓出處理器,讓它排列到就緒隊(duì)列的尾部,等候下一輪調(diào)度。這種進(jìn)程調(diào)度方式稱為( D )調(diào)度。A最高響應(yīng)比優(yōu)先 B先來先服務(wù) C短作業(yè)優(yōu)先 D時(shí)間片輪轉(zhuǎn)9、若當(dāng)前進(jìn)程因時(shí)間片用完而讓出處理器時(shí),該進(jìn)程應(yīng)轉(zhuǎn)變?yōu)椋?A )狀態(tài)。A就緒 B等待C運(yùn)行 D完成10、在一個(gè)單核單處理器的系統(tǒng)中,若有3個(gè)進(jìn)程,且假定當(dāng)前時(shí)刻有一個(gè)進(jìn)程處于運(yùn)行態(tài),則處于就緒態(tài)的進(jìn)程最多有( B )個(gè)。A1 B2 C3 D4 11、下列作業(yè)調(diào)度算法中,( D )與作業(yè)的運(yùn)行時(shí)間和等待時(shí)間有關(guān)。A先來先服務(wù)算法 B短作業(yè)優(yōu)先算法C均衡調(diào)度算法 D最高響應(yīng)比調(diào)度算法

11、12、一作業(yè)8:00到達(dá)系統(tǒng),估計(jì)運(yùn)行時(shí)間為1小時(shí),若9:00開始執(zhí)行該作業(yè),其響應(yīng)比是( A )。A2 B1 C3 D0.513、臨界區(qū)是指并發(fā)進(jìn)程中訪問共享變量的( D )段。A管理信息 B信息存儲(chǔ) C數(shù)據(jù) D程序14、設(shè)與某資源關(guān)聯(lián)的信號(hào)量初值為3,當(dāng)前值為-1。若M表示該資源的可用個(gè)數(shù),N表示等待該資源的進(jìn)程數(shù),則M、N分別是( A )。A0、1B1、0C1、2D2、015、設(shè)某個(gè)信號(hào)量S的初值為5。若執(zhí)行某個(gè)V(S)時(shí),發(fā)現(xiàn)( A )時(shí),則喚醒相應(yīng)等待隊(duì)列中等待的一個(gè)進(jìn)程。AS的值小于或等于0BS的值大于或等于5CS的值小于5 DS的值大于516、以下不屬于產(chǎn)生死鎖原因的是( B )

12、。A因?yàn)橄到y(tǒng)資源不足B采用的進(jìn)程調(diào)度算法效率低下C進(jìn)程運(yùn)行推進(jìn)的順序不合適D資源分配不當(dāng)17、在多進(jìn)程的并發(fā)系統(tǒng)中,不會(huì)因競(jìng)爭(zhēng)(C)而產(chǎn)生死鎖。A打印機(jī) B磁帶機(jī)CCPU D磁盤18、當(dāng)每類資源只有一個(gè)資源實(shí)例時(shí),下列說法中不正確的是(C)。A有環(huán)必死鎖 B死鎖必有環(huán)C有環(huán)不一定死鎖 D死鎖進(jìn)程一定全在環(huán)中19、有關(guān)死鎖的論述中,(C)是正確的。A系統(tǒng)中僅有一個(gè)進(jìn)程進(jìn)入了死鎖狀態(tài)B多個(gè)進(jìn)程由于競(jìng)爭(zhēng)CPU而進(jìn)入死鎖C多個(gè)進(jìn)程由于競(jìng)爭(zhēng)互斥使用的資源又互不相讓而進(jìn)入死鎖D由于進(jìn)程調(diào)用V操作而造成死鎖20、進(jìn)程-資源分配圖是用于( D )。A死鎖的預(yù)防B解決死鎖的靜態(tài)方法C死鎖的避免D死鎖的檢測(cè)與解除

13、1.2 填空題1、Linux操作系統(tǒng)按照事件來源和實(shí)現(xiàn)手段將中斷分為( 硬中斷 )、( 軟中斷 )。2、系統(tǒng)調(diào)用是通過( 中斷 )來實(shí)現(xiàn)的;發(fā)生系統(tǒng)調(diào)用,處理器的狀態(tài)常從目態(tài)變?yōu)楣軕B(tài)。3、在Linux系統(tǒng)中,創(chuàng)建進(jìn)程的原語(yǔ)是( fork )。4、進(jìn)程的基本三狀態(tài)模型并不足夠描述進(jìn)程的真實(shí)的情況,進(jìn)程的五狀態(tài)模型增加了兩個(gè)狀態(tài),包括( 新建狀態(tài) )和( 終止?fàn)顟B(tài) )。5、系統(tǒng)中進(jìn)程存在的唯一標(biāo)志是(進(jìn)程控制塊PCB)。6、進(jìn)程上下文包括了進(jìn)程本身和運(yùn)行環(huán)境,是對(duì)進(jìn)程執(zhí)行活動(dòng)全過程的靜態(tài)描述。進(jìn)程上下文分成三個(gè)部分:( 用戶級(jí)上下文(進(jìn)程的用戶地址空間內(nèi)容) )、( 寄存器級(jí)上下文(硬件寄存器內(nèi)容

14、) )和( 系統(tǒng)級(jí)上下文(與該進(jìn)程相關(guān)的核心數(shù)據(jù)結(jié)構(gòu)) )。7、進(jìn)程調(diào)度方式通常有( 搶占 )和( 非搶占 )兩種方式。8、若信號(hào)量S的初值定義為10,則對(duì)S調(diào)用執(zhí)行了16次P操作和15次V操作后,S的值應(yīng)該為( 9 )。1.3 簡(jiǎn)答題1、請(qǐng)簡(jiǎn)單敘述進(jìn)程三態(tài)模型中的進(jìn)程狀態(tài)轉(zhuǎn)化情況。答:就緒態(tài)運(yùn)行態(tài):當(dāng)調(diào)度程序選擇一個(gè)新的進(jìn)程運(yùn)行時(shí),進(jìn)程會(huì)由就緒態(tài)切換到運(yùn)行態(tài);運(yùn)行態(tài)就緒態(tài):當(dāng)運(yùn)行進(jìn)程用完了獲得的時(shí)間片時(shí),進(jìn)程就會(huì)被中斷,由運(yùn)行態(tài)切換到就緒態(tài),或是因?yàn)橐桓邇?yōu)先級(jí)進(jìn)程處于就緒狀態(tài),正在運(yùn)行的低優(yōu)先級(jí)進(jìn)程會(huì)被中斷而由運(yùn)行態(tài)切換到就緒態(tài);運(yùn)行態(tài)等待態(tài):以下幾種情況會(huì)導(dǎo)致進(jìn)程會(huì)由運(yùn)行態(tài)切換到等待態(tài),例

15、如當(dāng)一進(jìn)程必須等待時(shí),或是操作系統(tǒng)尚未完成服務(wù),進(jìn)程對(duì)一資源的訪問尚不能進(jìn)行時(shí),還有初始化I/O且必須等待結(jié)果時(shí),在進(jìn)程間通信時(shí),進(jìn)程等待另一進(jìn)程提供輸入時(shí)等;等待態(tài)就緒態(tài):當(dāng)進(jìn)程所等待的事件發(fā)生時(shí),例如資源申請(qǐng)獲得滿足時(shí),或是等待的數(shù)據(jù)或信號(hào)到來時(shí),進(jìn)程就可能由等待態(tài)切換到就緒態(tài)。2、進(jìn)程創(chuàng)建來源于以下事件:提交一個(gè)批處理作業(yè);在終端上交互式的登錄;操作系統(tǒng)創(chuàng)建一個(gè)服務(wù)進(jìn)程;進(jìn)程孵化新進(jìn)程;等等。請(qǐng)描述進(jìn)程的創(chuàng)建過程。答: 系統(tǒng)在進(jìn)程表中增加一項(xiàng),并從PCB池中取一個(gè)空白PCB; 為新進(jìn)程的進(jìn)程映像分配地址空間。傳遞環(huán)境變量,構(gòu)造共享地址空間; 為新進(jìn)程分配資源,除內(nèi)存空間外,還有其他各種資

16、源; 查找輔存,找到進(jìn)程正文段并裝到正文區(qū); 初始化進(jìn)程控制塊,為新進(jìn)程分配進(jìn)程標(biāo)識(shí)符,初始化PSW; 加入就緒進(jìn)程隊(duì)列,將進(jìn)程投入運(yùn)行; 通知操作系統(tǒng)的某些模塊,如記賬程序、性能監(jiān)控程序。3、請(qǐng)簡(jiǎn)述時(shí)間片輪轉(zhuǎn)調(diào)度算法的工作流程和確定時(shí)間片大小需要考慮的因素。答:1、時(shí)間片輪轉(zhuǎn)調(diào)度算法的工作流程:系統(tǒng)將所有的就緒進(jìn)程按先來先服務(wù)的原則排成一個(gè)隊(duì)列,每次調(diào)度時(shí)把CPU分配給隊(duì)首進(jìn)程,并令其執(zhí)行一個(gè)時(shí)間片。當(dāng)執(zhí)行的時(shí)間片用完時(shí),由系統(tǒng)中的定時(shí)器發(fā)出時(shí)鐘中斷請(qǐng)求,調(diào)度程序停止該進(jìn)程的執(zhí)行,并將它送到就緒隊(duì)列的末尾,等待下一次執(zhí)行。進(jìn)行進(jìn)程切換,把處理器分配給就緒隊(duì)列中新的隊(duì)首進(jìn)程。 2、時(shí)間片大小的

17、確定要從進(jìn)程個(gè)數(shù)、切換開銷、系統(tǒng)效率和響應(yīng)時(shí)間等方面考慮:時(shí)間片取值太小,多數(shù)進(jìn)程不能在一個(gè)時(shí)間片內(nèi)運(yùn)行完畢,切換就會(huì)頻繁,開銷顯著增大,從系統(tǒng)效率來看,時(shí)間片取大一點(diǎn)好。時(shí)間片取值太大,隨著就緒隊(duì)列里進(jìn)程數(shù)目增加,輪轉(zhuǎn)一次的總時(shí)間增大,對(duì)進(jìn)程的響應(yīng)速度放慢了。為滿足響應(yīng)時(shí)間要求,要么限制就緒隊(duì)列中進(jìn)程數(shù)量,要么采用動(dòng)態(tài)時(shí)間片法,根據(jù)負(fù)載狀況及時(shí)調(diào)整時(shí)間片的大小。4、有兩個(gè)優(yōu)先級(jí)相同的并發(fā)運(yùn)行的進(jìn)程P1和P2,各自執(zhí)行的操作如下,信號(hào)量S1和S2初值均為0,x、y和z的初值為0。CobeginP1:begin y:=0; y:=y+4; V(S1); z:=y+3; P(S2); y:=z+y

18、end P2:beginx:=2; x:=x+6; P(S1);x:=x+y; V(S2);z:=z+x; endCoend試問P1、P2并發(fā)執(zhí)行后,x、y、z的值有幾種可能,各為多少?答:1:x=12,y=11,z=19。 2:x=12,y=23,z=19。3:x=12,y=11,z=7。5、為什么說最高響應(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)先的調(diào)度算法,重點(diǎn)考慮的是作業(yè)所需的CPU時(shí)間,因此對(duì)長(zhǎng)作業(yè)不利。最高響應(yīng)比優(yōu)先作業(yè)調(diào)度算法,總是在需要調(diào)度時(shí),考慮作

19、業(yè)已經(jīng)等待的時(shí)間和所需運(yùn)行時(shí)間之比,即:1 +(作業(yè)已等待時(shí)間 / 作業(yè)所需CPU時(shí)間)比值的分母是一個(gè)不變的量。隨著時(shí)間的推移,一個(gè)作業(yè)的“已等待時(shí)間”會(huì)不斷發(fā)生變化,也就是分子在不斷地變化。顯然,短作業(yè)比較容易獲得較高的響應(yīng)比。這是因?yàn)樗姆帜篙^小,只要稍加等待,整個(gè)比值就會(huì)很快上升。另一方面,長(zhǎng)作業(yè)的分母雖然很大,但隨著它等待時(shí)間的增加,比值也會(huì)逐漸上升,從而獲得較高的響應(yīng)比??梢娮罡唔憫?yīng)比優(yōu)先作業(yè)調(diào)度算法,既照顧到了短作業(yè)的利益,也照顧到了長(zhǎng)作業(yè)的利益,是對(duì)先來先服務(wù)以及短作業(yè)優(yōu)先這兩種調(diào)度算法的一種折中。6、請(qǐng)對(duì)比操作系統(tǒng)中“死鎖”和“饑餓”問題。答:死鎖是因進(jìn)程競(jìng)爭(zhēng)資源,但系統(tǒng)擁有

20、資源的數(shù)量有限,或并發(fā)進(jìn)程推進(jìn)的順序不當(dāng)而造成的一種永遠(yuǎn)等待資源的僵局。饑餓是指每個(gè)資源占用者都在有限時(shí)間內(nèi)釋放占用的資源,但申請(qǐng)進(jìn)程仍然長(zhǎng)時(shí)間得不到資源的現(xiàn)象,常常是策略不公平的體現(xiàn)。7、一個(gè)計(jì)算機(jī)有6臺(tái)設(shè)備X,有n個(gè)進(jìn)程競(jìng)爭(zhēng)使用,每個(gè)進(jìn)程最多需要兩臺(tái)。n最多為多少時(shí),系統(tǒng)不存在死鎖的危險(xiǎn)?答:由于每個(gè)進(jìn)程最多需要兩臺(tái)設(shè)備X,考慮極端情況:每個(gè)進(jìn)程已經(jīng)都申請(qǐng)了一臺(tái)。那么只要還有一臺(tái)空閑,就可以保證所有進(jìn)程都可以完成。也就是說當(dāng)有條件:n+1=6(即n=5)時(shí),系統(tǒng)就不存在死鎖的危險(xiǎn)。8、3個(gè)進(jìn)程P1、P2和P3并發(fā)工作。進(jìn)程P1需用資源S3和S1;進(jìn)程P2需用資源S1和S2;進(jìn)程P3需用資源

21、S2和S3。(1)若對(duì)資源分配不加限制,會(huì)發(fā)生死鎖情況,請(qǐng)畫出發(fā)生死鎖時(shí),3個(gè)進(jìn)程和3個(gè)資源之間的進(jìn)程資源分配圖。(2)為保證進(jìn)程正確工作,應(yīng)采用怎樣的資源分配策略。答:(1)不加限制會(huì)出現(xiàn)死鎖情況:(2)可以采用的方法有多種,下面是幾種可行的方法:分配資源時(shí),一次性分配該進(jìn)程運(yùn)行過程中所需的所有資源。破壞了死鎖的必要條件之一“請(qǐng)求和保持條件”。申請(qǐng)資源時(shí),如果不能立即獲得新的資源,則釋放已經(jīng)獲得的資源。破壞死鎖的必要條件之一“不可剝奪條件”。對(duì)所有的資源進(jìn)行編號(hào),每個(gè)進(jìn)程在申請(qǐng)資源時(shí),嚴(yán)格按照資源編號(hào)遞增的次序申請(qǐng)資源。這種方法是破壞了死鎖的必要條件之一“環(huán)路等待條件”。1.4 解答題1、某

22、系統(tǒng)有三個(gè)作業(yè):作業(yè)到達(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í)間是多少?請(qǐng)寫出計(jì)算過程,并填寫下面表格。答: 三個(gè)作業(yè)是在9.5時(shí)全部到達(dá)的。這時(shí)它們各自的響應(yīng)比如下:作業(yè)1的響應(yīng)比=(9.58.8)/1.5=0.46作業(yè)2的響應(yīng)比=(9.59.0)/0.4=1.25作業(yè)3的響應(yīng)比=(9.59.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的響應(yīng)比=(9.98

23、.8)/1.5=0.73作業(yè)3的響應(yīng)比=(9.99.5)/1.0=0.40因此,第二個(gè)應(yīng)該調(diào)度作業(yè)1運(yùn)行,因?yàn)樗捻憫?yīng)比最高。它運(yùn)行了1.5后完成,這時(shí)的時(shí)間是11.4。第三個(gè)調(diào)度的是作業(yè)3,它運(yùn)行了1.0后完成,這時(shí)的時(shí)間是12.4。整個(gè)實(shí)施過程如下。作業(yè)到達(dá)時(shí)間所需CPU時(shí)間開始時(shí)間完成時(shí)間周轉(zhuǎn)時(shí)間18.81.59.911.42.629.00.49.59.90.939.51.011.412.42.9作業(yè)的調(diào)度順序是213。各自的周轉(zhuǎn)時(shí)間為:作業(yè)1為0.9;作業(yè)2為2.6;作業(yè)3為2.9。2、有一個(gè)具有兩道作業(yè)的批處理系統(tǒng),作業(yè)調(diào)度采用短作業(yè)優(yōu)先的非搶式調(diào)度算法,進(jìn)程調(diào)度采用以優(yōu)先數(shù)為基礎(chǔ)的

24、搶占式調(diào)度算法,在下表所示的作業(yè)序列中,作業(yè)優(yōu)先數(shù)即為進(jìn)程優(yōu)先數(shù),優(yōu)先數(shù)越小優(yōu)先級(jí)越高。作業(yè)到達(dá)時(shí)間所需CPU時(shí)間優(yōu)先數(shù)A10:0040分鐘5B10:2030分鐘3C10:3050分鐘4D10:5020分鐘6列出所有作業(yè)進(jìn)入內(nèi)存時(shí)間及結(jié)束時(shí)間,并計(jì)算平均作業(yè)周轉(zhuǎn)時(shí)間。答: (1)每個(gè)作業(yè)運(yùn)行將經(jīng)過兩個(gè)階段:作業(yè)調(diào)度(SJF算法)和進(jìn)程調(diào)度(優(yōu)先數(shù)搶占式)。另外,批處理最多容納2道作業(yè),更多的作業(yè)將在后備隊(duì)列等待。10:00,作業(yè)A到達(dá)并投入運(yùn)行。10:20,作業(yè)B到達(dá)且優(yōu)先權(quán)高于作業(yè)A,故作業(yè)B投入運(yùn)行而作業(yè)A在就緒隊(duì)列等待。10:30,作業(yè)C到達(dá),因內(nèi)存中已有兩道作業(yè),故作業(yè)C進(jìn)入作業(yè)后備隊(duì)

25、列等待。10:50,作業(yè)B運(yùn)行結(jié)束,作業(yè)D到達(dá),按短作業(yè)優(yōu)先算法,作業(yè)D被裝入內(nèi)存進(jìn)入就緒隊(duì)列。而由于作業(yè)A的優(yōu)先級(jí)高于作業(yè)D,故作業(yè)A投入運(yùn)行。11:10,作業(yè)A運(yùn)行結(jié)束,作業(yè)C被調(diào)入內(nèi)存,且作業(yè)C的優(yōu)先級(jí)高于作業(yè)D,故作業(yè)C投入運(yùn)行。12:00,作業(yè)C運(yùn)行結(jié)束,作業(yè)D投入運(yùn)行。12:20,作業(yè)D運(yùn)行結(jié)束。各作業(yè)周轉(zhuǎn)時(shí)間為:作業(yè)A 70,作業(yè)B 30,作業(yè)C 90,作業(yè)D 90。(2) 平均作業(yè)周轉(zhuǎn)時(shí)間為70分鐘。作業(yè)進(jìn)入內(nèi)存時(shí)間運(yùn)行結(jié)束時(shí)間作業(yè)周轉(zhuǎn)時(shí)間平均作業(yè)周轉(zhuǎn)時(shí)間A10:0011:107070B10:2010:5030C11:1012:0090D10:5012:20903、有一個(gè)垃圾分

26、揀機(jī)器人系統(tǒng),擁有兩個(gè)機(jī)器手臂,可分別自動(dòng)在垃圾箱里面分揀可回收易拉罐和塑料瓶。設(shè)分揀系統(tǒng)有二個(gè)進(jìn)程P1和P2,其中P1驅(qū)動(dòng)左臂揀易拉罐;P2驅(qū)動(dòng)右臂揀塑料瓶。規(guī)定每個(gè)手臂每次只能揀一個(gè)物品;當(dāng)一個(gè)手臂在揀時(shí),不允許另一個(gè)手臂去揀;當(dāng)一個(gè)手臂揀了一個(gè)物品后,必須讓另一個(gè)手臂去揀。試用信號(hào)量和P、V操作實(shí)現(xiàn)兩進(jìn)程P1和P2能并發(fā)正確執(zhí)行的程序。答:實(shí)質(zhì)上是兩個(gè)進(jìn)程的同步問題,設(shè)信號(hào)量S1和S2分別表示可揀易拉罐和塑料瓶,不失一般性,若令先揀易拉罐。var S1,S2:semaphore; S1:=1;S2:=0; cobegin process P1 begin repeat P(S1); 揀易

27、拉罐 V(S2); until false; endprocess P2 begin repeat P(S2); 揀塑料瓶 V(S1); until false; endcoend.4. 桌上有一只空盤子,允許存放一只水果。爸爸可向盤中放蘋果和桔子,兒子專等著取盤中的桔子然后吃掉,女兒專等著取盤中的蘋果然后吃掉。規(guī)定盤子一次只能放一只水果,盤子中水果沒有被取走時(shí),爸爸不可放新水果;盤子中沒有水果時(shí),女兒和兒子來取水果時(shí)將需等待。請(qǐng)用信號(hào)量和P、V原語(yǔ)實(shí)現(xiàn)爸爸、兒子、女兒3個(gè)并發(fā)進(jìn)程的同步。答:設(shè)置3個(gè)信號(hào)量: int S=1;/盤子是否為空,開始為空int Sa=0;/ 盤子是否有蘋果int

28、Sb=0;/ 盤子是否有桔子CobeginFather()While(1)P(S);水果放入盤中;If(放入的是桔子) V(Sb);Else V(Sa);Son()While(1)P(Sb);從盤中取出桔子;V(S);吃桔子;Daughter()While(1)P(Sa);從盤中取出蘋果;V(S);吃蘋果;Coend5、內(nèi)存中有一組緩沖區(qū)被多個(gè)生產(chǎn)者進(jìn)程、多個(gè)消費(fèi)者進(jìn)程共享使用,總共能存放10個(gè)數(shù)據(jù),生產(chǎn)者進(jìn)程把生成的數(shù)據(jù)放入緩沖區(qū),消費(fèi)者進(jìn)程從緩沖區(qū)中取出數(shù)據(jù)使用。緩沖區(qū)滿時(shí)生產(chǎn)者進(jìn)程就停止將數(shù)據(jù)放入緩沖區(qū),緩沖區(qū)空時(shí)消費(fèi)者進(jìn)程停止取數(shù)據(jù)。數(shù)據(jù)的存入和取出不能同時(shí)進(jìn)行,試用信號(hào)量及P、V操作

29、來實(shí)現(xiàn)該方案。答:semaphore mutex, empty, full;mutex=1;/互斥信號(hào)量empty=10;/生產(chǎn)者進(jìn)程的同步信號(hào)量full=0;/消費(fèi)者進(jìn)程的同步信號(hào)量cobeginprocess Pi /生產(chǎn)者進(jìn)程while (1) 生產(chǎn)數(shù)據(jù)x;P(empty)/看看是否還有空間可放P(mutex);/互斥使用放入;V(full);/增1(可能喚醒一個(gè)消費(fèi)者)V(mutex);process Cj /消費(fèi)者進(jìn)程while (1) P(full)/看看是否有數(shù)據(jù)P(mutex); /互斥使用取出;V(emtpy); /增1(可能喚醒一個(gè)生產(chǎn)者)V(mutex);coend6、假

30、定系統(tǒng)有三個(gè)并發(fā)進(jìn)程read, move和print共享緩沖器B1和B2。進(jìn)程read負(fù)責(zé)從輸入設(shè)備上讀信息,每讀出一個(gè)記錄后把它存放到緩沖器B1中。進(jìn)程move從緩沖器B1中取出一記錄,加工后存入緩沖器B2。進(jìn)程print將B2中的記錄取出打印輸出。緩沖器B1和B2每次只能存放一個(gè)記錄。要求三個(gè)進(jìn)程協(xié)調(diào)完成任務(wù),使打印出來的與讀入的記錄的個(gè)數(shù),次序完全一樣。請(qǐng)用信號(hào)量和P、V操作,寫出它們的并發(fā)程序。答:begin SR, SM1, SM2, SP:semaphore;B1,B2:record;SR:=1;SM1:=0;SM2:=1;SP:=0cobeginprocess readX:rec

31、ord;begin R: (接收來自輸入設(shè)備上一個(gè)記錄)X:=接收的一個(gè)記錄;P(SR);B1:=X;V(SM1);goto R;end;Process moveY:record;beginM:P(SM1);Y:=B1;V(SR)加工 YP(SM2);B2:=Y;V(SP);goto M;end;Process printZ:record;beginP:P(SP);Z:=B2;V(SM2)打印Zgoto P;end;coend;end;7、用銀行家算法避免系統(tǒng)死鎖:進(jìn)程已占有資源數(shù)最大需求數(shù)A B C DA B C DP1 3 0 1 1 4 1 1 1 P2 0 1 0 0 0 2 1 2P

32、3 1 1 1 0 4 2 1 0P4 1 1 0 1 1 1 1 1P5 0 0 0 0 2 1 1 0當(dāng)前系統(tǒng)資源總量為A類6個(gè)、B類3個(gè)、C類個(gè)4、D類2個(gè)。(1)系統(tǒng)是否安全?請(qǐng)分析說明理由。(2)若進(jìn)程B請(qǐng)求(0,0,1,0),可否立即分配?請(qǐng)分析說明理由。答:(1) 由已知條件可得Need和Avaiable矩陣如下:進(jìn)程 分配矩陣 尚需矩陣(Need) 可用資源數(shù)向量(Avaiable) P1 3 0 1 1 1 1 0 0 1 0 2 0 P2 0 1 0 0 0 1 1 2 P3 1 1 1 0 3 1 0 0 P4 1 1 0 1 0 0 1 0 P5 0 0 0 0 2 1

33、 1 0利用銀行家算法對(duì)此時(shí)刻的資源分配情況進(jìn)行分析如下表:進(jìn)程WorkNeedAllocationWork+AllocationFinishP41 0 2 00 0 1 01 1 0 12 1 2 1trueP12 1 2 11 1 0 03 0 1 15 1 3 2trueP25 1 3 20 1 1 20 1 0 05 2 3 2trueP35 2 3 23 1 0 01 1 1 06 3 4 2trueP56 3 4 22 1 1 00 0 0 06 3 4 2true從上述分析可知,存在一個(gè)安全序列D,A,B,C,E,(答案不唯一),故當(dāng)前系統(tǒng)是否安全的。(2)若進(jìn)程B請(qǐng)求(0,0,

34、1,0),試分配并修改相應(yīng)的數(shù)據(jù)結(jié)構(gòu),則系統(tǒng)狀態(tài)變?yōu)椋哼M(jìn)程 分配矩陣 尚需矩陣(Need) 可用資源數(shù)向量(Avaiable) P1 3 0 1 1 1 1 0 0 1 0 1 0 P2 0 1 1 0 0 1 0 2 P3 1 1 1 0 3 1 0 0 P4 1 1 0 1 0 0 1 0 P5 0 0 0 0 2 1 1 0利用銀行家算法對(duì)此時(shí)刻的資源分配情況進(jìn)行分析如下表: 進(jìn)程WorkNeedAllocationWork+AllocationFinishP41 0 1 00 0 1 01 1 0 12 1 1 1trueP12 1 1 11 1 0 03 0 1 15 1 2 2tr

35、ueP25 1 2 20 1 0 20 1 1 05 2 3 2trueP35 2 3 23 1 0 01 1 1 06 3 4 2trueP56 3 4 22 1 1 00 0 0 06 3 4 2true從上述分析可知,存在安全序列D,A,B,C,E,(答案不唯一)故系統(tǒng)仍是否安全的,因此可以立即分配。8、假定系統(tǒng)中有五個(gè)進(jìn)程P0、P1、P2、P3、P4和三種類型資源A、B、C,A、B、C資源的總數(shù)量分別為10、5、7。各進(jìn)程的最大需求、T0時(shí)刻資源分配情況如下所示。資源最大需求量已分配資源量進(jìn)程A B CA B CP07 5 30 1 0P13 2 22 0 0P29 0 23 0 2P

36、32 2 22 1 1P44 3 30 0 2(1)T0時(shí)刻是否安全?若安全,請(qǐng)說明理由,并給出一個(gè)可能的安全序列。若不安全,請(qǐng)說明理由。(2)若接下來P4繼續(xù)請(qǐng)求資源(3,2,1),則系統(tǒng)是否允許并響應(yīng)該請(qǐng)求?若允許,請(qǐng)說明理由,并給出一個(gè)可能的安全序列。若不允許,請(qǐng)說明理由。答:(1)T0時(shí)刻是安全的。因?yàn)榇藭r(shí),系統(tǒng)中的剩余資源量為(3,3,2)。此時(shí),可以滿足P1或P3的全部剩余資源請(qǐng)求。假設(shè)先滿足P1的請(qǐng)求,則P1運(yùn)行結(jié)束后,將資源返還操作系統(tǒng),則系統(tǒng)中的剩余資源量為(5,3,2)。此時(shí),可以滿足P3或P4的要求。假設(shè)接下來先滿足P3的要求,則P3運(yùn)行結(jié)束后,將資源返還操作系統(tǒng),則系統(tǒng)

37、中的剩余資源量為(7,4,3)。此時(shí),將可以滿足P0或P2或P4的任意一個(gè)的資源請(qǐng)求。無(wú)論分配給誰(shuí),都不會(huì)發(fā)生死鎖。于是,安全序列為P1、P3、(后面的進(jìn)程順序任意)。當(dāng)然,還能形成其它安全序列P1、P4、P3、(后面的進(jìn)程順序任意);P3、P1、(后面的進(jìn)程順序任意);P3、P4、P1、(后面的進(jìn)程順序任意)。 (2)系統(tǒng)可以允許該請(qǐng)求。因?yàn)楫?dāng)將P4所需資源分配給P4后,系統(tǒng)剩余資源為(0,1,1)。此時(shí),剩余資源僅能滿足P3的所有資源請(qǐng)求。假設(shè)將資源分配給P3,則當(dāng)P3運(yùn)行結(jié)束后,將資源返還操作系統(tǒng),則系統(tǒng)中的剩余資源量為(2,2,2),可以滿足P1或P4的剩余資源請(qǐng)求。于是,假設(shè)把資源分

38、配給P1,則當(dāng)P1運(yùn)行結(jié)束并歸還資源后,系統(tǒng)剩余資源量為(4,2,2);然后,再滿足P4,把資源分配給P4,則當(dāng)P4運(yùn)行結(jié)束并歸還資源后,系統(tǒng)剩余資源量為(7,4,5);此時(shí),將可以滿足P0或P2或P4的任意一個(gè)的資源請(qǐng)求。無(wú)論分配給誰(shuí),都不會(huì)發(fā)生死鎖。于是,安全序列為P3、P1、P4、P0、P2和P3、P1、P4、P2、P0。當(dāng)然,還能形成其它安全序列P3、P4、P1、P0、P2和P3、P4、P1、P2、P0。第3章 存儲(chǔ)管理習(xí)題1.1 選擇題1、需要將整個(gè)進(jìn)程放在連續(xù)內(nèi)存空間的存儲(chǔ)管理方式是( A )。A分區(qū)存儲(chǔ)管理B頁(yè)式存儲(chǔ)管理C段式存儲(chǔ)管理D段頁(yè)式存儲(chǔ)管理2、解決內(nèi)存碎片問題較好的存儲(chǔ)

39、器管理方式是( B )。A可變分區(qū) B分頁(yè)管理 C分段管理 D單一連續(xù)分配3、采用( B )不會(huì)產(chǎn)生內(nèi)部碎片(即“內(nèi)零頭”)。A分頁(yè)式存儲(chǔ)管理 B分段式存儲(chǔ)管理 C固定分區(qū)式存儲(chǔ)管理 D段頁(yè)式存儲(chǔ)管理4、操作系統(tǒng)采用分頁(yè)式存儲(chǔ)管理方式,要求( B )。A每個(gè)進(jìn)程擁有一張頁(yè)表,且進(jìn)程的頁(yè)表駐留在內(nèi)存中。B每個(gè)進(jìn)程擁有一張頁(yè)表,但只要執(zhí)行進(jìn)程的頁(yè)表駐留在內(nèi)存中,其他進(jìn)程的頁(yè)表不必駐留在內(nèi)存中。C所有進(jìn)程共享一張頁(yè)表,以節(jié)約有限的內(nèi)存空間,但頁(yè)表必須駐留在內(nèi)存中。D所有進(jìn)程共享一張頁(yè)表,只有頁(yè)表中當(dāng)前使用的頁(yè)面必須駐留在內(nèi)存中,以最大限度地節(jié)約有限的內(nèi)存空間。5、在分頁(yè)式存儲(chǔ)管理系統(tǒng)中,每個(gè)頁(yè)表的表

40、項(xiàng)實(shí)際上是用于實(shí)現(xiàn)( C )。A訪問輔存單元 B靜態(tài)重定位 C動(dòng)態(tài)重定位 D裝載程序6、設(shè)有8頁(yè)的邏輯空間,每頁(yè)有1024B,它們被映射到32塊的物理存儲(chǔ)區(qū)中。那么,邏輯地址的有效位是( C ),物理地址至少是( C )位。A10、11 B12、14 C13、15 D14、167、一個(gè)分頁(yè)存儲(chǔ)管理系統(tǒng)中,地址長(zhǎng)度為32位,其中頁(yè)號(hào)占8位,則頁(yè)表長(zhǎng)度是( A )。A2的8次方字節(jié) B2的16次方字節(jié)C2的24次方字節(jié) D2的32次方字節(jié)8、某頁(yè)式管理系統(tǒng)中,地址寄存器的低9位表示頁(yè)內(nèi)地址,則頁(yè)面大小為(B)。A1024字節(jié) B512字節(jié) C1024K字節(jié) D512K字節(jié)9、分段式存儲(chǔ)管理系統(tǒng)中,

41、若地址用24位表示,其中8位表示段號(hào),則允許每段的最大長(zhǎng)度是( B )。A2的24次方字節(jié) B2的16次方字節(jié) C2的8次方字節(jié) D2的32次方字節(jié)10、虛擬存儲(chǔ)管理機(jī)制的理論基礎(chǔ)是程序的( A )原理。 A局部性 B全局性 C動(dòng)態(tài)性 D虛擬性 11、虛擬存儲(chǔ)系統(tǒng)能夠提供容量很大的虛擬空間,但大小有一定范圍,受到( C )限制。A內(nèi)存容量不足 B交換信息的大小CCPU地址表示范圍 DCPU時(shí)鐘頻率 12、虛擬存儲(chǔ)器最基本的特征是( A )。A從邏輯上擴(kuò)充內(nèi)存容量 B提高內(nèi)存利用率 C駐留性 D固定性13、一般來說,分配的內(nèi)存頁(yè)框數(shù)越多,缺頁(yè)中斷率越低,但是以下( D )頁(yè)面置換算法存在異?,F(xiàn)象

42、:對(duì)于某些進(jìn)程分配的內(nèi)存越多缺頁(yè)中斷率反而越高。ALRU BOPTCLFU DFIFO1.2 填空題1、影響缺頁(yè)中斷率的因素有( 頁(yè)框大小 )、( 分配的頁(yè)框數(shù) )、頁(yè)面置換算法和程序本身特性。2、為了縮短地址轉(zhuǎn)換時(shí)間,操作系統(tǒng)將訪問頻繁的少量頁(yè)表項(xiàng)存放到稱為( 相聯(lián)存儲(chǔ)器 )的高速寄存器組中,構(gòu)成一張( 快表 )。3、在頁(yè)式存儲(chǔ)管理系統(tǒng)中,頁(yè)面大小為4KB,某進(jìn)程的0、1、2、3頁(yè)分別存放在3、5、4、2號(hào)頁(yè)框中,則其邏輯地址1A3F(H)所在頁(yè)框號(hào)為( 5 ),轉(zhuǎn)換所得物理地址為( 5A3F )(H)。4、分頁(yè)式存儲(chǔ)管理系統(tǒng)中,地址寄存器長(zhǎng)度為24位,其中頁(yè)號(hào)占14位,則內(nèi)存的分塊大小應(yīng)該

43、是( 210 )字節(jié)。5、在沒有快表的情況下,在分頁(yè)存儲(chǔ)管理系統(tǒng)中,每訪問一次數(shù)據(jù),至少要訪問( 2 )次內(nèi)存。6、分段式存儲(chǔ)管理系統(tǒng)為每個(gè)進(jìn)程建立一張段映射表,即段表。每一段在表中占有一個(gè)表項(xiàng),其中記錄該段在內(nèi)存中的( 起始地址 )和段的長(zhǎng)度。7、程序局部性原理可總結(jié)為以下三點(diǎn):( 時(shí)間局部性 )、( 空間局部性 )和順序局部性。8、在作業(yè)裝入內(nèi)存時(shí)進(jìn)行地址變換的方式稱為( 靜態(tài) )地址重定位,而在作業(yè)執(zhí)行期間,當(dāng)訪問到指令或數(shù)據(jù)時(shí)才進(jìn)行地址變換的方式稱為( 動(dòng)態(tài) )地址重定位。9、在虛擬段式存儲(chǔ)管理中, 若邏輯地址的段內(nèi)地址大于段表中該段的段長(zhǎng), 則發(fā)生( 地址越界 )中斷。1.3 簡(jiǎn)答題

44、1、給定段表如下:段 號(hào)段 首 址段 長(zhǎng)0200400123003002800100313005804給定地址為段號(hào)和位移:1)1,10 、2)2,150 、 3)4,40,試求出對(duì)應(yīng)的內(nèi)存物理地址。答:1)1,10 對(duì)應(yīng)的內(nèi)存物理地址是23102)2,150對(duì)應(yīng)的內(nèi)存物理地址是越界3)4,40 缺段中斷2、在一個(gè)分頁(yè)虛擬存儲(chǔ)管理系統(tǒng)中,用戶編程空間32個(gè)頁(yè),頁(yè)長(zhǎng)1KB,內(nèi)存為16KB。如果用戶程序有10頁(yè)長(zhǎng),若己知虛頁(yè)0、1、2、3,已分到頁(yè)框8、7、4、10 ,請(qǐng)將虛地址0AC5H和1AC5H轉(zhuǎn)換成對(duì)應(yīng)的物理地址。答:虛地址0AC5H = 0000 1010 1100 0101 映射到物理

45、頁(yè)框第4頁(yè)。 對(duì)應(yīng)的物理地址為 0001 0010 1100 0101=12C5H 虛地址1AC5H=0001 1010 1100 0101 頁(yè)表中尚未有分配的頁(yè)框,此時(shí)引發(fā)缺頁(yè)中斷,由系統(tǒng)另行分配頁(yè)框。3、請(qǐng)描述存儲(chǔ)保護(hù)和地址越界中斷機(jī)制。答:存儲(chǔ)保護(hù):為多個(gè)程序共享內(nèi)存提供保障,使在內(nèi)存中的各道程序,只能訪問它自己的區(qū)域,避免各道程序間相互干擾,特別是當(dāng)一道程序發(fā)生錯(cuò)誤時(shí),不致于影響其他程序的運(yùn)行,通常由硬件完成保護(hù)功能,由軟件輔助實(shí)現(xiàn)。地址越界中斷:每個(gè)進(jìn)程都有自己獨(dú)立的進(jìn)程空間,如果一個(gè)進(jìn)程在運(yùn)行時(shí)所產(chǎn)生的地址在其地址空間之外,則發(fā)生地址越界。即當(dāng)程序要訪問某個(gè)內(nèi)存單元時(shí),由硬件檢查是

46、否允許,如果允許則執(zhí)行,否則產(chǎn)生地址越界中斷,由操作系統(tǒng)進(jìn)行相應(yīng)處理3、什么是覆蓋?什么是交換?覆蓋和交換的區(qū)別是什么?答:覆蓋:將程序劃分成若干個(gè)功能上相對(duì)獨(dú)立的程序段,按照程序的邏輯結(jié)構(gòu)讓那些不會(huì)同時(shí)執(zhí)行的程序段共享同一個(gè)內(nèi)存區(qū)的內(nèi)存擴(kuò)充技術(shù)。交換:先將內(nèi)存某部分的程序或數(shù)據(jù)寫入外存交換區(qū),再?gòu)耐獯娼粨Q區(qū)中調(diào)入指定的程序或數(shù)據(jù)到內(nèi)存中來,并讓其執(zhí)行的一種內(nèi)存擴(kuò)充技術(shù)。與覆蓋技術(shù)相比,交換不要求程序員給出程序段之間的覆蓋結(jié)構(gòu),而且,交換主要在進(jìn)程或作業(yè)之間進(jìn)行,而覆蓋則主要在同一個(gè)作業(yè)或同一個(gè)進(jìn)程內(nèi)進(jìn)行。4、在分頁(yè)式存儲(chǔ)管理系統(tǒng)中,為什么常既有頁(yè)表,又有快表?答:在分頁(yè)式存儲(chǔ)管理中,當(dāng)CPU

47、執(zhí)行到某條指令、要對(duì)內(nèi)存中的某一地址訪問時(shí),首先要根據(jù)相對(duì)地址去查頁(yè)表(訪問一次內(nèi)存),然后獲取絕對(duì)地址去真正執(zhí)行指令(第二次訪問內(nèi)存)。為了提高相對(duì)地址到絕對(duì)地址的變換速度,用存儲(chǔ)于高速相聯(lián)存儲(chǔ)器的塊表來代替部分頁(yè)表。這時(shí)地址轉(zhuǎn)換是以并行的方式進(jìn)行,這樣做無(wú)疑比僅查內(nèi)存中的頁(yè)表要快得多。但是,相聯(lián)存儲(chǔ)器的成本較高,由它來存儲(chǔ)整個(gè)頁(yè)表是不可取的。考慮到程序局部性原理,實(shí)際系統(tǒng)中總是一方面采用內(nèi)存頁(yè)表、另一方面用快表來共同完成地址的變換工作。5、請(qǐng)簡(jiǎn)述引入快表后的分頁(yè)式存儲(chǔ)管理系統(tǒng)的地址變換過程。答:地址變換機(jī)構(gòu)自動(dòng)將頁(yè)號(hào)與快表中的所有頁(yè)號(hào)進(jìn)行并行比較,若其中有與此匹配的頁(yè)號(hào),則取出該頁(yè)對(duì)應(yīng)的頁(yè)

48、框號(hào),與頁(yè)內(nèi)地址拼接形成物理地址。若頁(yè)號(hào)不在快表中,則再到內(nèi)存頁(yè)表中取出物理塊號(hào),與頁(yè)內(nèi)地址拼接形成物理地址。同時(shí)還應(yīng)將這次查到的頁(yè)表項(xiàng)存入快表中,若快表已滿,則必須按某種原則淘汰一個(gè)表項(xiàng)以騰出位置。6、分別簡(jiǎn)述虛擬內(nèi)存和虛擬設(shè)備技術(shù)。答:虛擬內(nèi)存:把有限的內(nèi)存容量變得無(wú)限大,用戶在運(yùn)行遠(yuǎn)大于實(shí)際內(nèi)存容量的程序時(shí),不會(huì)發(fā)生內(nèi)存不夠的錯(cuò)誤。也就是說,用戶所運(yùn)行的程序大小與實(shí)際內(nèi)存容量無(wú)關(guān)。虛擬設(shè)備:通過虛擬技術(shù)把一臺(tái)物理I/O設(shè)備虛擬為多臺(tái)邏輯上的I/O設(shè)備供多個(gè)用戶使用,每個(gè)用戶可以占用一臺(tái)邏輯上的I/O設(shè)備,實(shí)現(xiàn)I/O設(shè)備的共享。7、動(dòng)態(tài)分區(qū)管理中查找空閑區(qū)的算法有哪些?答:首次適應(yīng)算法(f

49、irst fit)。首次適應(yīng)算法又稱最先適應(yīng)算法,該算法要求空閑區(qū)按地址大小遞增的次序排列。在進(jìn)行內(nèi)存分配時(shí),從未分配區(qū)表(或空閑區(qū)鏈)開始位置順序查找,直到找到第一個(gè)能滿足其大小要求的空閑區(qū)為止。循環(huán)首次適應(yīng)算法(next fit)。循環(huán)首次適應(yīng)算法又稱下次適應(yīng)算法,它是首次適應(yīng)算法的變形。該算法是從上次找到的空閑區(qū)的下一個(gè)空閑區(qū)開始查找,直到找到第一個(gè)能滿足其大小要求的空閑區(qū)為止。最佳適應(yīng)算法(best fit)。最佳適應(yīng)算法要求空閑區(qū)按容量大小遞增的次序排列。在進(jìn)行內(nèi)存分配時(shí),從未分配區(qū)表(或空閑區(qū)鏈)開始位置順序查找,直到找到第一個(gè)能滿足其大小要求的空閑區(qū)為止。最壞適應(yīng)算法(worst

50、 fit)。最壞適應(yīng)算法要求空閑區(qū)按容量大小遞減的次序排列。在進(jìn)行內(nèi)存分配時(shí),先檢查未分配區(qū)表(或空閑區(qū)鏈)中的第一個(gè)空閑區(qū),若第一個(gè)空閑區(qū)小于作業(yè)所要求的大小,則分配失??;否則從該空閑區(qū)中劃出與作業(yè)大小相等的一塊內(nèi)存空間分配給請(qǐng)求者,余下的空閑區(qū)仍然留在未分配區(qū)表(或空閑區(qū)鏈)中。1.4 解答題1、分頁(yè)存儲(chǔ)管理系統(tǒng)中,假設(shè)某進(jìn)程的頁(yè)表內(nèi)容如下表所示。頁(yè)面號(hào)頁(yè)框號(hào)中斷位0101H1102254H1頁(yè)面大小為4KB,一次內(nèi)存的訪問時(shí)間是100ns,一次快表的訪問時(shí)間是10ns,處理一次缺頁(yè)的平均時(shí)間為108ns(已含更新快表和頁(yè)表的時(shí)間),分配給該進(jìn)程的物理塊數(shù)固定為2,采用最近最少使用置換算法

51、(LRU)和局部淘汰策略。假設(shè)快表初始為空;地址轉(zhuǎn)換時(shí)先訪問快表,若快表未命中,再訪問頁(yè)表(忽略訪問頁(yè)表之后的快表更新時(shí)間);中斷位為0表示頁(yè)面不在內(nèi)存,產(chǎn)生缺頁(yè)中斷,缺頁(yè)中斷處理后可以直接讀取內(nèi)存中的數(shù)據(jù),而不需再次查詢快表或頁(yè)表。設(shè)有虛地址訪問序列2362H、1565H、25A5H。(1) 依次訪問上述三個(gè)虛地址,各需多少時(shí)間?(2) 基于上述訪問序列,虛地址1565H的物理地址是多少?答:(1)分別是210 ns,108 ns,110 ns。(2)形成的物理地址是101565H。2、請(qǐng)求分頁(yè)系統(tǒng)中,設(shè)某進(jìn)程共有9個(gè)頁(yè),分配給該進(jìn)程的內(nèi)存塊數(shù)為5,進(jìn)程運(yùn)行時(shí),實(shí)際訪問頁(yè)面的次序是0,1,2

52、,3,4,5,0,2,1,8,5,2,7,6,0,1,2。(1)采用FIFO頁(yè)面置換算法,列出其頁(yè)面置換次序和缺頁(yè)中斷次數(shù),以及最后留駐內(nèi)存的頁(yè)號(hào)順序。(2)采用LRU頁(yè)面置換算法,列出其頁(yè)面置換次序和缺頁(yè)中斷次數(shù),以及最后留駐內(nèi)存的頁(yè)號(hào)順序。答:(1)采用FIFO頁(yè)面置換算法訪問序列01234502185276012內(nèi)存塊100000555555577777內(nèi)存塊21111100000006666內(nèi)存塊3222222111111000內(nèi)存塊433333388888811內(nèi)存塊54444444222222淘汰的頁(yè)012345018因此,頁(yè)面淘汰順序?yàn)?、1、2、3、4、5、0、1、8,缺頁(yè)中斷

53、次數(shù)為14次。最后留駐內(nèi)存的頁(yè)號(hào)順序?yàn)?、6、0、1、2。(2)采用LRU頁(yè)面置換算法訪問序列01234502185276012內(nèi)存塊100000555555555511內(nèi)存塊21111100000077777內(nèi)存塊3222222222222222內(nèi)存塊433333111116666內(nèi)存塊54444488888000淘汰的頁(yè)01340185因此,頁(yè)面淘汰順序?yàn)?、1、3、4、0、1、8、5,缺頁(yè)中斷次數(shù)為13次。最后留駐內(nèi)存的頁(yè)號(hào)順序?yàn)?、7、2、6、0。3、設(shè)某計(jì)算機(jī)的邏輯地址空間和物理地址空間均為64KB,按字節(jié)編址。某進(jìn)程最多需要6頁(yè)數(shù)據(jù)存儲(chǔ)空間,頁(yè)的大小為1KB,操作系統(tǒng)為此進(jìn)程固定分

54、配了4個(gè)頁(yè)框(頁(yè)框號(hào)分別為7、4、2、9),頁(yè)面的當(dāng)前分配情況如下所示: 頁(yè)面號(hào)頁(yè)框號(hào)裝入時(shí)間訪問位071301142301222001391601當(dāng)該進(jìn)程執(zhí)行到時(shí)刻260時(shí),要訪問邏輯地址為17CAH的數(shù)據(jù)。 (1)該邏輯地址對(duì)應(yīng)的邏輯頁(yè)號(hào)是多少? (2) 若采用先進(jìn)先出(FIFO)頁(yè)面置換算法,求發(fā)生頁(yè)面置換后,該邏輯地址對(duì)應(yīng)的物理地址?要求給出計(jì)算過程。 (3)若采用時(shí)鐘(Clock)頁(yè)面置換算法,該邏輯地址對(duì)應(yīng)的物理地址是多少?要求給出計(jì)算過程。(設(shè)搜索下一頁(yè)的指針按順時(shí)針方向移動(dòng),且當(dāng)前指向當(dāng)前2號(hào)頁(yè)框,示意圖如下所示) 3號(hào)頁(yè)面9號(hào)頁(yè)框2號(hào)頁(yè)面 2號(hào)頁(yè)框0號(hào)頁(yè)面7號(hào)頁(yè)框1號(hào)頁(yè)面4號(hào)

55、頁(yè)框答:(1)17CAH 轉(zhuǎn)換為二進(jìn)制為:0001 0111 1100 1010, 頁(yè)的大小為1KB,所以頁(yè)內(nèi)偏移為10位,于是前6位是頁(yè)號(hào),所以其頁(yè)號(hào)為0001 01,轉(zhuǎn)換為10進(jìn)制為5,所以,17CAH對(duì)應(yīng)的邏輯頁(yè)號(hào)為5。(2)若采用先進(jìn)先出置換算法,則被置換出的頁(yè)號(hào)對(duì)應(yīng)的頁(yè)框號(hào)是7,因此對(duì)應(yīng)的二進(jìn)制物理地址為: 0001 1111 1100 1010,轉(zhuǎn)換為16進(jìn)制位的物理地址為1FCAH。(3)若采用時(shí)鐘算法,且當(dāng)前指針指向2號(hào)頁(yè)框,則第一次循環(huán)時(shí),訪問位都被置為0,在第二次循環(huán)時(shí),將選擇置換2號(hào)頁(yè)框?qū)?yīng)的頁(yè),因此對(duì)應(yīng)的二進(jìn)制物理地址為:0000 1011 1100 1010,轉(zhuǎn)換為1

56、6進(jìn)制物理地址為0BCAH。第4章 I/O設(shè)備管理1.1 選擇題1、I/O設(shè)備的控制方式中比DMA方式效率高的是( C )。A詢問方式 B中斷方式 C通道方式 D以上都不是2、在下面的I/O控制方式中,需要CPU干預(yù)最少的方式是( D )。A詢問方式 B中斷方式CDMA方式 D通道方式3、關(guān)于設(shè)備管理的下列敘述中,不正確的是( A )。A通道是處理輸入、輸出的軟件B所有外圍設(shè)備的啟動(dòng)工作都由系統(tǒng)統(tǒng)一來做C來自通道的I/O中斷事件由設(shè)備管理模塊負(fù)責(zé)處理D編制好的通道程序可存放在主存儲(chǔ)器中4、Spooling技術(shù)是一種實(shí)現(xiàn)虛擬( B )的技術(shù)。A. 處理器 B. 設(shè)備C. 存儲(chǔ)器 D. 鏈路5、引

57、入緩沖機(jī)制的主要目的是( A )。 A. 改善CPU和I/O設(shè)備之間速度不匹配的問題B. 節(jié)省內(nèi)存使用C. 提高CPU的運(yùn)行頻率D. 提高I/O設(shè)備的利用率6、在操作系統(tǒng)中,用戶在使用I/O設(shè)備時(shí),通常采用( C )。A物理設(shè)備名 B虛擬設(shè)備名C邏輯設(shè)備名 D設(shè)備牌號(hào)7、若外存的空閑塊管理采用32位的位示圖法,塊號(hào)、位號(hào)和字號(hào)均從0開始編號(hào),則塊號(hào)為145對(duì)應(yīng)位示圖中的位置是( A )。A字號(hào)4,位號(hào)17 B字號(hào)4,位號(hào)18C字號(hào)5,位號(hào)17 D字號(hào)5,位號(hào)188、硬盤上的文件以( A )單位進(jìn)行讀寫。A物理塊 B記錄 C柱面 D簇9、單核單處理器系統(tǒng)中,可并行工作的是( D )。I 進(jìn)程與進(jìn)

58、程 II 處理器與設(shè)備 III 處理器與通道 IV 設(shè)備與設(shè)備AI、II和III B. I、II和IV C. I、III和IV D. II、III和IV10、I/O設(shè)備發(fā)出的I/O中斷屬于( A )。A外中斷 B內(nèi)中斷 C陷入 D異常11、下列算法不屬于硬盤驅(qū)動(dòng)臂調(diào)度算法的是( D )。A先來先服務(wù)算法 B最短查找時(shí)間優(yōu)先算法C掃描算法 D時(shí)間片輪轉(zhuǎn)調(diào)度算法12、硬盤驅(qū)動(dòng)臂調(diào)度算法中的( B )可能會(huì)隨時(shí)改變移動(dòng)臂的運(yùn)動(dòng)方向。A電梯調(diào)度算法 B先來先服務(wù)算法 C掃描算法 D優(yōu)先級(jí)調(diào)度算法1.2 填空題1、通道是專門負(fù)責(zé)輸入/輸出操作的( 處理器 )。2、設(shè)備從數(shù)據(jù)傳輸交換的單位可以分為( 塊設(shè)

59、備 )和字符設(shè)備。3、按操作特性分類可把外部設(shè)備分為( 存儲(chǔ)設(shè)備 )和輸入/輸出(I/O)設(shè)備。4、Spooling系統(tǒng)中,任務(wù)執(zhí)行時(shí),從外存上的( 輸入井 )中讀取信息,并把任務(wù)的執(zhí)行結(jié)果暫時(shí)存放在外存上的( 輸出井 )中。5、緩沖區(qū)的設(shè)置可分為單緩沖、( 雙緩沖 )、( 循環(huán)緩沖 )和緩沖池。6、邏輯設(shè)備表(LUT)的主要功能是實(shí)現(xiàn)( 設(shè)備獨(dú)立性 )。7、I/O進(jìn)行設(shè)備分配時(shí)所需的表格主要有( 系統(tǒng)設(shè)備表 )、設(shè)備控制表、控制器控制表和通道控制表。1.3 簡(jiǎn)答題1、操作系統(tǒng)的設(shè)備管理模塊包含哪些主要機(jī)制以提升性能?答:實(shí)現(xiàn)設(shè)備的并行性:一方面是設(shè)備要與CPU并行;另一方面,設(shè)備之間也要并行

60、。提高設(shè)備的利用率:在進(jìn)行設(shè)備分配時(shí)系統(tǒng)通常采用動(dòng)態(tài)分配方式;對(duì)于獨(dú)占設(shè)備采用虛擬技術(shù)將其改造為共享設(shè)備,從而實(shí)現(xiàn)設(shè)備的動(dòng)態(tài)分配,并避免死鎖的發(fā)生。平滑CPU和外設(shè)速度差異:設(shè)備的速率相對(duì)CPU而言要慢得多;為了平滑兩者之間的差異,提高系統(tǒng)的效率,在設(shè)備管理中采用多種緩沖技術(shù)。實(shí)現(xiàn)設(shè)備的獨(dú)立性:設(shè)備管理通過屏蔽設(shè)備的物理特性,從而實(shí)現(xiàn)設(shè)備的獨(dú)立性,方便用戶的使用。2、輸入數(shù)據(jù)時(shí),如果采用中斷控制方式,系統(tǒng)工作過程包含哪些步驟?答: 進(jìn)程需要數(shù)據(jù)時(shí),將允許啟動(dòng)和中斷的控制字寫人設(shè)備控制狀態(tài)寄存器中,啟動(dòng)該設(shè)備進(jìn)行輸入操作。該程序放棄處理器,等待輸入的完成;操作系統(tǒng)進(jìn)程調(diào)度程序調(diào)度其他就緒進(jìn)程使用

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論