《操作系統(tǒng)教程》課后題參考答案_第1頁
《操作系統(tǒng)教程》課后題參考答案_第2頁
《操作系統(tǒng)教程》課后題參考答案_第3頁
《操作系統(tǒng)教程》課后題參考答案_第4頁
《操作系統(tǒng)教程》課后題參考答案_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

課后習題參考答案

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

一、填空題

1.軟硬件資源、系統(tǒng)軟件、用戶

2.處理機、存儲器、輸入/輸出設備和文件資源;處理機管理、存儲器管理、設備管理和文件系統(tǒng)

3.分時(或多用戶、多任務)單用戶(或單用戶、單任務)

4.分時OS時間片輪轉(zhuǎn)批處理OS吞吐率實時OS實時性和可靠性

5.命令接口系統(tǒng)調(diào)用

6.系統(tǒng)調(diào)用

二、選擇題

12345678910

BCCABABDCB

三、簡答題

1.操作系統(tǒng)是管理系統(tǒng)資源、控制程序執(zhí)行,改善人機界面,提供各種服務,合理組織計算機工作流程

和為用戶使用計算機提供良好運行環(huán)境的一種系統(tǒng)軟件.

操作系統(tǒng)是用戶與計算機硬件之間的接口。操作系統(tǒng)為用戶提供了虛擬計算機。操作系統(tǒng)是計算機

系統(tǒng)的資源管理者,處理器管理,存儲器管理,設備管理,文件管理,用戶接口。

2.硬件的改進導致操作系統(tǒng)發(fā)展的例子很多,內(nèi)存管理支撐硬件由分頁或分段設施代替了界寄存器以

后,操作系統(tǒng)中便增加了分頁或分段存儲管理功能。圖形終端代替逐行顯示終端后,操作系統(tǒng)中增加了

窗口管理功能,允許用戶通過多個窗口在同一時間提出多個操作請求。引進了中斷和通道等設施后,操

作系統(tǒng)中引入了多道程序設計功能。計算機體系結(jié)構(gòu)的不斷發(fā)展有力地推動著操作系統(tǒng)的發(fā)展,例如,

計算機由單處理機改進為多處理機系統(tǒng),操作系統(tǒng)也由單處理機操作系統(tǒng)發(fā)展到多處理機操作系統(tǒng)和并

行操作系統(tǒng);隨著計算機網(wǎng)絡的出現(xiàn)和發(fā)展,出現(xiàn)了分布式操作系統(tǒng)和網(wǎng)絡操作系統(tǒng)。隨著信息家電的

發(fā)展,又出現(xiàn)了嵌入式操作系統(tǒng)。

3.在一段時間內(nèi),內(nèi)存中能夠接納多道程序的系統(tǒng)稱為多道程序系統(tǒng)。

單道程序環(huán)境下處理器的利用率很低,當程序進行輸入/輸出操作時,處理器空閑,同時外部設備的

利用率也很低,引入多道程序系統(tǒng)以后,整個計算機的利用率得到了提高。

4.允許多個聯(lián)機用戶同時使用一臺計算機系統(tǒng)進行計算的操作系統(tǒng)稱為分時操作系統(tǒng),分時操作系統(tǒng)具

有以下特性,同時性,獨立性,及時性和交互性.

實時操作系統(tǒng)是指當外界事件或數(shù)據(jù)產(chǎn)生時,能夠接收并以足夠快的速度予以處理,其處理的結(jié)果

又能在規(guī)定的時間之內(nèi)來控制生產(chǎn)過程或?qū)μ幚硐到y(tǒng)做出快速響應,并控制所有實時任務協(xié)調(diào)一致運行

的操作系統(tǒng)。實時操作系統(tǒng)的主要特點:對處理時間和響應時間要求高,可靠性和安全性高,多路性、

獨立性和交互性,整體性強。

5.分時操作系統(tǒng)和批處理操作系統(tǒng)雖然有共性,它們都基于多道程序設計技術(shù),但存在下列不同點:

?追求的目標不同。批處理系統(tǒng)以提高系統(tǒng)資源利用率和作業(yè)吞吐率為目標;分時系統(tǒng)則要滿足

多個聯(lián)機用戶立即型命令的快速響應。

?適應的作業(yè)不同。批處理系統(tǒng)適應已經(jīng)調(diào)試好的大型作業(yè):而分時系統(tǒng)適應正在調(diào)試的小作

業(yè)。

?資源的利用率不同。批處理操作系統(tǒng)可合理安排不同負載的作業(yè),使各種資源利用率較佳;分

時操作系統(tǒng)中,多個終端作業(yè)使用相同類型編譯系統(tǒng)、運行系統(tǒng)和公共子程序時,系統(tǒng)調(diào)用它

們的開銷較小。

作業(yè)控制的方式不同。批處理操作系統(tǒng)由用戶通過作業(yè)控制語言的語句書寫作業(yè)控制流,預先提

交,脫機工作:分時操作系統(tǒng)中,由用戶從鍵盤輸入操作命令控制,交互方式、聯(lián)機工作C

6.UNIX操作系統(tǒng)是對世界影響深遠的分時操作系統(tǒng)。

四、計算題

1.(1)CPU有空閑,在100ms?150ms時間段是空閑的。

(2)程序1無等待時間,而程序2在一開始的0ms?50ms時間段會等待。。

2.三道程序運行,完成三道程序共花l70ms。與單道程序(260ms)比較,節(jié)省了90ms。

(始終按照1-2-3的次序,即程序1-程序2-程序3-程序1一程序2f(在程序3運行前會停10ms等

待輸入完成)程序3。

3.總的運行時間為45ms,CPU處理時間為40ms,CPU的利用率為89%

第二章常用操作系統(tǒng)概述

一、簡答題

1.內(nèi)核的主要功能是在客戶程序和運行在用戶空間的各種服務(屬系統(tǒng)程序)之間進行通信。在這種結(jié)

構(gòu)下,應用程序發(fā)出的請求首先被內(nèi)核俘獲,由它把消息傳遞給相應的系統(tǒng)進程去處理,處理完后,同

樣通過內(nèi)核,把回應的消息發(fā)還給客戶,可見,客戶程序和各種服務進程之間不會直接交互,必須通過

內(nèi)核的消息交換才能完成相互通信。這就是“微內(nèi)核”構(gòu)造模式。用這種方法來構(gòu)造操作系統(tǒng),其中心

思想是將系統(tǒng)中的非基本部分從內(nèi)核里移走,只把最關(guān)鍵的進程管理、內(nèi)存管理以及進程通信等功能,

留存下來組成系統(tǒng)的內(nèi)核。這樣便于系統(tǒng)功能的擴充,使系統(tǒng)具有更好的可擴展性和可移植性,由于絕

大部分系統(tǒng)進程都運行在用戶態(tài),所以使系統(tǒng)具有更好的安全性和可靠性。

2.答:Windows體系結(jié)構(gòu)分成內(nèi)核模式和用戶模式。內(nèi)核的主要功能是在客戶程序和運行在用戶空間的

各種服務(屬系統(tǒng)程序)之間進行通信。Windows系統(tǒng)的內(nèi)核全部運行在統(tǒng)一的核心地址空間中,由三個

層次組成:執(zhí)行體、內(nèi)核、硬件抽象層(HAL)

Linux體系結(jié)構(gòu)被分成兩部分。上面是用戶(或應用程序)空間,是用戶應用程序執(zhí)行的地方。下面

是內(nèi)核空間,Linux內(nèi)核提供了連接內(nèi)核的系統(tǒng)調(diào)用接口,還提供了用戶空恒中的應用程序和內(nèi)核之間進

行轉(zhuǎn)換的機制。內(nèi)核和用戶空間的應用程序使用的是不同的保護地址空間。每個用戶空間的進程都使用

自己的虛擬地址空間,而內(nèi)核則占用單獨的地址空間。Linux內(nèi)核可以進一步劃分成3層。最上面是系統(tǒng)

調(diào)用接口,它實現(xiàn)了一些基本的功能,中間層是內(nèi)核代碼,最下面是依賴于體系結(jié)構(gòu)的代碼,構(gòu)成了通

常稱為BSP(BoardSupportPackage)的部分,這些代碼將內(nèi)核和硬件分隔開來,使Linux操作系統(tǒng)能夠適

應多種硬件平臺

3.自由軟件(FreeSoftware或Freeware)是指遵循通用公共許可證GPL(GeneralpublicLicense)規(guī)則,

保證您有使用上的自由、獲得源程序的自由、自己修改源程序的自由、復制和推廣的自由,也可以有收

費的自由的一種軟件。Free指是的自由,但并不是免費。自由軟件之父RichardStallman先生將自由軟件

劃分為若干等級:其中,。級是指對軟件的自由使用;1級是指對軟件的自由修改;2級指對軟件的自由獲

利.

第三章處理機管理

一、填空題

運行、就緒、阻塞

2程序、數(shù)據(jù)、PCB

3動態(tài)、靜態(tài)

44、0

5剝奪式調(diào)度、非剝奪式調(diào)度

6處理機

7處理機頻繁、輸入輸出頻繁

8操作系統(tǒng)

9提交、后備、運行

10.短作業(yè)優(yōu)先

二、選擇題:

123456789

CACBDCADA

三、簡答題

I.在多道程序設計系統(tǒng)中,內(nèi)存中存放多個程序,它們以交替的方式使用CPU。因此,從宏觀上看,這

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

進程程序的執(zhí)行過程是交織在一起的。也就是說,從微觀上看,每一個進程一會兒在向前走,一會兒又

停步不前,處于一種“走走停停”的狀杰之中。

2.為了對進程進行有效的管理和控制,操作系統(tǒng)要提供若干基本的操作,以便能創(chuàng)建進程、撤銷進程、

阻塞進程和喚醒進程。這些操作對于操作系統(tǒng)來說是最為基本、最為重要的。為了保證執(zhí)行時的絕對正

確,要求它們以一個整體出現(xiàn),不可分割。也就是說,一旦啟動了它們的程序,就要保證做完,中間不

能插入其他程序的執(zhí)行序列。在操作系統(tǒng)中,把具有這種特性的程序稱為“原語”。

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

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

就無法控制對CPU這種資源的管理和使用,進而也就失去了設置操作系統(tǒng)的作用。所以,阻塞狀態(tài)的進

程在它所等待的事件發(fā)生時,必須先進入就緒隊列,然后再去考慮它使用CPU的問題。

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

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

為在進程的PCB里,總是記錄有它的程序的斷點信息。知道了斷點的信息,就能夠知道程序當前應該

從哪里開始往下執(zhí)行了。這正是保護現(xiàn)場所起的作用。

5.先來先服務算法主要考慮作業(yè)在后備作業(yè)隊列里的等待時間,因此對短作業(yè)不利;短作業(yè)優(yōu)先算

法主要考慮作業(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)度算法的一種折中。

四、計算題

1.(1)采用先來先服務時:

作業(yè)號到達時間所需CPU時間執(zhí)行順序開始時間完成時間周轉(zhuǎn)時間

10.041044

20.422465.6

31.013676

平均周轉(zhuǎn)時間=(4+5.6+6)/3=15.6/3=5.2

平均加權(quán)周轉(zhuǎn)時間=(4/4+5.6/2+6/1)/3=3.267

(2)采用短作業(yè)優(yōu)先時:

作業(yè)號到達時間所需CPU時間執(zhí)行順序開始時間完成時間周轉(zhuǎn)時間

10.041044

20.423576.6

31.012454

平均周轉(zhuǎn)時間=(4+6.6+4)/3=14.6/3=4.867

平均加權(quán)周轉(zhuǎn)時間=(4/4+6.6/2+4/1)/3=8.3/3=2.767

(3)如果等到所有作業(yè)都到了,再采用短作業(yè)優(yōu)先算法:

作業(yè)號到達時間所需CPU時間執(zhí)行順序開始時間完成時間周轉(zhuǎn)時間

10.043488

20.422243.6

31.011121

平均周轉(zhuǎn)時間=(8+3.6+1)/3=12.6/3=4.2

平均加權(quán)周轉(zhuǎn)時間=(8/4+3.6/2+1/1)/3=6.8/3=2.267

2.(1)采用先來先服務時:

作業(yè)號到達時間所需CPU時間調(diào)度順序開始時間完成時間周轉(zhuǎn)時間

19.01.11910.I1.1

29.50.5210.110.61.1

39.60.1310.610.71.1

410.10.2410.710.90.8

平均周轉(zhuǎn)時間=(1.1+1.1+1.1+0.8)/4=4.1/4=1.25

平均加權(quán)周轉(zhuǎn)時間=(1.1/1.1+1.1/O.5+1.1/O.1+O.8/O.2)/4=(1+2.2+11+4;/4=4.55

(2)采用短作業(yè)優(yōu)先時:

作業(yè)號到達時間所需CPU時間調(diào)度順序開始時間完成時間周轉(zhuǎn)時間

19.01.11910.11.1

29.50.5410.410.91.4

39.60.1210.110.20.6

410.10.2310.210.40.3

平均周轉(zhuǎn)時間=(1.1+1.4+0.6+03)/4=3.4/4=0.85

平均加權(quán)周轉(zhuǎn)時間=(1.1/1.1+1.4/0.5+0.6/0.1+O.3/O.2)/4=(1+0.7+6+1.5)/4=2.3

3.三個作業(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.9。再計算作業(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后完成,這時的時間是

114.第三個調(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.9

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

第四章進程間的制約關(guān)系

一、填空題

1.直接制約,間接制約

2.相應資源,P、V操作

3.繼續(xù)執(zhí)行,阻塞(等待)

4.S>0,等待,就緒

5.互斥,P(mutex),V(mutex)

6.共享存儲器、消息傳遞、管道通信

7.使用臨界資源的程序代碼

8.-(M-1)?1

9.4

10.資源互斥、資源不剝奪、資源部分分配、循環(huán)等待

二、選擇題

12345678910

BBACCBCDBAB

三、問答題

1.一次僅允許一個進程使用的資源稱為臨界資源。把進程中訪問臨界資源的程序段稱為臨界區(qū)。

2.進程的同步與互斥是指進程在推進時的相互制約關(guān)系。在多道程序系統(tǒng)中,由于資源共享與進程合

作,這種進程間的制約成為可能。為了保證進程的正確運行以及相互合作的進程之間交換信息,需要進

程之間的通信。

進程之間的制約關(guān)系體現(xiàn)為:進程的同步和互斥。

進程同步:它主要源于進程合作,是進程間共同完成一項任務時直接發(fā)生相互作用的關(guān)系。為進程

之間的直接制約關(guān)系。在多道環(huán)境下,這種進程間在執(zhí)行次序上的協(xié)調(diào)是必不可少的。

進程互斥:它主要源于資源共享,是進程之間的間接制約關(guān)系。在多道系統(tǒng)中,每次只允許一個進

程訪問的資源稱為臨界資源,進程互斥就是保證每次只有一個進程使用臨界資源。

進程通信是指進程間的信息交換。PV操作作為進程的同步與互斥工具因信息交換量少,效率太低,

稱為低級通信。而高級通信則以較高的效率傳送大批數(shù)據(jù)。

3.所謂死瑣,是指多個進程因競爭資源而造成的一種僵局,若無外力作用,這些進程都將永遠不能再向

前推進。死鎖預防的措施有:(1)破壞“資源部分分配”條件,優(yōu)點是簡單、易于實現(xiàn)且很安全;(2)破

壞“不剝奪”條件,在采用這種方法預防死鎖時,進程是在需要資源時才提出請求。這樣,一個已經(jīng)保持了

某些資源的進程,當它再提出新的資源耍求而不能立即得到滿足時,必須釋放它已經(jīng)保持的所有資源,

待以后需要時再重新申請。這種預防死鎖方法,實現(xiàn)起來比較復雜,且要付出很大代價。(3)破壞“循環(huán)

等待”條件,在這種方法中規(guī)定,系統(tǒng)將所有的資源按類型進行線形排隊,并賦予不同的序號。這種預防

死鎖的策略與前兩種策略比較,其資源利用率和系統(tǒng)吞吐量,都有較明顯的改善。

4.解決死鎖的方法主要有:死鎖的預防、死鎖的避免、死鎖的檢測和解除。(1)死鎖的預防:主要是破

壞產(chǎn)生死鎖的必要條件。該方法容易實現(xiàn),但因為設置了種種限制,保守的算法使得操作系統(tǒng)的功能減

弱,資源的利用率較低。(2)死鎖的避免:常用的是銀行家算法。該算法進行必要的計算,考查每個進

程對各類資源的需求量,要花費較多的時間去預測死鎖是否會發(fā)生。因此,實現(xiàn)起來不太容易,但資源

的利用率最高。(3)死鎖的檢測和解除:是基于死鎖定理而設計的一種寬松的策略。并不去嚴格地限制

死鎖的發(fā)生,通過定期或不定期對操作系統(tǒng)的狀態(tài)進行檢測,發(fā)現(xiàn)死鎖便予以解除。解除死鎖是采取撤

消某些進程或剝奪某些進程已占有的資源。撤消或剝奪時需要比較一下各種死鎖解除方案的代價,找到

代價最小的方案。

5.不會。會。

6.當進程A在自己的臨界區(qū)里執(zhí)行時,能夠被別的進程打斷,沒有任何的限制。當進程A在自己的臨界

區(qū)里執(zhí)行時,也能夠被進程B打斷,不過這種打斷是有限制的。即當進程B執(zhí)行到要求進入自己的臨界區(qū)

時,就會被阻塞。這是因為在它打斷進程A時,A正在臨界區(qū)里還沒有出來,既然A在臨界區(qū),B當然就

無法進入自己的臨界區(qū)。

7.根據(jù)信號量的定義可知,P、V操作并非只是對信號量進行減1或加1操作,更重要的是在減1或加1

后,還要判斷運算的結(jié)果。對于P操作,判定后調(diào)用進程自己有可能繼續(xù)運行,也可能阻塞等待。對于V

操作,判定后調(diào)用進程自己最后總是繼續(xù)運行,但之前可能會喚醒在信號量隊列上等待的進程。在信號

量上除了能執(zhí)行P、V操作外,不能執(zhí)行其他任何操作。

8.由于每個進程最多需要兩臺磁帶機,考慮極端情況:每個進程已經(jīng)都申請了一臺。那么只要還有一臺

空閑,就可以保證所有進程都可以完成。也就是說當有條件:n+l=5,即n=4時,系統(tǒng)就不存在死鎖的危

險,

9.能,同步與互斥是進程通信的基本內(nèi)容,P、V操作與信號量結(jié)合可以實現(xiàn)同步與互斥。

10.進程通信根據(jù)交換信息量的多少分為高級通信和低級通信。低級通信一般只傳送一個或幾個字節(jié)的

信息,以達到控制進程執(zhí)行速度的作用(如PV操作);高級通信則要傳送大量數(shù)據(jù),目的不是為了控制

進程的執(zhí)行速度,而是為了交換信息。

高級進程通信方式有很多種,大致可歸并為三類:共享存儲器、管道通信和消息傳遞。

共享存儲器:在內(nèi)存種分配一片空間作為共享存儲區(qū)。需要進行通信的進程把它附加到自己的地址空間

中,不需要時則把它取消。

管道通信:它是連接兩個命令的一個打開文件。一個命令向該文件中寫入數(shù)據(jù),為寫者;另一個命

令從該文件中讀出數(shù)據(jù),為讀者。

消息傳遞:它以消息為單位在進程間進行數(shù)據(jù)交換。

四、計算題

I.因為哲學家進餐沒有必然的先后次序,相鄰的兩個哲學家要競爭刀或叉,刀或叉成為臨界資源,本題

屬于互斥問題。本題設置四個互斥信號量Fl、F2、KKK2,初值均為1,分別表示臨界資源叉1、叉2、

刀1、刀2。哲學家的工作流程基本相似,只是拿起刀叉的序號不同,如圖所示。

2.根據(jù)常識可知,司機和售票員的工作存在如下制約關(guān)系:

(1)司機必須在得到售票員的“關(guān)門完畢”的信號后,才能啟動汽車。這是一個司機要與售票

員取得同步的問題。

(2)售票員必須在得到司機的“已經(jīng)停車”的信號后,才能打開車門。這是一個售票員要與司

機取得同步的問題。

因此,為了確保行車安全,需要設置兩個同步信號量:

S1一—初值為0,控制司機與售票員取得同步;

S2一一初值為0,控制售票員與司機取得同步。

3.分析題意,知道在管理讀者“進入”和“注銷”閱覽室的工作中,存在這樣一些制約關(guān)系:

(1)100個座位是讀者共同使用的資源,因此要用一個資源分配信號量來管理它:

(2)讀者“進入”閱覽室時,要申請座位。只有申請到座位才能進入,否則應該等待到座位的

釋放:

(3)沒有讀者時,不能做“注銷”工作,必須等到有了讀者才能做。

因此,可以設置兩個信號量:

S1------初值為100,管理座位的分配:

S2——初值為0,控制“注銷”與“進入”間取得同步。

“進入”與“注銷”兩個進程的流程如圖所示。

1316-23“進入”與“注銷”兩個進程

在讀者進入時,調(diào)用“進入”進程,通過P(S1)來申請座位。如果申請到,就可以辦理閱覽手

續(xù),如果100個座位都申請完畢,那么第101個讀者就只有在關(guān)于S1的隊列上等待,等到有人調(diào)用

“注銷”進程執(zhí)行V(S1)。在有讀者離去時,就調(diào)用“注銷”進程。

4.經(jīng)分析GET與COPY之間存在2個同步關(guān)系:GET與COPY同步,GET等待COPY發(fā)來,拷貝結(jié)束”

的消息后,才能讀入下一條記錄;COPY與GET同步,COPY等待GET發(fā)來“可以拷貝”的消息后,才能

開始復制記錄。

PUT和COPY兩者之間存在2個同步關(guān)系:PUT與COPY同步,PUT等待COPY發(fā)來“拷貝結(jié)

束”的消息后,才能開始輸出;COPY與PUT同步,COPY等待PUT發(fā)來“輸出結(jié)束”的消息后,

才能復制下一條記錄。

于是,GET、COPY和PUT三者間有4個同步關(guān)系。因此,需要設置4個同步信號量:

S1——控制COPY與GET取得同步,初值二0:

S2——控制GET與COPY取得同步,初值=0;

S3——控制PUT與COPY取得同步,初值二0;

S4——控制COPY與PUT取得同步,初值二0。

5.這實際上也是最簡單“生產(chǎn)者一消費者”問題的變種:進程R是產(chǎn)生者,進程Wl、W2是兩個消費

者,只是WI只消費奇數(shù),W2只消費偎數(shù)。下圖所示的是3個進程的工作示意。

分析題目知道3個進程間有如下的制約關(guān)系存在:

(1)進程R申請使用緩沖區(qū)B,進程W1或W2釋放緩沖區(qū)B:

(2)進程W1要等待R往緩沖區(qū)B里放入奇數(shù)后,才能工作(要與R取得同步),然后釋放緩

沖區(qū);

(3)進程W2要等待R往緩沖區(qū)B里放入偶數(shù)后,才能工作(要與R取得同步),然后釋放緩

沖區(qū)。

因此,應該設置3個信號量:

S一一初值為1,控制緩沖區(qū)B的分配:

SO——初值為0,控制W1與R取得同步:

SE——初值為0,控制W2與R取得同步。

3個進程的工作流程如下圖所示。

6.從圖可以知道,公共數(shù)據(jù)區(qū)的單元Ai(i=l,2,3…)里存放的某月某日第i次航班的現(xiàn)有票數(shù),是j

(j=h2,3...)個售票處共享的數(shù)據(jù)。因此,這些售票處對公共數(shù)據(jù)區(qū)的單元Ai(i=L2,3…)的操作

不能同時進行。正因為如此,圖中把對Ai的這些操作,用名為S的信號量上的P、V操作,保證它們互斥

進行。這樣處理都是正確的。

關(guān)鍵是當判定沒有第i次航班的機票時,圖里僅安排了打印“票已售完!”的動作。這樣,第j

售票處只有進入臨界區(qū)的P(S),而沒有決行退出臨界區(qū)的V(S)o它沒有退出臨界區(qū),別的售票窗口

也就無法再進入這個臨界區(qū)。所以,這種安排是不對的。應該把圖改成為二圖,這樣就完全正確

了,

第五章存儲管理

一、填空題

1、虛擬存儲器

2、重定位

3、判斷該頁是否在內(nèi)存中,判斷該頁是否被修改過

4、硬件變換機構(gòu),內(nèi)存,缺頁,中斷處理程序

5、空閑塊,淘汰,空閑塊

6、頁號,內(nèi)存塊號,記錄內(nèi)存塊的分配情況

7、分配內(nèi)存,連續(xù)的內(nèi)存,不等,連續(xù)

8、用戶,系統(tǒng)

9、內(nèi)部碎片,外部碎片

10、靜態(tài)重定位,動態(tài)重定位

11.裝入內(nèi)存,執(zhí)行

12、抖動

二、選擇題

1234567891011

CDDADDBFJBABABBD

三、問答題

1、所謂“內(nèi)部碎片”,是指系統(tǒng)已經(jīng)分配給用戶使用、用戶自己沒有用到的那部分存儲空間;所謂“外

部碎片”,是指系統(tǒng)無法把它分配出去供用戶使用的那部分存儲空間。對于教材而言,單一連續(xù)區(qū)存儲

管理、固定分區(qū)存儲管理.、分頁式存儲管理和請求頁式存儲管理都會出現(xiàn)內(nèi)部碎片。只是前兩種存儲管

理造成的內(nèi)部碎片比較人,浪費較為嚴重;后兩種頁式存儲管理,平均來說每個作業(yè)都會出現(xiàn)半頁的內(nèi)

部碎片。教材中,只有可變分區(qū)存儲管理會產(chǎn)生外部碎片。

2、靜態(tài)重定位是一種通過軟件來完成的地址重定位技術(shù)。它在程序裝入內(nèi)存時,完成對程序指令中地址

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

重定位。

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

地裝入內(nèi)存。只有到執(zhí)行某條指令時,硬件地址轉(zhuǎn)換機構(gòu)才對它里面的地址進行轉(zhuǎn)

換。正因為如此,實行動態(tài)重定位的系統(tǒng),作業(yè)程序可以在內(nèi)存里移動。也就是說,

作業(yè)程序在內(nèi)存中是可浮動的。

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

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

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

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

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

4、在分頁式或請求頁式存儲管理中,通常是利用內(nèi)存儲器構(gòu)成頁表的。當CPU執(zhí)行到某條指令、要

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

表(訪問一次內(nèi)存),然后才能由所形成的絕對地址去真正執(zhí)行指令(第二次訪問內(nèi)存)??梢?,由

于頁表在內(nèi)存,降低了CPU的訪問速度。

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

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

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

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

成地址的變換工作。

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

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

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

行頁面淘汰。所以,缺頁中斷和頁面淘汰之間的關(guān)系是:頁面淘汰一定是由缺頁中斷所引起:但缺

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

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

這稱為“中斷”。通常,計算機的硬件結(jié)構(gòu)都是在執(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í)行別的進程程序。

7、如圖所示。在單一連續(xù)分區(qū)存儲管理與固定分區(qū)存儲管理之間畫了一條線,

表明位于線以上的存儲管理策咯只適用圖各種存儲管理策略

于單道程序設計,以下的適用于多道程序

設計;在可變分區(qū)存儲管理與頁式存儲管

理之間畫了一條線,表明位于線以上的存

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

的存儲區(qū),以下的存儲管理策略打破了連

續(xù)性的要求;在段頁式存儲管理與請求頁式存儲管理之間畫了一條線,那明位于

線以上的存儲管理策略都要求使作業(yè)程序全部進入內(nèi)存,而以下的存儲管理策略

打破了全部的要求,只要部分裝入內(nèi)存就可以了。

可見,每一種存儲管理的出現(xiàn),都是在原有存儲管理基礎上的一次發(fā)展和提高,從不完善到逐漸完

善,

四、計算題

1.(1)邏輯地址2365D的轉(zhuǎn)換為數(shù)對:

頁號;相對地址%塊尺寸=2365/2048=1;頁內(nèi)位移=相對地址%塊尺寸=317

由題意知,第1頁對應的塊號為2。所以,

物理地址二塊號X塊尺寸+頁內(nèi)位移=2X2048+317=4413

(2)邏輯地址093DH轉(zhuǎn)換為2進制為O93DH=0000100100111101B

由題意知塊尺寸為2KB=2"

2.FIFO:3塊時為9/12=75%,4塊時為10/12=83%發(fā)生異常現(xiàn)象。

LRU:3塊時為10/12=83%,4塊時為9/12=75%

3.各種分配算法時的情形如下:

(1)最先適應算法

請求隊列最先適應算法

初始I0K4K20KI8K7K9K12K15K

12K10K4K8K18K7K9K12K15K

10K04K8K18K7K9K12K15K

9K04K8K9K7K9KI2K15K

(2)最佳適應算法

請求隊列最佳適應算法

初始10K4K20K18K7K9K12K15K

12K10K4K20K18K7K9K015K

10K04K20KI8K7K9K015K

9K04K20KI8K7K0015K

(3)最壞適應算法

請求隊列最壞適應算法

初始10K4K20K18K7K9K12K15K

12KI0K4K8KI8K7K9K12K15K

10K10K4K8K8K7K9K12K15K

9K10K4K8K8K7K9K12K6K

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

4.(1)采用最近最久未用(LRU)頁面淘汰算法,作業(yè)在得到2塊內(nèi)存空叵時所產(chǎn)生的缺頁中斷次數(shù)為

18次,如下圖(a)所示,缺頁率=18/20=90%;在得到4塊內(nèi)存空間時所產(chǎn)生的缺頁中斷次數(shù)為10次,

如下圖(b)所示,缺頁率=10/20=50%。

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

次,如下圖(a)所示,缺頁率=18/20=90%;在得到4塊內(nèi)存空間時所產(chǎn)生的缺頁中斷次數(shù)為14次,

如下圖(b)所示,缺頁率=14/20=70%。

第六章設備管理

一、填空題:

1.塊

2.最短尋道時間優(yōu)先

3.主存

4.成批

5.硬件緩沖、軟件緩沖

6.設備控制表

7.共享設備、虛擬設備

8.邏輯

9.獨享設備、共享設備、虛擬設備

10.程序直接控制方式、中斷方式、DMA方式、通道方式

11.虛擬設備

12.中斷

二、選擇題:

12345678910

CBDCAACAAC

三、簡答題

1.所謂“系統(tǒng)設備”,是指在操作系統(tǒng)生成時就已被納入系統(tǒng)管理范圍的設備:所謂“用戶設備”是指

在完成應用任務過程中,用戶特殊需要的設備。因此,判定一個設備是系統(tǒng)設備還是用戶設備,依據(jù)是

它在系統(tǒng)生成時,是否已經(jīng)納入了系統(tǒng)的管理范圍。如果是,它就是系統(tǒng)設備:如果不是,它就是用戶

設備。

2.設備管理的主要功能是:(1)提供一組I/O命令,以便用戶進程能夠在程序中提出I/O請求,這是用

戶使用外部設備的“界面”;(2)記住各種設備的使用情況,實現(xiàn)設備的分配與回收;(3)對緩沖區(qū)進

行管理,解決設備與設備之間、設備與CPU之間的速度匹配問題;(4)按照用戶的具體請求,啟動設備,

通過不同的設備驅(qū)動程序,進行實際的I/O操作;I/O操作完成之后,將結(jié)果通知用戶進程,從而實現(xiàn)真

正的I/O操作。

3.通過大容量輔助存儲器的支持,利用軟件技術(shù)(SPOOLing),把獨享設備“改造”成為可以共享的設

備,但實際上這種共享設備是不存在的,于是把它們稱為“虛擬設備”。

4.為了解決慢速輸入/輸出設備與快速處理器之間的矛盾,為了使得輸入/輸出設備與CPU能夠并行工

作,在計算機的內(nèi)存空間為各種設備開設了緩沖區(qū)。也提高了并行性。

5.執(zhí)行一次磁盤的輸入/輸出操作需要花費的時間包括三部分:(1)查找時間:(2)等待時間;(3)傳

輸時間。在這些時間中,傳輸時間是設備固有的特性,無法用改變軟件的辦法將它改進。因此,要提高磁

盤的使用效率,只能在減少查找時間和等待時間上想辦法,它們都與I/O在磁盤上的分布位置有關(guān)。由于

磁臂的移動是靠控制電路驅(qū)動步進電機來實現(xiàn),它的運動速度相對于磁盤軸的旋轉(zhuǎn)來講較緩慢。因此,查

找時間對磁盤調(diào)度的影響更為主要。

6.所謂“DMA”,是指“直接存儲器存取”的數(shù)據(jù)傳輸方式,其最大特點是能使I/O設備直接和內(nèi)

存儲器進行成批數(shù)據(jù)的快速傳輸。適用于一些高速的I/O設備,如磁帶、磁盤等。通道方式與DMA

方式之間的區(qū)別如下。

(1)在DMA方式下,數(shù)據(jù)傳輸?shù)姆较?、傳輸長度和地址等仍然需要由CPU來控制。但在通道方式

下,所需的CPU干預大大減少。

(2)在DMA方式下,每臺設備要有一個DMA控制器。當設備增加時,多個DMA控制器的使用,

顯然不很經(jīng)濟;但在通道方式下,一個通道可以控制多臺設備,這不僅節(jié)省了費用,而且減輕了

CPU在輸入質(zhì)出中的負擔。

(3)在DMA方式下傳輸數(shù)據(jù)時,是采用“竊取”總線控制權(quán)的辦法來工作的。因此,CPU與設備之間

并沒有實現(xiàn)真正的并行工作:在通道方式下,CPU把I/O任務交給通道后,它就與通道就真正并行工作。

7.往磁帶、磁盤上存放信息時,經(jīng)常是把若干個記錄先在內(nèi)存緩沖區(qū)里拼裝成一塊,然后再寫到磁

帶或磁盤上。存儲設備與內(nèi)存儲器進行宿息交換時,就以塊為單位。這個把汜錄拼裝成塊的過程,

被稱為是“記錄的成組”。

從磁帶、磁盤上讀取記錄時,先是把含有那個記錄的塊讀到內(nèi)存的緩沖區(qū)中,在那里面挑選出

所需要的記錄,然后把它送到內(nèi)存存放的目的地。這個把記錄從緩沖區(qū)里挑選出來的過程,被稱為

是“記錄的分解”。

之所以這樣做,一是為了提高存儲設備的存儲利用率:二是減少內(nèi)、外存之間信息交換次數(shù),提高

系統(tǒng)的效率。

四、計算題

1.(1)先來先服務時,調(diào)度的順序是20—l()f22一■20f2~*4()f6f38,總共劃過的柱面數(shù)是:

10+12+2+18+38+34+32=146

因此,總的查找時間為:146X6=876ms。

(2)最短查找時間優(yōu)先時,調(diào)度的順序是20-22-10-6-2-38-40(由于磁臂起始時定位于柱面

20,所以可以把后面第20柱面的訪問立即進行),總共劃過的柱面數(shù)是:

2+12+4+4+36+2=60

因此,總的查找時間為:60X6=360mso

(3)電梯算法(初始由外向里移動)時,調(diào)度的順序是20-22-38-40-10-6-2(由于磁臂起始

時定位于柱面20,所以可以把后面第20柱面的訪問立即進行),總共劃過的柱面數(shù)是:

2+16+2+30+4+4=58

因此,總的查找時間為:58X6=348mso

2.由于移動臂現(xiàn)在處于第8柱面,如果按照“先來先服務”調(diào)度算法,對這6個I/O的響應次序應

該是8-9—7f15-9-20-7;如果是按照“最短查找時間優(yōu)先”調(diào)度算法,對這6個I/O的響應次

序可以有兩種,一是8f9f7fl5f20(到達9時完成1和4的請求,到達7時完成2和6的請求),

二是8f7-9-15—20(到達7時完成2和6的請求,到達9時完成1和4的請求);如果按照“電

梯”調(diào)度算法,對這6個I/O的響應次序可以有兩種,一是8-9-15-20-7(由里往外的方向,到

達9時完成1和4的請求,到達7時完成2和6的請求),二是8f7-*9-15—20(由外往里的方向,

到達7時完成2和6的請求,到達9時完成1和4的請求);如果按照“單向掃描”調(diào)度算法,對這

6個I/O的響應次序是8-9-15-20-0-7。對比后可以看出,實行8f7-9-15-20的響應次序會

得到最省的時間,因為這時移動臂的移動柱面數(shù)是:1+2+6+5=14

第七章文件管理

一、填空題

1.文件

2.按名存取文件目錄

3.普通文件目錄文件特殊文件

4.物理非連續(xù)的物理塊

5.物理塊信息交換

6.位示圖法空閑塊鏈接法

7.文件說明目錄文件

8.文件重名

9.打開文件關(guān)閉文件

10.記錄號該記錄存放地址

11.順序文件鏈接文件索引文件

二、選擇題

12345678

CBCBDCAC

l.C2.B3.C4.B5.D6.C7.A8.C

三、簡答題

1.若干個邏輯記錄合并成一組,寫入一個塊叫記錄成組,當存儲介質(zhì)上的一個物理記錄讀進輸入緩沖區(qū)

后,把邏輯記錄從塊中分離出來的操作叫記錄的分解。

記錄的成組和分解處理不僅節(jié)省存儲空間,還能減少輸入輸出操作次數(shù),提高系統(tǒng)效率。

2.文件系統(tǒng)提供給用戶程序一組系統(tǒng)調(diào)用,包括建立,打開,關(guān)閉,撤銷,讀,寫和控制。

3.文件的邏輯組織:用戶對文件的觀察和使用是從自身處理文件中數(shù)據(jù)是采用的組織方式來看待文件組

織形式。這種從用戶觀點出發(fā)所見到的文件組織形式稱為文件的邏輯組織。

(D書?結(jié)構(gòu)文件(記錄式文件):邏輯上可被看成一組連續(xù)順序的記錄的集合。

(2)無結(jié)構(gòu)文件:指文件內(nèi)部不再劃分記錄,它是由一組相關(guān)信息組成的有序字符流,即流式文件。

文件的物理組織:文件在存儲設備上的存儲組織形式稱為文件的物理組織。

(1)文件的物理組織形式主要有:

連續(xù)文件:所占盤塊是連續(xù)的,

串聯(lián)文件:所占盤塊不連續(xù),Etf后鏈接。

4.連續(xù)結(jié)構(gòu)是指把邏輯上連續(xù)的文件信息依次存放到輔存上連續(xù)的物理塊中。連續(xù)結(jié)構(gòu)的優(yōu)點是:實現(xiàn)

簡單,存取速度快,常用于存放系統(tǒng)文件等固定長度的文件。連續(xù)結(jié)構(gòu)的不足是:文件長度不便于動態(tài)

增加,容易造成磁盤碎片。

鏈接結(jié)構(gòu)是指把邏輯上連續(xù)的用戶文件信息存放到輔存的不連續(xù)物理塊中,并在每一

溫馨提示

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

評論

0/150

提交評論