操作系統(tǒng)(宗大華版)課后復習題答案_第1頁
操作系統(tǒng)(宗大華版)課后復習題答案_第2頁
操作系統(tǒng)(宗大華版)課后復習題答案_第3頁
操作系統(tǒng)(宗大華版)課后復習題答案_第4頁
操作系統(tǒng)(宗大華版)課后復習題答案_第5頁
已閱讀5頁,還剩50頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

操作系統(tǒng)(宗大華版)課后復習題答案

第1章操作系統(tǒng)概述

二、選擇

1.操作系統(tǒng)是一種生,

A.通用軟件B.系統(tǒng)軟件C.應月軟件D.軟件包

2.操作系統(tǒng)是對日行管理的軟件。

A系統(tǒng)軟件B.系統(tǒng)硬件C.計算機資源D.應用程序

3.操作系統(tǒng)中采用多道程序設計技術,以提高CPU和外部設備的£_。

A利田里R田靠桂c粽宅祗n苦客相:

4.計算機系統(tǒng)中配置操作系統(tǒng)的目的是提高計算機的且即方便用戶使用。

A.速度B.利用率C.靈活性D.兼容性

5.力作系統(tǒng)允許多個用戶在其終端上同時交互地使用計算機。

A.批處理B.實時C.分時D.多

道批處理

6.如果分時系統(tǒng)的時間片一定,那么D,響應時間越長。

A.用戶數(shù)越少B.存越少C.存越多D.用戶數(shù)越多

三、問答

1.什么是“多道程序設計”技術?它對操作系統(tǒng)的形成起到什么作用?

答:所謂“多道程序設計”技術,即是通過軟件的手段,允許在計算機存中同時存放幾道相互獨

立的作業(yè)程序,讓它們對系統(tǒng)中的資源進行“共享”和“競爭”,以使系統(tǒng)中的各種資源盡可能

地滿負荷工作,從而提高整個計算機系統(tǒng)的使用效率?;谶@種考慮,計算機科學家開始把

CPU、存儲器、外部設備以及各種軟件都視為計算機系統(tǒng)的“資源”,并逐步設計出一種軟件來管

理這些資源,不僅使它們能夠得到合理地使用,而且還要高效地使用。具有這種功能的軟件就是

“操作系統(tǒng)”。所以,“多道程序設計”的出現(xiàn),加快了操作系統(tǒng)的誕生。

2.怎樣理解“虛擬機’的概念?

答:拿操作系統(tǒng)來說,它是在裸機上加載的第一層軟件,是對計算機硬件系統(tǒng)功能的首次擴充。

從用戶的角度看,計算機配置了操作系統(tǒng)后,由于操作系統(tǒng)隱蔽了硬件的復雜細節(jié),用戶會感到

機器使用起來更方便、容易了。這樣,通過操作系統(tǒng)的作用使展現(xiàn)在用戶面前的是一臺功能經(jīng)過

擴展了的機器。這臺“機器”不是硬件搭建成的,現(xiàn)實生活中并不存在具有這種功能的真實機

器,它只是用戶的一種感覺而已。所以,就把這樣的機器稱為“虛擬機”。

3.對于分時系統(tǒng),怎樣理解,從宏觀上看,多個用戶同時工作,共享系統(tǒng)的資源;從微觀上看,

各終端程序是輪流運行一個時間片”?

答:在分時系統(tǒng)中,系統(tǒng)把CPU時間劃分成許多時間片,每個終端用戶可以使用由一個E寸間片規(guī)

定的CPU時間,多個用戶終端就輪流地使用CPU。這樣的效果是每個終端都開始了自己的工作,

得到了及時的響應。也就是說,“從宏觀上看,多個用戶同時工作,共享系統(tǒng)的資源”。但實際

上,CPU在每一時刻只為一個終端服務,即“從微觀上看,各終端程序是輪流運行一個時間

片”。

第2章習題解答

一、填空

1.進程在執(zhí)行過程中有3種基本狀態(tài),它們是運行態(tài)、就緒態(tài)和阻塞態(tài)。

2.系統(tǒng)中一個進程由程序、數(shù)據(jù)集合和進程控制塊(PCB)三部分組成。

3.在多道程序設計系統(tǒng)中,進程是一個動態(tài)概念,程序是一個靜態(tài)概念。

4.在一個單CPU系統(tǒng)中,若有5個用戶進程。假設當前系統(tǒng)為用戶態(tài),則處于就緒狀態(tài)的用戶進

程最多有工二個,最少有Q_仝。

注意,題目里給出的是假設當前系統(tǒng)為用戶態(tài),這表明現(xiàn)在有一個進程處于運行狀態(tài),因此最多

有4個進程處于就緒態(tài)。也可能除一個在運行外,其他4個都處于阻塞。這時,處于就緒的進程

一個也沒有。

5.總的來說,進程調(diào)度有兩種方式,即不可剝奪方式和剝奪方式。

6.進程調(diào)度程序具體負責中央處理機(CPU)的分配。

7.為了使系統(tǒng)的各種資源得到均衡使用,進行作業(yè)調(diào)度時,應該注意CPU忙碌作業(yè)

和I/O忙碌作業(yè)的搭配。

8.所謂系統(tǒng)調(diào)用,就是用戶程序要調(diào)用遢錘統(tǒng)嬖供的一些子功能。

9.作業(yè)被系統(tǒng)接納后到運行完畢,一般還需要經(jīng)歷后備、運行和完成三個階段。

10.假定一個系統(tǒng)中的所有作業(yè)同時到達,那么使作業(yè)平均周轉(zhuǎn)時間為最小的作業(yè)調(diào)度算法是麴

作業(yè)優(yōu)先調(diào)度算法。

11.在引入線程的操作系統(tǒng)中,所謂“線程”,是指進程中實施處理機調(diào)度和分配的基本單

位。

12.有了線程概念后,原來的進程就屬于是單線程的進程情形。

二、選擇

1.在進程管理中,當即,進程從阻塞狀態(tài)變?yōu)榫途w狀態(tài)。

A.進程被調(diào)度程序選中B.進程等待某一事件發(fā)生

C.等待的事件出現(xiàn)D.時間片到

2.在分時系統(tǒng)中,一個進程用完給它的時間片后,其狀態(tài)變?yōu)槿?/p>

A.就緒B.等待C.運行

D.由用戶設定

3.下面對進程的描述中,錯誤的是Do

A,進程是動態(tài)的概念B.進程的執(zhí)行需要CPU

C.進程具有生命周期D.進程是指令的集合

4.操作系統(tǒng)通過進程進行管理。

A.JCBB.PCBC.DCTD.FCB

5.一個進程被喚醒,意味著該進程a

A.重新占有CPUB.優(yōu)先級變?yōu)樽畲?/p>

C.移至等待隊列之首D.變?yōu)榫途w狀態(tài)

6.由各作業(yè)JCB形成的隊列稱為C。

A.就緒作業(yè)隊列B.阻塞作業(yè)隊列

C.后備作業(yè)隊列D.運行作業(yè)隊列

7.既考慮作業(yè)等待時間,又考慮作業(yè)執(zhí)行時間的作業(yè)調(diào)度算法是A

A.響應比高者優(yōu)先B.短作業(yè)優(yōu)先

C.優(yōu)先級調(diào)度D.先來先服務

8.作業(yè)調(diào)度程序從處于D狀態(tài)的隊列中選取適當?shù)淖鳂I(yè)投入運行。

A.就緒B.提交C.等待

D.后備

9.A是指從作業(yè)提交系統(tǒng)到作業(yè)完成的時間間隔。

A.周轉(zhuǎn)時間B.響應時間

0.等待時間D.運行時間

10.計算機系統(tǒng)在執(zhí)行C時,會自動從目態(tài)變換到管態(tài)。

A.P操作B.V操作C.系統(tǒng)調(diào)用D.I/O指令

11.進程狀態(tài)由就緒變?yōu)檫\行,是由于C引起的。

A.中斷事件B.進程狀態(tài)變遷

C.進程調(diào)度D.為作業(yè)創(chuàng)建進程

三、問答

1.在多道程序設計系統(tǒng)中,如何理解“存中的多個程序的執(zhí)行過程交織在一起,大家都在走走停

?!边@樣一個現(xiàn)象?

答:在多道程序設計系統(tǒng)中,存中存放多個程序,它們以交替的方式使用CPUo因此,從宏觀上

看,這些程序都開始了自己的工作。但由于CPU只有一個,在任何時刻CPU只能執(zhí)行一個進程程

6.處于阻塞狀態(tài)的一個進程,它所等待的事件發(fā)生時,就把它的狀態(tài)由阻塞改變?yōu)榫途w,讓它到

就緒隊列里排隊,為什么不直接將它投入運行呢?

答:只要是涉及管理,就應該有管理的規(guī)則,沒有規(guī)則就不成方圓。如果處于阻塞狀態(tài)的一個進

程,在它所等待的事件發(fā)生時就徑直將它投入運行(也就是把CPU從當前運行進程的手中搶奪過

來),那么系統(tǒng)就無法控制定CPU這種資源的管理和使用,進而也就失去了設置操作系統(tǒng)的作

用。所以,阻塞狀態(tài)的進程在它所等待的事件發(fā)生時,必須先進入就緒隊列,然后再去考慮它使

用CPU的問題。

7.作業(yè)調(diào)度與進程調(diào)度有什么區(qū)別?

答:作業(yè)調(diào)度和進程調(diào)度(即CPU調(diào)度)都涉及到CPU的分配。但作業(yè)調(diào)度只是選擇參加CPU競

爭的作業(yè),它并不具體分配CPU。而進程調(diào)度是在作業(yè)調(diào)度完成選擇后的基礎上,把CPU真正分

配給某一個具體的進程使用。

8.系統(tǒng)中的各種進程隊列都是由進程的PCB而成的。當一個進程的狀態(tài)從阻塞變?yōu)榫途w狀態(tài)時,

它的PCB從哪個隊列移到哪個隊列?它所對應的程序也要跟著移來移去嗎?為什么?

答:當一個進程的狀態(tài)從阻塞變?yōu)榫途w時,它的PCB就從原先在的阻塞隊列移到就緒隊列里。

在把進程的PCB從這個隊列移到另一個隊列時,只是移動進程的PCB,進程所對應的程序是不

動的。這是因為在進程的PCB里,總是記錄有它的程序的斷點信息。知道了斷點的信息,就能

夠知道程序當前應該從哪里開始往下執(zhí)行了。這正是保護現(xiàn)場所起的作用。

9.為什么說響應比高者優(yōu)先作業(yè)調(diào)度算法是對先來先服務以及短作業(yè)優(yōu)先這兩種調(diào)度算法的折

中?

答:先來先服務的作業(yè)調(diào)度算法,重點考慮的是作業(yè)在后備作業(yè)隊列里的等待時間,因此對短

作業(yè)不利;短作業(yè)優(yōu)先的作業(yè)調(diào)度算法,重點考慮的是作業(yè)所需的CPU時間(當然,這個時間是

用戶自己估計的),因此對長作業(yè)不利。“響應比高者優(yōu)先”作業(yè)調(diào)度算法,總是在需要調(diào)度

時,考慮作業(yè)已經(jīng)等待的時間和所需運行時間之比,即:

該作業(yè)已等待時間/該作業(yè)所需CPU時間

不難看出,這個比值的分母是一個不變的量。隨著時間的推移,一個作業(yè)的“已等待時間“會不

斷發(fā)生變化,也就是分子在不斷地變化。顯然,短作業(yè)比較容易獲得較高的響應比。這是因為它

的分母較小,只要稍加等待,整個比值就會很快上升。另一方面,長作業(yè)的分母雖然很大,但隨

著它等待時間的增加,比值也會逐漸上升,從而獲得較高的響應比。根據(jù)這種分析,可見“響應

比高者優(yōu)先”的作業(yè)調(diào)度算法,既照顧到了短作業(yè)的利益,也照顧到了長作業(yè)的利益,是對先來

先服務以及短作業(yè)優(yōu)先讀兩種調(diào)度算法的一種折中。

10.短作業(yè)優(yōu)先調(diào)度算法總能得到最小的平均周轉(zhuǎn)時間嗎?為什么?

答:短作業(yè)優(yōu)先調(diào)度算法只有在所有作業(yè)同時到達后備作業(yè)隊列時,才能得到最小的平均周轉(zhuǎn)時

間。如果各作業(yè)不是同時到達,這個結(jié)論是不成立的??梢杂梅蠢f明,例如,教材上舉有如下

例子:考慮有5個作業(yè)A到E,運行時間分別是2、4、1、1、1;到達時間分別是0、0、3、3、

3o按照短作業(yè)優(yōu)先的原則,最初只有A和B可以參與選擇,因為其他3個還沒有到達。于是,運

行順序應該是A、B、C、D、Eo它們每個的周轉(zhuǎn)時間分別是2、6、4、5、6,平均周轉(zhuǎn)時間是

4.6o但如果按照順序B、C、D、E、A來調(diào)度,它們每一個的周轉(zhuǎn)時間成為9、4、2、3、4,平均

周轉(zhuǎn)時間是4.4。結(jié)果比短作業(yè)優(yōu)先調(diào)度算法好。之所以會這樣,就是因為這5個作業(yè)并沒有同

時到達。

四、計算

1.有三個作業(yè):

作業(yè)到達時間所需CPU時間

10.08

20.44

31.01

分別采用先來先服務和短作業(yè)優(yōu)先作業(yè)調(diào)度算法。試問它們的平均周轉(zhuǎn)時間各是什么?你是否還

可以給出一種更好的調(diào)度算法,使其平均周轉(zhuǎn)時間優(yōu)于這兩種調(diào)度算法?

解:(1)采用先來先服務作業(yè)調(diào)度算法時的實施過程如下。

作業(yè)到達時間所需CPU時間開始時商完成時間周轉(zhuǎn)時間

10.080.08.08.0

20.448.012.011.6

31.0112.013.012.0

這時,作業(yè)的調(diào)度順序是1-2—3。其平均周轉(zhuǎn)時間為:

(8+11.6+12)/3=10.53

(2)采用短作業(yè)優(yōu)先作業(yè)調(diào)度算法時的實施過程如下。

作業(yè)到達時間所需CPU時間開始時間完成時間周轉(zhuǎn)時間

10.080.08.08.0

31.018.09.08.0

20.449.013.012.6

這里要注意,在作業(yè)1運行完半進行作業(yè)調(diào)度時,作業(yè)2和3都已經(jīng)到達。由于是實行短作業(yè)優(yōu)

先作業(yè)調(diào)度算法,因此先調(diào)度作業(yè)3運行,最后調(diào)度作業(yè)2運行。所以,這時的作業(yè)調(diào)度順序是

1-3-2。其平均周轉(zhuǎn)時間為:

(8+8+126)/3=9.53

(3)還可以有更好的作業(yè)調(diào)度算法,使其平均周轉(zhuǎn)時間優(yōu)于這兩種調(diào)度算法。例如,如果知道在

作業(yè)1后面會來兩個短作業(yè),那么作業(yè)1到達后,先不投入運行。而是等所有作業(yè)到齊后,再按

照短作業(yè)優(yōu)先作業(yè)調(diào)度算法進行調(diào)度,具體實施過程如下。

作業(yè)到達時間所需CPU時間開始時間完成時間周轉(zhuǎn)時間

31.011.02.01.0

20.442.06.05.6

10.086.014.014.0

這時的作業(yè)調(diào)度順序是3T2-1。其平均周轉(zhuǎn)時間為:

(1+5.6+14)/3=6.87

2.設有一組作業(yè),它們的到達時間和所需CPU時間如下所示。

作業(yè)號到達時間所需CPU時間

19:0070分鐘

29:4030分鐘

39:5010分鐘

410:105分鐘

分別采用先來先服務和短作業(yè)優(yōu)先作業(yè)調(diào)度算法。試問它們的調(diào)度順序、作業(yè)周轉(zhuǎn)時間以及平均

周轉(zhuǎn)時間各是什么?

解:(1)采用先來先服務作業(yè)調(diào)度算法時的實施過程如下。

作業(yè)號到達時間所需CPU時間開始時間完成時間周轉(zhuǎn)時間

19:0070分鐘9:0010:1070分鐘

29:4030分鐘10:1010:4060分鐘

39:5010分鐘10:4010:5060分鐘

410:105分鐘10:5010:5545分鐘

這時,作業(yè)的調(diào)度順序是1—2-3-4。其平均周轉(zhuǎn)時間為:

(70+60+60+45)/4=5875

(2)采用短作業(yè)優(yōu)先作業(yè)調(diào)度算法時的實施過程如下。

作業(yè)號到達時間所需CPU時間開始時間完成時間周轉(zhuǎn)時間

19:0070分鐘9:0010:1070分鐘

410:105分鐘10:1010:155分鐘

39:5010分鐘10:1510:2535分鐘

29:4030分鐘10:2510:5575分鐘

這時,作業(yè)的調(diào)度順序是1-4-3T2。其平均周轉(zhuǎn)時間為:

(70+5+35+75)/4=46.25

3.某系統(tǒng)有三個作業(yè):

作業(yè)號到達時間所需CPU時間

18.81.5

29.00.4

39.51.0

系統(tǒng)確定在它們?nèi)康竭_后,開始采用響應比高者優(yōu)先調(diào)度算法,并忽略系統(tǒng)調(diào)度時間。試問對它們

的調(diào)度順序是什么?各自的周轉(zhuǎn)時間是多少?

解:三個作業(yè)是在9.5時全部到達的。這時它們各自的響應比如下:

作業(yè)1的響應比=(9.5-8.8)/1.5=0.46

作業(yè)2的響應比二(9.5-9.0)/0.4=1.25

作業(yè)3的響應比=(9.5-9.5)/1.0=0

因此,最先應該調(diào)度作業(yè)2運行,因為它的響應比最高。它運行了0.4后完成,這時的時間是

9.9o再計算作業(yè)1和3此時的響應比:

作業(yè)1的響應比=(9.9-8.8)/1.5=0.73

作業(yè)3的響應比=(9.9-9.5)/1.0=0.40

因此,第二個應該調(diào)度作業(yè)1運行,因為它的響應比最高。它運行了1.5后完成,這時的時間是

11.4O第三個調(diào)度的是作業(yè)3,它運行了1.0后完成,這時的時間是12.4。整個實施過程如下。

作業(yè)號到達時間所需CPU時間開始時間完成時間周轉(zhuǎn)時間

29.00.49.59.90.9

18.81.59.911.42.6

39.51.011.412.42.S

作業(yè)的調(diào)度順序是2-1—3。各自的周轉(zhuǎn)時間為:作業(yè)1為0.9;作業(yè)2為2.6;作業(yè)3為2.9。

第3章(大木)習題解答

一、填空

1.將作業(yè)相對地址空間的相對地址轉(zhuǎn)換成存中的絕對地址的過程稱為他地鯉心

2.使用覆蓋與對換技術的主要目的是提高存的利用率。

3.存儲管理中,對存儲空間的浪費是以部碎片和外部碎片兩種形式表現(xiàn)出來的。

4.地址重定位可分為靜態(tài)重定位和動態(tài)重定位兩種。

5.在可變分區(qū)存儲管理中采用最佳適應算法時,最好按尺寸法來組織空閑分區(qū)鏈表。

6.在分頁式存儲管理的頁表里,主要應該包含頁號和塊號兩個信息。

7.靜態(tài)重定位在程序裝入時進行,動態(tài)重定位在程序執(zhí)行時進行。

8.在分頁式存儲管理中,如果頁面置換算法選擇不當,則會使系統(tǒng)出現(xiàn)抖動現(xiàn)象。

9.在請求分頁式存儲管理中采用先進先出(FIFO)頁面淘汰算法時,增加分配給作業(yè)的塊數(shù)時,.

缺頁中斷的次數(shù)有可能會增加。

10.在請求分頁式存儲管理中,頁面淘汰是由于缺頁引起的。

11.在段頁式存儲管理中,每個用戶作業(yè)有一個段表,每段都有一個頁表。

二、選擇

1.虛擬存儲器的最大容量是由上決定的。

A.、外存容量之和B.計算機系統(tǒng)的地址結(jié)構

C.作業(yè)的相對地址空間D.作業(yè)的絕對地址空間

2.采用先進先出頁面淘汰算法的系統(tǒng)中,一進程在存占3塊(開始為空),頁面訪問序列為1、

2、3、4、1、2、5、1、2、3、4、5、6。運行時會產(chǎn)班次缺頁中斷。

A.7B.8C.9D.10

從圖3-1中的“缺頁計數(shù)”欄里可以看出應該選擇D。

圖多1選擇題2配圖

3.系統(tǒng)出現(xiàn)“抖動”現(xiàn)象的主要原因是由于A引起的。

A.置換算法選擇不當B.交換的信息量太大

c.存容量不足D.采用頁式存儲管理策略

4.實現(xiàn)虛擬存儲器的目的是D。

A.進行存儲保護B.允許程序浮動

C.允許程序移動D.擴充主存容量

5.作業(yè)在執(zhí)行中發(fā)生了缺頁中斷,那么經(jīng)中斷處理后,應返回執(zhí)行_B48令。

A.被中斷的前一條B.被中斷的那條

C.被中斷的后一條D.程序第一條

6.在實行分頁式存儲管理系統(tǒng)中,分頁是由D完成的。

A.程序員B.用戶C.操作員

D.系統(tǒng)

7.下面的工須面淘汰算法有時會產(chǎn)生異?,F(xiàn)象。

A.先進先出B.最近最少使用C.最不經(jīng)常使用D.最

8.在一個分頁式存儲管理系統(tǒng)中,頁表的容為:

若頁的大小為4KB,則地址轉(zhuǎn)換機構將相對地址0_______________________轉(zhuǎn)換成

的物理地址是fc

A.8192

27

B.4096

C.2048D.1024

注意,相對地址0肯定是第0頁的第0個字節(jié)。查頁表可知第0頁存放在存的第2塊?,F(xiàn)在塊的

尺寸是4KB,因此第2塊的起始地址為8192。故相對地址0所對應的絕對地址(即物理地址)是

8192o

9.下面所列的存儲管理方案中,A實行的不是動態(tài)重定位。

A.固定分區(qū)B.可變分區(qū)C.分頁式D.請求分

頁式一

10.在下面所列的諸因素中,不對缺頁中斷次數(shù)產(chǎn)生影響的是C。

A.存分塊的尺寸B.程序編制的質(zhì)量

C.作業(yè)等待的時間D.分配給作業(yè)的存塊數(shù)

11.采用吩段式存儲管理的系統(tǒng)中,若地址用24位表示,其中8位表示段號,則允許每段的最大

長度是B。

A.2Z4B.2ieC.2sD.23Z

三、問答

1.什么是部碎片?什么是外部碎片?各種存儲管理中都可能產(chǎn)生何種碎片?

答:所謂“部碎片”,是指系統(tǒng)已經(jīng)分配給用戶使用、用戶自己沒有用到的那部分存儲空I苴;所

謂“外部碎片”,是指系統(tǒng)無法把它分配出去供用戶使用的那部分存儲空間。對于教材而言,單

一連續(xù)區(qū)存儲管理、固定分區(qū)存儲管理、分頁式存儲管理和請求頁式存儲管理都會出現(xiàn)部碎片。

只是前兩種存儲管理造成的部碎片比較大,浪費較為嚴重;后兩種頁式存儲管理,平均來說每個

作業(yè)都會出現(xiàn)半頁的部碎片。教材中,只有可變分區(qū)存儲管理會產(chǎn)生外部碎片。

2.敘述靜態(tài)重定位與動態(tài)重定位的區(qū)別。

答:靜態(tài)重定位是一種通過軟件來完成的地址重定位技術。它在程序裝入存時,完成對程序指令

中地址的調(diào)整。因此,程序經(jīng)過靜態(tài)重定位以后,在存中就不能移動了。如果要移動,就必須重

新進行地址重定位。

動態(tài)重定位是一種通過硬件支持完成的地址重定位技術。作業(yè)程序被原封不動地裝入存。只有到

執(zhí)行某條指令時,硬件地址轉(zhuǎn)換機構才對它里面的地址進行轉(zhuǎn)換。正因為如此,實行動態(tài)重定位的系

統(tǒng),作業(yè)程序可以在存里移動C也就是說,作業(yè)程序在存中是可浮動的。

3.一個虛擬地址結(jié)構用24個二進制位表示。其中12個二進制位表示頁面尺寸。試問這和虛擬地

址空間總共多少頁?每頁的尺寸是多少?

答:如下圖所示,由于虛擬地址中是用12個二進制位表示頁面尺寸(即頁位移),所以虛擬地址

空間中表示頁號的也是12個二進制位。這樣,這種虛擬地址空間總共有:

2i2=4096(頁)

每頁的尺寸是:

2i2=4096=4K(字節(jié))

頁號頁內(nèi)位移

M---------------------------------------虛擬地址

4.什么叫虛擬存儲器?怎樣謫定虛擬存儲器的容量?

答:虛擬存儲器實際是一種存儲擴充技術。它把作業(yè)程序存放在輔助存儲器里,運行時只裝入程

序的一部分。遇到不在存的程序時,再把所需要的部分裝入。這樣在存和輔存之間調(diào)入、調(diào)出的

做法,使用戶的作業(yè)地址空間無需顧及存的大小。給用戶造成的印象是,無論程序有多大,它在

這個系統(tǒng)上都可以運行。這種以輔助存儲器作為后援的虛幻存儲器,就稱為虛擬存儲器。虛擬存

儲器的大小是由系統(tǒng)的地址結(jié)構確定的。

5.為什么請求分頁式存儲管理能夠向用戶提供虛擬存儲器?

答:請求分頁式存儲管理的基本思想是:操作系統(tǒng)按照存儲塊的尺寸,把用戶作業(yè)地址空間劃分

成頁,全部存放在磁盤上。作業(yè)運行時,只先裝入若干頁。運行過程中遇到不在存的頁時,操作

系統(tǒng)就把它從磁盤調(diào)入存。這樣一來,用戶的作業(yè)地址空間無需顧及存的大小。這與虛擬存儲器

的思想是完全吻合的。所以,請求分頁式存儲管理能夠向用戶提供虛擬存儲器。

6.在請求分頁式存儲管理中,為什么既有頁表,又有快表?

答:在分頁式或請求頁式存儲管理中,通常是利用存儲器構成頁表的。當CPU執(zhí)行到某條指令、

要對存中的某一地址訪問時,因為這個地址是相對地址,所以先要根據(jù)這個地址所在的頁號去查

頁表(訪問一次存),然后才能由所形成的絕對地址去真正執(zhí)行指令(第二次訪問存)??梢姡?/p>

由于頁表在存,降低了CPU的訪問速度。

為了提高相對地址到絕對地址的變換速度,人們想到用一組快速寄存器來代替頁表。這時查頁表

是以并行的方式進行,立即就能輸出與該頁號匹配的塊號,這樣做無疑比存式的頁表要快得多。

但是,快速寄存器的價格昂貴,由它來組成整個頁表是不可取的??紤]到程序運行時具有局部

性,因此實際系統(tǒng)中總是一方面采用存頁表、另一方面用極少幾個快速寄存器組成快表來共同完

成地址的變換工作。這時的地址變換過程,如教材中的圖3?22所示。

7.試述缺頁中斷與頁面淘汰之間的關系。

答:在請求頁式存儲管理中,當根據(jù)虛擬地址查頁表而發(fā)現(xiàn)所要訪問的頁不在存時,就會產(chǎn)生缺

頁中斷。系統(tǒng)響應中斷后,就由操作系統(tǒng)到輔存把所需要的頁讀入存。這時,存可能有空閑的

塊,也可能沒有。只有當存中沒有空閑塊時,才會出現(xiàn)將存現(xiàn)有頁面淘汰出去的問題,即要進行

頁面淘汰。所以,缺頁中斷和頁面淘汰之間的關系是:頁面淘汰一定是由缺頁中斷所引起;但缺

頁中斷則不一定引起頁面淘汰。

8.試述缺頁中斷與一般中斷的區(qū)別。

答:在計算機系統(tǒng)中,由于某些事件的出現(xiàn),打斷了當前程序的運行,而使CPU去處理出現(xiàn)的事

件,這稱為“中斷”。通常,計算機的硬件結(jié)構都是在執(zhí)行完一條指令后,去檢查有無中斷事件

發(fā)生的。如果有,那么就暫停當前程序的運行,而讓CPU去執(zhí)行操作系統(tǒng)的中斷處理程序,這叫

“中斷響應”。CPU化處理完中斷后,如果不需要對CPU重新進行分配,那么就返回被中斷進程

的程序繼續(xù)運行;如果需要進行CPU的重新分配,那么操作系統(tǒng)就會去調(diào)度新進程。

由上面的講述可以看出,缺頁中斷與一般中斷的區(qū)別如下。

(1)兩種中斷產(chǎn)生的時刻不同:缺頁中斷是在執(zhí)行一條指令中間時產(chǎn)生的中斷,并立即轉(zhuǎn)去處

理;而一般中斷則是在一條指令執(zhí)行完畢后,當硬件中斷裝置發(fā)現(xiàn)有中斷請求時才去響應和處

理。

(2)處理完畢后的歸屬不同:缺頁中斷處理完后,仍返回到原指令去重新執(zhí)行,因為那條指令并

未執(zhí)行;而一般中斷則是或返回到被中斷進程的下一條指令去執(zhí)行,因為上一條指令已經(jīng)執(zhí)行完

了,或重新調(diào)度,去執(zhí)行別的進程程序。

9.怎樣理解把相對地址劃分成數(shù)對:(頁號,頁位移)的過程對于用戶是“透明”的?

答:在操作系統(tǒng)中,所謂“透明”,即指用戶不知道的意思。對于分頁式存儲管理來說,用戶向

系統(tǒng)提供的相對地址空間,是一個一維的連續(xù)空間。系統(tǒng)接受了這個作業(yè)后,在部把這個相對地

址空間劃分成若干頁。由于這種劃分對于用戶來說是根本不知道的,所以說把相對地址劃分成數(shù)

對:(頁號,頁位移)的過程對于用戶是“透明”的。

10.做一個綜述,說明從單一連續(xù)區(qū)存儲管理到固定分區(qū)存儲管理,到可變分區(qū)存儲管理,到分

頁式存儲管理,再到請求分頁式存儲管理,每一種存儲管理的出現(xiàn),都是在原有基礎上的發(fā)展和

提高。

答:教材共介紹了種存儲管理策略,它們適單一連續(xù)分區(qū)存儲管理用于不

5固定分區(qū)存儲管理

同的場合,如圖3-2所示。醫(yī)中,在單一連續(xù)分區(qū)存

多道

儲管理與固定分區(qū)存儲管理之間畫了一條線,3^7那表明

位于線以上的存儲管理策略只適用于單道程序可變分區(qū)存儲管理設計,

分頁式存儲管理

以下的適用于多道程序設計;在可變分區(qū)存儲管理與

不連續(xù)

全部

分頁式存儲管理之間畫了一條線,那表明位于線以上

請求頁式存儲管理

的存儲管理策略都要求為進入存的作業(yè)分配一個連續(xù)

部分

的存儲區(qū),以下的存儲管理策略打破了連續(xù)性的要

圖3-2各種存儲管理策略的適用場合

求;在分頁式存儲管理與請求頁式存儲管理之間畫了

一條線,那表明位于線以上的存儲管理策略都要求使作業(yè)程序全部進入存,而以下的存儲管理策

略打破了全部的要求,只要部分裝入存就可以了。

由此可見,每一種存儲管理的出現(xiàn),都是在原有存儲管理基礎上的一次發(fā)展和提高。它們從簡單

到復雜,從不完善到逐漸完善。

11.試述分頁式系統(tǒng)與分段式系統(tǒng)的主要區(qū)別。

答:從形式上看,分頁式系統(tǒng)與分段式系統(tǒng)有許多相似之處,比如兩者都不要求作業(yè)在存中連續(xù)

存放。但在概念上,兩者卻完全不同。主要表現(xiàn)在以下幾個方面。

(1)把用戶作業(yè)進行分頁,是系統(tǒng)的一種行為,對用戶是透明的。所以,頁是信息的物理單位。

分段是為了滿足用戶的需要,每段在邏輯上都有完整的意義,因此是信息的邏輯單位。

(2)頁的大小固定,且由系統(tǒng)決定。將邏輯地址劃分成數(shù)對(頁號,頁位移),是由機器硬件實

現(xiàn)的。段的長度不固定,取決于用戶所編寫的程序結(jié)構,通常由編譯程序在對源程序進行編譯時

根據(jù)信息的性質(zhì)來劃分。

(3)分頁時,作業(yè)的地址空間是一維的;分段時,作業(yè)的地址空間是二維的。

四、計算

1.在可變分區(qū)存儲管理中,發(fā)地址法組織當前的空閑分區(qū),其大小分別為:10KB,4KB,20KB,

18KB,7KB,9KB,12KB和15KB?,F(xiàn)在依次有3個存儲請求為:12KB,10KB,9KB?試問使用最先

適應算法時的分配情形如何?那么最佳適應、最壞適應呢?

解:我們用表來說明實行各種分配算法時的情形。

(1)最先適應算法

清求隊列最先活應算法

初始1OK4K20K18K7K9K12K15K

12K1OK4K8K18K7K9K12K15K

10K04K8K18K7K9K12K15K

9K04K8K9K7K9K12K15K

(2)最佳適應算法

請求隊列員佳適應算法—

初始10K4K20K18K7K9K12K15K

12K10K4K20K18K7K9K015K

1OK04K20K18K7K9K015K

9K04K20K18K7K0015K

(3)最壞適應算法

請求隊列例壞括應Ml法

初始10K4K20K18K7K9K12K15K

12K10K4K8K18K7K9K12K15K

10K10K4K8K8K7K9K12K15K

9K10K4K8K8K7K9K12K6K

可見,分配算法不同,選擇的分配對象也不一樣。

2.系統(tǒng)存被劃分成8塊,每塊4KB。某作業(yè)的虛擬地址空間共劃分成16個頁面。當前在存的頁

與存塊的對應關系如下表所示,未列出的頁表示不在存。

頁號塊號頁號塊號

0244

1153

2695

30117

試指出對應于下列虛擬地址的絕對地址:

(a)20(b)4100(c)8300

解:(a)虛擬地址20對應的頁號是0,頁位移是20。用0去查頁表,知道第0頁現(xiàn)在存放在存

的第2塊。由于每塊的長度是4KB,所以第2塊的起始地址為8192。因此,虛擬地址20所對應的

絕對地址是:

8192+20=8212

(b)虛擬地址4100對應的頁號是:

4100/4096=1「7”是整除運算符)

對應的頁位移是:

4100%4096=4("%’是求余運算符)

用1去查頁表,知道第1頁現(xiàn)在存放在存的第1塊。第1塊的起始地址為4096。因此,虛擬地址

4100所對應的絕對地址是:

4096+4=4100

(c)虛擬地址8300對應的頁號是:

8300/4096=2「7”是整除運算符)

對應的頁位移是:

8300%4096=108(“%”是求余運算符)

用2去查頁表,知道第2頁現(xiàn)在存放在存的第6塊。第6塊的起始地址為

6X4K=24576

因此,虛擬地址8300所對應的絕對地址是

24576+108=24684

3.某請求分頁式存儲管理系統(tǒng),接收一個共7頁的作業(yè)。作業(yè)運行時的頁面走向如下:

1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6

若采用最近最久未用(LRU)頁面淘汰算法,作業(yè)在得到2塊和4塊存空間時,各會產(chǎn)生出多少次

缺頁中斷?如果采用先進先出(FIFO)頁面淘汰算法時,結(jié)果又如何?

解:(1)采用最近最久未用(LRU)頁面淘汰算法,作業(yè)在得到2塊存空間時所產(chǎn)生的缺頁中斷

次數(shù)為18次,如圖3?3(a)所示;在得到4塊存空間時所產(chǎn)生的缺頁中斷次數(shù)為10次,如圖3-

3(b)所示。

缺頁計熟

(b)4塊時的LUR

圖3-3LRU時的情形

(2)采用先進先出(FIFO)頁面淘汰算法,作業(yè)在得到2次存空間時所產(chǎn)生的缺頁中斷次數(shù)為

18次,如圖3-4(a)所示;在得到4塊存空間時所產(chǎn)生的缺頁中斷次數(shù)為14次,如圖3~4(b)

所示。

。回

次面走向.r~n~p~nr[2

1

6

2個內(nèi)存塊

4介內(nèi)存塊-1

12223456621337662

2

11123455621137766

缺頁計數(shù)―*JJJJJJ4JJ

(b)4塊時的FIFO

圖3-4FIFO時的情形

關于先進先出(FIFO)頁面淘汰算法,在給予作業(yè)更多的存塊時,缺頁中斷次數(shù)有可能上升,這

是所謂的異?,F(xiàn)象。但要注意,并不是在任何情況下都會出現(xiàn)異常。是否出現(xiàn)異常,取決于頁面

的走向。本題所給的頁面走向,在FIFO頁面淘汰算法下,并沒有引起異常:2塊時缺頁中斷次數(shù)

為18次,4塊時缺頁中斷次數(shù)為14次。

4.在一個分段式存儲管理中,有段表如下:

段號段長基址

0210500

1235020

210090

31350590

4193895

試求邏輯地址[0,430].[1,10].[2,500]、[3,400]、[4,112]、[5,32]所對應的物理地

址。

解:(1)邏輯地址[0,430]的物理地址是210+430=640;

(2)邏輯地址[1,10]的物理地址是2350+10=2360;

(3)由于第2段的基址是100,段長是90,所以邏輯地址[2,500]為非法;

(4)邏輯地址[3,400]的物理地址是1350+400=1750;

(5)由于第4段的基址是1938,段長是95,所以邏輯地址[4,112]為非法;

(6)由于該作業(yè)不存在第5段,所以邏輯地址[5,32]為非法。

第4章習題解答

溫馨提示

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

評論

0/150

提交評論