計(jì)算機(jī)操作系統(tǒng)第二版答案郁紅英_第1頁(yè)
計(jì)算機(jī)操作系統(tǒng)第二版答案郁紅英_第2頁(yè)
計(jì)算機(jī)操作系統(tǒng)第二版答案郁紅英_第3頁(yè)
計(jì)算機(jī)操作系統(tǒng)第二版答案郁紅英_第4頁(yè)
計(jì)算機(jī)操作系統(tǒng)第二版答案郁紅英_第5頁(yè)
已閱讀5頁(yè),還剩17頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、習(xí)題二1 操作系統(tǒng)中為什么要引入進(jìn)程的概念?為了實(shí)現(xiàn)并發(fā)進(jìn)程之間的合作和協(xié) 調(diào),以及保證系統(tǒng)的安全,操作系統(tǒng)在進(jìn)程管理方面要做哪些工作? 答:(1)為了從變化的角度動(dòng)態(tài)地分析研究可以并發(fā)執(zhí)行的程序,真實(shí)地反 應(yīng)系統(tǒng)的獨(dú)立性、 并發(fā)性、動(dòng)態(tài)性和相互制約, 操作系統(tǒng)中就不得不引入 “進(jìn) 程”的概念;( 2)為了防止操作系統(tǒng)及其關(guān)鍵的數(shù)據(jù)結(jié)構(gòu), 受到用戶程序有意或無(wú)意的破 壞,通常將處理機(jī)的執(zhí)行狀態(tài)分成核心態(tài)和用戶態(tài);對(duì)系統(tǒng)中的全部進(jìn)程實(shí) 行有效地管理,其主要表現(xiàn)是對(duì)一個(gè)進(jìn)程進(jìn)行創(chuàng)建、撤銷(xiāo)以及在某些進(jìn)程狀 態(tài)之間的轉(zhuǎn)換控制,2 試描述當(dāng)前正在運(yùn)行的進(jìn)程狀態(tài)改變時(shí),操作系統(tǒng)進(jìn)行進(jìn)程切換的步驟。 答:(

2、1)就緒狀態(tài)運(yùn)行狀態(tài)。處于就緒狀態(tài)的進(jìn)程,具備了運(yùn)行的條件, 但由于未能獲得處理機(jī),故沒(méi)有運(yùn)行。( 2)運(yùn)行狀態(tài)就緒狀態(tài)。 正在運(yùn)行的進(jìn)程, 由于規(guī)定的時(shí)間片用完而被暫 停執(zhí)行,該進(jìn)程就會(huì)從運(yùn)行狀態(tài)轉(zhuǎn)變?yōu)榫途w狀態(tài)。( 3)運(yùn)行狀態(tài)阻塞狀態(tài)。 處于運(yùn)行狀態(tài)的進(jìn)程, 除了因?yàn)闀r(shí)間片用完而暫 停執(zhí)行外還有可能由于系統(tǒng)中的其他因素的影響而不能繼續(xù)執(zhí)行下去。3 現(xiàn)代操作系統(tǒng)一般都提供多任務(wù)的環(huán)境,試回答以下問(wèn)題。( 1) 為支持多進(jìn)程的并發(fā)執(zhí)行,系統(tǒng)必須建立哪些關(guān)于進(jìn)程的數(shù)據(jù)結(jié)構(gòu)? 答:為支持進(jìn)程的并發(fā)執(zhí)行,系統(tǒng)必須建立“進(jìn)程控制塊(PCB)”,PCB的組織方式常用的是鏈接方式。( 2) 為支持進(jìn)程的狀

3、態(tài)變遷,系統(tǒng)至少應(yīng)該供哪些進(jìn)程控制原語(yǔ)?答:進(jìn)程的阻塞與喚醒原語(yǔ)和進(jìn)程的掛起與激活原語(yǔ)。( 3) 當(dāng)進(jìn)程的狀態(tài)變遷時(shí),相應(yīng)的數(shù)據(jù)結(jié)構(gòu)發(fā)生變化嗎? 答:創(chuàng)建原語(yǔ):建立進(jìn)程的 PCB,并將進(jìn)程投入就緒隊(duì)列。 ; 撤銷(xiāo)原語(yǔ):刪除進(jìn)程的 PCB,并將進(jìn)程在其隊(duì)列中摘除; 阻塞原語(yǔ): 將進(jìn)程 PCB中進(jìn)程的狀態(tài)從運(yùn)行狀態(tài)改為阻塞狀態(tài), 并將進(jìn) 程投入阻塞隊(duì)列; 喚醒原語(yǔ): 將進(jìn)程 PCB中進(jìn)程的狀態(tài)從阻塞狀態(tài)改為就緒狀態(tài), 并將進(jìn) 程從則色隊(duì)列摘下,投入到就緒隊(duì)列中。4. 什么是進(jìn)程控制塊?從進(jìn)程管理、中斷處理、進(jìn)程通信、文件管理、設(shè)備管 理 及存儲(chǔ)管理的角度設(shè)計(jì)進(jìn)程控制塊應(yīng)該包含的內(nèi)容。答:(1)進(jìn)程

4、控制塊是用來(lái)描述進(jìn)程本身的特性、進(jìn)程的狀態(tài)、進(jìn)程的 調(diào)度信息及對(duì)資源的占有情況等的一個(gè)數(shù)據(jù)結(jié)構(gòu);(2)為了進(jìn)程管理,進(jìn)程控制塊包括以下幾方面。a)進(jìn)程的描述信息,包括進(jìn)程標(biāo)識(shí)符、進(jìn)程名等。b)進(jìn)程的當(dāng)前狀況。c)當(dāng)前隊(duì)列鏈接指針。d)進(jìn)程的家族關(guān)系。 為了中斷處理,進(jìn)程控制塊的內(nèi)容應(yīng)該包括處理機(jī)狀態(tài)信息和各種寄存 器的內(nèi)容。為了內(nèi)存管理的需要,進(jìn)程控制塊的內(nèi)容應(yīng)該包括進(jìn)程使用的信號(hào)量、學(xué)習(xí)參考消息隊(duì)列指針等。 為了設(shè)備管理,進(jìn)程控制塊的內(nèi)容應(yīng)該包括進(jìn)程占有資源的情況。5 假設(shè)系統(tǒng)就緒隊(duì)列中有 10 個(gè)進(jìn)程,這 10 個(gè)進(jìn)程輪換執(zhí)行,每隔 300ms 輪 換一次,CPU在進(jìn)程切換時(shí)所花費(fèi)的時(shí)間是

5、 10ms,試問(wèn)系統(tǒng)化在進(jìn)程切換上 的開(kāi)銷(xiāo)占系統(tǒng)整個(gè)時(shí)間的比例是多少?答:因?yàn)槊扛?300ms 換一次進(jìn)程,且每個(gè)進(jìn)程切換時(shí)所花費(fèi)的時(shí)間是 10ms, 則系統(tǒng)化在進(jìn)程切換上的開(kāi)銷(xiāo)占系統(tǒng)整個(gè)時(shí)間的比例是 10/ (300+10)=3.2% 6 試述線程的特點(diǎn)及其與進(jìn)程之間的關(guān)系。答:(1)特點(diǎn):線程之間的通信要比進(jìn)程之間的通信方便的多;同一進(jìn)程內(nèi) 的線程切換也因?yàn)榫€程的輕裝而方便的多。同時(shí)線程也是被獨(dú)立調(diào)度的分配 的;( 2)線程與進(jìn)程的關(guān)系: 線程和進(jìn)程是兩個(gè)密切相關(guān)的概念, 一個(gè)進(jìn)程至少 擁有一個(gè)線程,進(jìn)程根據(jù)需要可以創(chuàng)建若干個(gè)線程。線程自己基本上不擁有 資源,只擁有少量必不可少的資源(線程

6、控制塊和堆棧)7 根據(jù)圖 2-18,回答以下問(wèn)題。(1) 進(jìn)程發(fā)生狀態(tài)變遷 1、3、4、6、7 的原因。答:1 表示操作系統(tǒng)把處于創(chuàng)建狀態(tài)的進(jìn)程移入就緒隊(duì)列; 3 表示進(jìn)程 請(qǐng)求 I/O 或等待某事件; 4 表示進(jìn)程用行的時(shí)間片用完; 6 表示 I/O 完 成或事件完成; 7 表示進(jìn)程完成。( 2) 系統(tǒng)中常常由于某一進(jìn)程的狀態(tài)變遷引起另一進(jìn)程也產(chǎn)生狀態(tài)變遷, 這種變遷稱(chēng)為因果變遷。 下述變遷是否為因果變遷: 32,45,72,36, 是說(shuō)明原因。答:32 是因果變遷,當(dāng)一個(gè)進(jìn)程從運(yùn)行態(tài)變?yōu)樽枞麘B(tài)時(shí),此時(shí) CPU空閑, 系統(tǒng)首先到高優(yōu)先級(jí)隊(duì)列中選擇一個(gè)進(jìn)程。45 是因果變遷,當(dāng)一個(gè)進(jìn)程運(yùn)行完畢

7、時(shí),此時(shí) CPU空閑,系統(tǒng)首先到高 優(yōu)先級(jí)隊(duì)列中選擇進(jìn)程, 但如果高優(yōu)先級(jí)隊(duì)列為空, 則從低優(yōu)先隊(duì)列中選擇一個(gè) 進(jìn)程。72 是因果變遷,當(dāng)一個(gè)進(jìn)程運(yùn)行完畢時(shí), CPU空閑,系統(tǒng)首先到高優(yōu)先 級(jí)隊(duì)列中選擇一個(gè)進(jìn)程。36 不是因果變遷。一個(gè)進(jìn)程阻塞時(shí)由于自身的原因而發(fā)生的,和另一個(gè) 進(jìn)程等待的時(shí)間到達(dá)沒(méi)有因果關(guān)系。( 3) 根據(jù)此進(jìn)程狀態(tài)轉(zhuǎn)換圖,說(shuō)明該系統(tǒng) CPU調(diào)度的策略和效果。學(xué)習(xí)參考答:當(dāng)進(jìn)程調(diào)度時(shí),首先從高優(yōu)先級(jí)就緒隊(duì)列選擇一個(gè)進(jìn)程,賦予它的時(shí)間 片為 100ms。如果高優(yōu)先級(jí)就緒隊(duì)列為空,則從低優(yōu)先級(jí)就緒隊(duì)列選擇進(jìn)程,并 且賦予該進(jìn)程的時(shí)間片為 500ms。這種策略一方面照顧了短進(jìn)程,

8、一個(gè)進(jìn)程如果在 100ms運(yùn)行完畢它將退出系 統(tǒng),更主要的是照顧了 I/O 量大的進(jìn)程, 進(jìn)程因 I/O 進(jìn)入阻塞隊(duì)列, 當(dāng) I/O 完成 后它就進(jìn)入了高優(yōu)先級(jí)就緒隊(duì)列, 在高優(yōu)先級(jí)就緒隊(duì)列等待的進(jìn)程總是優(yōu)于低優(yōu) 先級(jí)就緒隊(duì)列的進(jìn)程。 而對(duì)于計(jì)算量較大的進(jìn)程, 它的計(jì)算如果在 100ms的時(shí)間 內(nèi)不能完成,它將進(jìn)入低優(yōu)先級(jí)就緒隊(duì)列, 在這個(gè)隊(duì)列的進(jìn)程被選中的機(jī)會(huì)要少, 只有當(dāng)高優(yōu)先級(jí)就緒隊(duì)列為空, 才從低優(yōu)先級(jí)就緒隊(duì)列選擇進(jìn)程, 但對(duì)于計(jì)算量 大的進(jìn)程,系統(tǒng)給予的適當(dāng)照顧時(shí)間片增大為 500ms。 8 回答以下問(wèn)題。( 1) 若系統(tǒng)中沒(méi)有運(yùn)行進(jìn)程,是否一定沒(méi)有就緒進(jìn)程?為什么? 答:是,因?yàn)楫?dāng)

9、 CPU空閑時(shí),系統(tǒng)就會(huì)在就緒隊(duì)列里調(diào)度進(jìn)程,只有 當(dāng)就緒隊(duì)列為空時(shí),系統(tǒng)中才沒(méi)有運(yùn)行程序。( 2) 若系統(tǒng)中既沒(méi)有運(yùn)行進(jìn)程,也沒(méi)有就緒進(jìn)程,系統(tǒng)中是否就沒(méi)有阻塞 進(jìn)程?解釋。答:不一定,當(dāng)運(yùn)行的程序都因?yàn)檎?qǐng)求 I/O 或等待事件時(shí)而進(jìn)入阻塞, 系統(tǒng)中就沒(méi)有就緒進(jìn)程。( 3) 如果系統(tǒng)采用優(yōu)先級(jí)調(diào)度策略,運(yùn)行的進(jìn)程是否一定是系統(tǒng)中優(yōu)先級(jí) 最高的進(jìn)程?為什么? 答:不一定,若優(yōu)先級(jí)高的進(jìn)程進(jìn)入阻塞狀態(tài)時(shí),而且優(yōu)先級(jí)高的就 緒隊(duì)列里沒(méi)有等待的進(jìn)程, 這時(shí)就會(huì)調(diào)度優(yōu)先級(jí)低的就緒隊(duì)列的進(jìn)程。 9 假如有以下程序段,回答下面的問(wèn)題。S1: a=3-x;S2: b=2*a;S3: c=5+a;(1) 并發(fā)

10、程序執(zhí)行的 Bernstein 條件是什么?答:若 P1與 P2R并發(fā)執(zhí)行,當(dāng)且僅當(dāng) R(P1) W(P2) R(P2) W(P1) W(P1)W(P2)=時(shí)才滿足。S3(2) 試畫(huà)圖表示它們執(zhí)行時(shí)的先后次序。S1(3) 利用 Bernstein 條件證明, S1、S2和 S3哪兩個(gè)可以并發(fā)執(zhí)行,哪兩個(gè)不能 答: R(s1)=x,W(s1)=a;R(s2)=a,W(s2)=b;R(s3)=a,W(s3)=c;(1).R(s1)W(s2)R(s2)W(s1)W(s1)W(s2)=a,則 s1與 s2 不能并發(fā)執(zhí)行; (2). R(s1)W(s3)R(s3)W(s1)W(s1)W(s3)=a,則

11、s1與 s3不能并發(fā)執(zhí)行; (3). R(s2)W(s3)R(s3)W(s2)W(s2)W(s3)=,則s2與 s3可以并發(fā)執(zhí)行。習(xí)題三學(xué)習(xí)參考1 一下進(jìn)程之間存在相互制約關(guān)系嗎?若存在,是什么制約關(guān)系?為什么?( 1) 幾個(gè)同學(xué)去圖書(shū)館借同一本書(shū)。 答:互斥關(guān)系;因?yàn)樗麄円柰槐緯?shū),不可能同時(shí)借到,所以互斥。( 2) 籃球比賽中兩隊(duì)同學(xué)爭(zhēng)搶籃板球。 答:互斥關(guān)系;因?yàn)闋?zhēng)搶同一個(gè)籃板,存在互斥關(guān)系。( 3) 果汁流水線生產(chǎn)中搗碎、消毒、灌裝、裝箱等各道工序。 答:同步關(guān)系;他們必須相互協(xié)作才能使進(jìn)程圓滿完成。( 4) 商品的入庫(kù)出庫(kù)。 答:同步關(guān)系;因?yàn)樯唐烦鰩?kù)可以為入庫(kù)提供空間。( 5)

12、工人做工與農(nóng)民種糧。 答:沒(méi)有制約關(guān)系。2 在操作系統(tǒng)中引入管程的目的是什么?條件變量的作用是什么? 答:用信號(hào)量可以實(shí)現(xiàn)進(jìn)程的同步于互斥,但要設(shè)置許多信號(hào)量,使用大量 的 P、V操作,而且還要仔細(xì)安排 P 操作的排列次序, 否則將會(huì)出現(xiàn)錯(cuò)誤的結(jié) 果或是死鎖現(xiàn)象。為了解決這些問(wèn)題引進(jìn)了管程; 條件變量的作用是使進(jìn)程不僅能被掛起, 而且當(dāng)條件滿足且管程再次可用時(shí), 可以恢復(fù)該進(jìn)程并允許它在掛起點(diǎn)重新進(jìn)入管程。3 說(shuō)明 P、V 操作為什么要設(shè)計(jì)成原語(yǔ)。答 : 用信號(hào)量 S表示共享資源,其初值為 1 表示有一個(gè)資源。設(shè)有兩個(gè)進(jìn)程 申請(qǐng)?jiān)撡Y源,若其中一個(gè)進(jìn)程先執(zhí)行 P操作。 P操作中的減 1 操作有

13、3 跳及 其指令組成:去 S送寄存器 R;R-1送 S。若 P操作不用原語(yǔ)實(shí)現(xiàn),在執(zhí)行了前 述三條指令中的 2 條,即還未執(zhí)行 R送 S時(shí)(此時(shí) S值仍為 1),進(jìn)程被剝奪 CPU,另一個(gè)進(jìn)程執(zhí)行也要執(zhí)行 P 操作,執(zhí)行后 S的值為 0,導(dǎo)致信號(hào)量的值 錯(cuò)誤。正確的結(jié)果是兩個(gè)進(jìn)程執(zhí)行完 P操作后,信號(hào)量 S的值為 -1,進(jìn)程阻 塞。4 設(shè)有一個(gè)售票大廳,可容納 200 人購(gòu)票。如果廳內(nèi)不足 200 人則允許進(jìn)入, 超過(guò)則在廳外等候;售票員某時(shí)只能給一個(gè)購(gòu)票者服務(wù),購(gòu)票者買(mǎi)完票后就 離開(kāi)。試問(wèn):( 1) 購(gòu)票者之間是同步關(guān)系還是互斥關(guān)系?答:互斥關(guān)系。(2) 用 P、V 操作描述購(gòu)票者的工作過(guò)程

14、。semaphore empty=200;semaphore mutex=1;semaphore waiting=0 ;void buy() p(waiting);p(mutex);v(mutex);v(empty);void waiting()學(xué)習(xí)參考 p(empty); 等待; waiting+;5 進(jìn)程之間的關(guān)系如圖 3-16 所示,試用 P、V 操作描述它們之間的同步semaphore A,B,C,D,E,F,G=0 ;S1,V(A),V(B) ;P(A),S2,V(C) ;P(B),S3,V(D),V(E) ;P(D),S4,V(F) ;P(E),S5,V(G) ;P(C),P(F)

15、,P(G),S6 ;6 有 4 個(gè)進(jìn)程 P1、P2、P3、P4共享一個(gè)緩沖區(qū),進(jìn)程 P1向緩沖區(qū)存入消息, 進(jìn)程 P2、P3、P4 從緩沖區(qū)中取消息,要求發(fā)送者必須等三個(gè)進(jìn)程都取過(guò)本 消息后才能發(fā)送下調(diào)消息。緩沖區(qū)內(nèi)每次只能容納一個(gè)消息,用P、 V 操作描述四個(gè)進(jìn)程存取消息的情況。答: semaphore p1=0;semaphore p2, p3,p4=1 ;semaphore cout=0 ; semaphore mutex=1;void main ()P(p2) ;P(p3) ; P(4) ;V(cout) ;write p1()P(p1);P(metux) ;P(cout) ;存入消息

16、;V(p1) ;V(metux) ;Read p2() P(mutex) ; P(p1) ;讀消息;V(p1) ;V(p2) ;V(metux);Read p3() P(mutex) ; P(p1) ;讀消息;V(p1) ;V(p3) ;V(metux);學(xué)習(xí)參考Read p4() P(mutex) ; P(p1) ; 讀消息;V(p1) ;V(p4) ; V(metux) ;7 分析生產(chǎn)者消費(fèi)者問(wèn)題中多個(gè) P 操作顛倒引起的后果 答: semaphore mutex=1; semaphore empty=n ; semaphore full=0;int i,j;void producer()

17、/*生產(chǎn)者進(jìn)程 */ void consumer() /*程*/while(true)while(true) P(mutex)P(mutex);P(full);P(empty);data_c=bufferj;bufferi=data_p;j=(j+1)%n;i=(i+1)%n;V(mutex);V(mutex);V(empty);V(full); ITEM buffern;ITEM data_p,data_c;消費(fèi)者進(jìn)若把生產(chǎn)者進(jìn)程的 P 操作顛倒,消費(fèi)者進(jìn)程的 P操作顛倒 (如圖),則生產(chǎn)者 進(jìn)程執(zhí)行到 V(mutex) 時(shí),消費(fèi)者就可以執(zhí)行 P(mutex) 但由于 full=0 ,消費(fèi)

18、者進(jìn)程不可執(zhí)行 P(full); 當(dāng)生產(chǎn)者進(jìn)程執(zhí)行完 V(full) 后, full=1 ,但由于 mutex=0,消費(fèi)者進(jìn)程無(wú)法執(zhí)行,造成死鎖。8 讀者寫(xiě)者問(wèn)題中寫(xiě)者優(yōu)先的實(shí)現(xiàn)。答 : semaphore Wmutex , Rmutex=1; int Rcount=0 ; semaphore mutex=1 void reader () /* 讀者進(jìn)程 */ while(true) P(mutex);P(Rmutex); If(Rcount=0) P(wmutex);Rcount=Rcount+1 ; V(Rmutex); V(mutex);read;/* 執(zhí)行讀操作 */學(xué)習(xí)參考P(Rmu

19、tex);Rcount=Rcount-1 ;if (Rcount=0) V ( wmutex);V( Rmutex);void writer() /*寫(xiě)者進(jìn)程 */while(true)P(mutex); P(wmutex);write ;/* 執(zhí)行寫(xiě)操作 */V(Wmutex);V(mutex);9 寫(xiě)一個(gè)用信號(hào)量解決哲學(xué)家進(jìn)餐問(wèn)題不產(chǎn)生鎖死的算法 semaphore chopstick5=1,1,1,1,1;semaphore mutex=1;void philosopher ()while(true)P(mutex);P(chopsticki);P(chopstick(i+1)%5);V

20、(mutex);eat ;V(chopsticki);V(chopstick(i+1)%5);think;;10 一個(gè)文件可有若干個(gè)不同的進(jìn)程所共享,每個(gè)進(jìn)程具有唯一的編號(hào)。假 定文件可由滿足下列限制的若干個(gè)不同的進(jìn)程同時(shí)訪問(wèn),并發(fā)訪問(wèn)該文件的 哪些進(jìn)程的編號(hào)的總和不得大于 n,設(shè)計(jì)一個(gè)協(xié)調(diào)對(duì)該文件訪問(wèn)的管程。 答:11 用管程解決讀者寫(xiě)者問(wèn)題,并采用公平原則。答:習(xí)題四1 某進(jìn)程被喚醒后立刻投入運(yùn)行,能說(shuō)明該系統(tǒng)采用的是可剝奪調(diào)度算法嗎? 答:不能說(shuō)明,因?yàn)槿绻F(xiàn)在就緒隊(duì)列中沒(méi)有進(jìn)程,那么喚醒的進(jìn)程會(huì)立刻投入運(yùn)行。2 在哲學(xué)家進(jìn)餐問(wèn)題中, 如果將先拿起左邊筷子的哲學(xué)家稱(chēng)為左撇子,先拿起右邊筷

21、子的學(xué)習(xí)參考 哲學(xué)家稱(chēng)為右撇子。請(qǐng)說(shuō)明在同時(shí)存在左、右撇子的情況下,任何的就坐安排都不能產(chǎn) 生鎖死。答:任何的就坐安排都不會(huì)構(gòu)成環(huán)路,這就符合避免死鎖的條件,所以不會(huì)產(chǎn)生死鎖。3 系統(tǒng)中有 5 個(gè)資源被 4 個(gè)進(jìn)程所共享, 如果每個(gè)進(jìn)程最多需要 2 個(gè)這種資源, 試問(wèn)系統(tǒng) 是否會(huì)產(chǎn)生鎖死?答:不會(huì)產(chǎn)生死鎖;因?yàn)橐驗(yàn)橘Y源數(shù)可以滿足進(jìn)程的需要,當(dāng)其中的一個(gè)進(jìn)程爭(zhēng)取到剩 下的一個(gè)資源可以執(zhí)行,當(dāng)執(zhí)行完成以后會(huì)釋放資源,供其他進(jìn)程使用,所以不會(huì)產(chǎn)生 死鎖。4 計(jì)算機(jī)系統(tǒng)有 8臺(tái)磁帶機(jī),由 N 個(gè)進(jìn)程競(jìng)爭(zhēng)使用,每個(gè)進(jìn)程最多需要3 臺(tái)。問(wèn): N 為多少時(shí),系統(tǒng)沒(méi)有死鎖的危險(xiǎn)?答:當(dāng) n 為 1、2、3 時(shí)

22、,沒(méi)有死鎖的危險(xiǎn);因?yàn)楫?dāng) n 小于 3 時(shí),每個(gè)進(jìn)程分配 2 臺(tái)磁帶 機(jī),還有磁帶機(jī)剩余,那么當(dāng)其中的一個(gè)進(jìn)程得到剩余的磁帶機(jī)則可運(yùn)行,運(yùn)行結(jié)束后 會(huì)釋放磁帶機(jī),供其他進(jìn)程使用,系統(tǒng)不會(huì)有死鎖的危險(xiǎn);當(dāng)n 為 4 時(shí),每臺(tái)分配 2 臺(tái)時(shí)沒(méi)有剩余,則會(huì)產(chǎn)生死鎖,當(dāng)大于 5 時(shí)同樣會(huì)死鎖。5 系統(tǒng)有 5 個(gè)進(jìn)程,它們的到達(dá)時(shí)間和服務(wù)時(shí)間如表4-8 所示。新進(jìn)程(沒(méi)有運(yùn)行過(guò))與老進(jìn)程(運(yùn)行過(guò)的進(jìn)程)的條件相同時(shí),假定系統(tǒng)選新進(jìn)程運(yùn)行。表 4-8 進(jìn)程情況進(jìn)程名到達(dá)時(shí)間服務(wù)時(shí)間A03B26C44D65E82若按先來(lái)先服務(wù)( FCFS)、時(shí)間片輪法(時(shí)間片 q=1)、短進(jìn)程優(yōu)先( SPN)、最短剩余時(shí)間

23、優(yōu)先( SRT,時(shí)間片 q=1)、響應(yīng)比高者優(yōu)先( HRRN)及多級(jí)反饋隊(duì)列( MFQ,第一 個(gè)隊(duì)列的時(shí)間片為 1,第 i(i1)個(gè)隊(duì)列的時(shí)間片 q=2( i-1)算法進(jìn)行 CPU調(diào)度,請(qǐng)給 出各個(gè)進(jìn)程的完成時(shí)間、周轉(zhuǎn)時(shí)間、帶權(quán)周轉(zhuǎn)時(shí)間,及所有的進(jìn)程的平均周轉(zhuǎn)時(shí)間和平 均帶權(quán)周轉(zhuǎn)時(shí)間。答:ABCDE平均周轉(zhuǎn)時(shí)間平均帶權(quán)周轉(zhuǎn)時(shí)間FCFS到達(dá)時(shí)間02468服務(wù)時(shí)間36452完成時(shí)間39131820周轉(zhuǎn)時(shí)間37912128.6帶權(quán)周轉(zhuǎn)11.172.252.462.56學(xué)習(xí)參考ABCDE平均周轉(zhuǎn)時(shí)間平均帶權(quán)周轉(zhuǎn)時(shí)間時(shí)間片 輪轉(zhuǎn)到達(dá)時(shí)間02468服務(wù)時(shí)間36452完成時(shí)間418172015周轉(zhuǎn)時(shí)間416

24、1314710.8帶權(quán)周轉(zhuǎn)1.332.673.252.83.52.71ABCDE平均周轉(zhuǎn)時(shí)間平均帶權(quán)周轉(zhuǎn)時(shí)間SPN到達(dá)時(shí)間02468服務(wù)時(shí)間36452完成時(shí)間39152011周轉(zhuǎn)時(shí)間37111437.6帶權(quán)周轉(zhuǎn)11.172.752.81.57.6ABCDE平均周轉(zhuǎn)時(shí)間平均帶權(quán)周轉(zhuǎn)時(shí)間SRT到達(dá)時(shí)間02468服務(wù)時(shí)間36452完成時(shí)間32081510周轉(zhuǎn)時(shí)間3184927.2帶權(quán)周轉(zhuǎn)1311.811.56ABCDE平均周轉(zhuǎn)時(shí)間平均帶權(quán)周轉(zhuǎn)時(shí)間RRN到達(dá)時(shí)間02468服務(wù)時(shí)間36452完成時(shí)間39132015周轉(zhuǎn)時(shí)間3791478帶權(quán)周轉(zhuǎn)11.172.252.83.52.14ABCDE平均周轉(zhuǎn)時(shí)間

25、平均帶權(quán)周轉(zhuǎn)時(shí)間MFQ到達(dá)時(shí)間02468服務(wù)時(shí)間36452完成時(shí)間317182014周轉(zhuǎn)時(shí)間3151414610.4帶權(quán)周轉(zhuǎn)12.53.52.832.566 設(shè)系統(tǒng)中有 5 個(gè)進(jìn)程 P1、P2、P3、P4、P5,有 3 種類(lèi)型的資源 A、B、 C,其中 A 資源 的數(shù)量是 17, B資源的數(shù)量是 5,C資源的數(shù)量是 20, T0時(shí)刻系統(tǒng)狀態(tài)如表 4-9 所示。 表 4-9 T0 時(shí)刻系統(tǒng)狀態(tài)已分配資源數(shù)量最大資源需求量仍然需求資源數(shù)學(xué)習(xí)參考進(jìn)程ABCABCABCP1212559347P2402536134P34054011006P4204425221P5314424110(1) 計(jì)算每個(gè)進(jìn)程還

26、可能需要的資源,并填入表的“仍然需要資源數(shù)”的欄目。(2) T0 時(shí)刻系統(tǒng)是否處于安全狀態(tài)?為什么? 答:處于安全狀態(tài),因?yàn)樾蛄?是一個(gè)安全狀態(tài)。(3) 如果 T0 時(shí)刻進(jìn)程 P2又有新的資源請(qǐng)求( 0,3,4),是否實(shí)施資源分配?為什么? 答:不實(shí)施資源分配,因?yàn)閷⑺匈Y源都分配給p2時(shí), p2的C是 5,不能夠運(yùn)行,進(jìn)入死鎖。(4) 如果 T0 時(shí)刻,若進(jìn)程 P4 又有新的資源請(qǐng)求( 2, 0,1),是否實(shí)施資源分配?為什 么? 答:實(shí)施;因?yàn)?p4 請(qǐng)求資源后,存在安全狀態(tài)。(5) 在( 4)的基礎(chǔ)上,若進(jìn)程 P1 又有新的資源請(qǐng)求( 0,2,0),是否實(shí)施資源分配?為 什么?答:不實(shí)施

27、;習(xí)題五1 存儲(chǔ)管理的基本任務(wù)是為多道程序的并發(fā)執(zhí)行提供良好的存儲(chǔ)環(huán)境, 這包括 哪些方面?答:存儲(chǔ)管理的基本任務(wù)是為多道程序的并發(fā)執(zhí)行提供良好的存儲(chǔ)器環(huán)境, 它包 括以下幾個(gè)方面。(1)能讓沒(méi)到程序“各得其所” ,并在不受干擾的環(huán)境中運(yùn)行時(shí),還可以使用 戶從存儲(chǔ)空間的分配、保護(hù)等事物中解脫出來(lái)。(2)向用戶提供更大的存儲(chǔ)空間,使更多的程序同時(shí)投入運(yùn)行或是更大的程 序能在小的內(nèi)存中運(yùn)行。(3)為用戶對(duì)信息的訪問(wèn)、保護(hù)、共享以及程序的動(dòng)態(tài)鏈接、動(dòng)態(tài)增長(zhǎng)提供 方便。(4)能使存儲(chǔ)器有較高的利用率。2 頁(yè)式存儲(chǔ)管理系統(tǒng)是否產(chǎn)生碎片?如何應(yīng)對(duì)此現(xiàn)象? 答:頁(yè)式存儲(chǔ)管理系統(tǒng)產(chǎn)生的碎片,稱(chēng)為內(nèi)碎片,它是指

28、一個(gè)進(jìn)程的最后一 頁(yè)沒(méi)有沾滿一個(gè)存儲(chǔ)塊而被浪費(fèi)的存儲(chǔ)空間。減少內(nèi)碎片的辦法是減少頁(yè)的 大小。3 在頁(yè)式存儲(chǔ)管理系統(tǒng)中頁(yè)表的功能是什么?當(dāng)系統(tǒng)的地址空間很大時(shí)會(huì)給 頁(yè)表的設(shè)計(jì)帶來(lái)哪些新的問(wèn)題?答:頁(yè)式存儲(chǔ)管理系統(tǒng)中, 允許將進(jìn)程的每一頁(yè)離散地存儲(chǔ)在內(nèi)出的任何一個(gè)物 理頁(yè)面上,為保證進(jìn)程的正常運(yùn)行,系統(tǒng)建立了頁(yè)表,記錄了進(jìn)程每一頁(yè)被 分配在內(nèi)存的物理號(hào)。頁(yè)表的功能是實(shí)現(xiàn)從頁(yè)號(hào)到物理塊的地址映射;學(xué)習(xí)參考當(dāng)系統(tǒng)地址很大時(shí),頁(yè)表也會(huì)變得非常大,它將占有相當(dāng)大的內(nèi)存空間。4 什么是動(dòng)態(tài)鏈接?用哪種存儲(chǔ)管理方案可以實(shí)現(xiàn)動(dòng)態(tài)鏈接? 答:動(dòng)態(tài)鏈接是指進(jìn)程在運(yùn)行時(shí), 只將進(jìn)程對(duì)應(yīng)的主程序段裝入內(nèi)存, 并與主程

29、序段鏈接上。通常一個(gè)大的程序是由一個(gè)主程序和若干個(gè)子程序以及一些數(shù) 據(jù)段組成。而段式存儲(chǔ)管理方案中的段就是按用戶的邏輯段自然形成的,因 此可實(shí)現(xiàn)動(dòng)態(tài)鏈接。5 某進(jìn)程的大小為 25F3H字節(jié), 被分配到內(nèi)存的 3A6BH字節(jié)開(kāi)始的地址。 但進(jìn) 程運(yùn)行時(shí),若使用上、下界寄存器,寄存器的值是多少?如何進(jìn)行存儲(chǔ)保護(hù)? 若使用地址、限長(zhǎng)寄存器,寄存器的值是多少?如何進(jìn)行存儲(chǔ)保護(hù)?答:( 1)若使用上下界寄存器,上界寄存器的值是3A6BH,下界寄存器的值是3A6BH+25F3H=605EH當(dāng),訪問(wèn)內(nèi)存的地址大于 605EH、小于 3A6BH時(shí)產(chǎn)生越界 中斷。2) 若使用地址、限長(zhǎng)寄存器,地址寄存器的值是

30、3A6BH,限長(zhǎng)寄存器的值 是 25F3H,當(dāng)訪問(wèn)內(nèi)存的地址小于 3A6BH,超過(guò) 3A6BH+25F3H=605E時(shí)H產(chǎn)生越 界中斷。6 在系統(tǒng)中采用可變分區(qū)存儲(chǔ)管理,操作系統(tǒng)占用低地址部分的126KB,用戶區(qū)的大小是 386KB,采用空閑分區(qū)表管理空閑分區(qū)。 若分配時(shí)從高地址開(kāi)始, 對(duì)于下述的作業(yè)申請(qǐng)序列:作業(yè) 1 申請(qǐng) 80KB;作業(yè) 2 申請(qǐng) 56KB;作業(yè) 3 申 請(qǐng) 120KB;作業(yè) 1 完成;作業(yè) 3 完成;作業(yè) 4 申請(qǐng) 156KB;作業(yè) 5 申請(qǐng) 80KB。使用首次適應(yīng)法處理上述作業(yè),并回答以下問(wèn)題。答:2)畫(huà)出作業(yè) 1、3 完成后,內(nèi)存的分布情況。(1)畫(huà)出作業(yè) 1、2、3

31、 進(jìn)入內(nèi)存后,內(nèi)存的分布情況。511126 125 0空321130KB 120KB 56KB 80KB答:511126125空2空250KB 56KB 80KB3) 畫(huà)出作業(yè) 4、5 進(jìn)入內(nèi)存后,內(nèi)存的分布情況。 答511126125 0空542空156KB 56KB14KB 80KB80KB7 某系統(tǒng)采用頁(yè)式存儲(chǔ)管理策略,某進(jìn)程的邏輯地址空間為32 頁(yè),頁(yè)的大小為 2KB,物理地址空間的大小是 4MB。( 1) 寫(xiě)出邏輯地址的格式。學(xué)習(xí)參考15 1110頁(yè)號(hào)頁(yè)內(nèi)位移( 2) 該進(jìn)程的頁(yè)表有多少項(xiàng)?每項(xiàng)至少占多少位? 答:因?yàn)檫M(jìn)程的邏輯地址空間為 32 頁(yè),因此該進(jìn)程的頁(yè)表項(xiàng)有 32項(xiàng)。頁(yè)表

32、 中應(yīng)存儲(chǔ)每頁(yè)的塊號(hào)。 因?yàn)槲锢淼刂房臻g大小是 4MB,4MB的物理地址空間內(nèi) 分成 4MB/2KB=2K個(gè)塊,因此塊號(hào)部分需要 11 位(二進(jìn)制),所以頁(yè)表中每項(xiàng) 占 11 位。( 3) 如果物理地址空間減少一半,頁(yè)表的結(jié)構(gòu)有何變化? 答:當(dāng)減少一半時(shí), 有2MB/2KB=1K個(gè)塊,因此塊號(hào)部分需要 10 位(二進(jìn)制), 所以頁(yè)表中每項(xiàng)占 10 位。8 某頁(yè)式存儲(chǔ)管理系統(tǒng), 內(nèi)存的大小為 64KB,被分為 16 塊,塊號(hào)為 0、1、2、 15。設(shè)某進(jìn)程有 4 頁(yè),其頁(yè)號(hào)為 0、1、2、3,被分別裝入內(nèi)存的 2、4、7、 5,問(wèn):( 1) 該進(jìn)程的大小是多少字節(jié)?答:總共 64KB,16 頁(yè),

33、則每頁(yè)有 4KB。該進(jìn)程有四頁(yè),則進(jìn)程的大小 為 16KB。( 2) 寫(xiě)出該進(jìn)程每一頁(yè)在內(nèi)存的起始地址。頁(yè)號(hào)塊號(hào) 起始地址028KB1416KB2728KB3535KB(3) 邏輯地址 4146 對(duì)應(yīng)的物理地址是多少?答: 4146除以 4096得 1 余 50,這頁(yè)號(hào)為 1,頁(yè)內(nèi)位移為 50;1 對(duì)應(yīng) 于 4,這物理地址為 4*4096+50=16434b。9 某段式存儲(chǔ)管理系統(tǒng)的段表如圖所示。答:1,9000 :80*1024+9000=90920B2,3600 :100*1024+3600=106000B學(xué)習(xí)參考3,230 不合法習(xí)題七1 數(shù)據(jù)傳輸控制方式有哪幾種?試比較它們的優(yōu)缺點(diǎn)。答

34、:數(shù)據(jù)轉(zhuǎn)送控制方式有程序直接控制方式、中斷控制方式、 DMA 控制方 式和通道方式四種。程序直接控制方式 :優(yōu)點(diǎn):實(shí)現(xiàn)簡(jiǎn)單,不需要硬件的支持;缺點(diǎn): (1).CPU與外設(shè)只能串行工作 ;(2) .CPU在一段時(shí)間內(nèi)只能與一臺(tái)外設(shè)交換數(shù)據(jù)信息;(3) .由于程序直接控制方式是依靠測(cè)試設(shè)備的狀態(tài)來(lái)控制數(shù)據(jù)傳遞的,因此無(wú)法 發(fā)現(xiàn)和處理由于設(shè)備和其他硬件所產(chǎn)生的錯(cuò)誤。中斷控制方式 :優(yōu)點(diǎn):提高了 CPU的利用率;缺點(diǎn): (1).在進(jìn)程傳送數(shù)據(jù)的過(guò)程中,發(fā)生中斷的次數(shù)可能很多,這將消耗CPU大量處理時(shí)間;(2).計(jì)算機(jī)中通常配置各種各樣的外設(shè),如果這些外設(shè)都通過(guò)中斷的方式進(jìn)行數(shù) 據(jù)傳遞,由于中斷次數(shù)過(guò)多

35、將使 CPU無(wú)法及時(shí)響應(yīng)中斷,造成數(shù)據(jù)丟失。 DMA 控制方式: 優(yōu)點(diǎn): (1).數(shù)據(jù)傳輸?shù)幕締挝粸閿?shù)據(jù)塊; (2).緊在開(kāi)始和結(jié)束才需要 CPU干預(yù),整塊數(shù)據(jù)的傳送是在控制器的控制之下完 成的;(3).所傳送的數(shù)據(jù)是從設(shè)備直接到內(nèi)存或者從內(nèi)存直接到設(shè)備。 通道方式: 優(yōu)點(diǎn):把對(duì)一個(gè)數(shù)據(jù)塊的讀 (寫(xiě))干預(yù)減少到對(duì)一組數(shù)據(jù)塊的讀 (寫(xiě)) 干預(yù);2 何為設(shè)備的獨(dú)立性?如何實(shí)現(xiàn)設(shè)備的獨(dú)立性? 答:設(shè)備獨(dú)立性是指用戶程序獨(dú)立于具體使用的物理設(shè)備; 此時(shí),用戶使用 邏輯設(shè)備名申請(qǐng)使用某列物理設(shè)備。 當(dāng)系統(tǒng)中有多臺(tái)該烈性的設(shè)備是, 系統(tǒng)可將 其中的任意一臺(tái)分配給請(qǐng)求進(jìn)程, 而不局限于某一臺(tái)制定的設(shè)備。

36、這樣,可顯著 的改善資源的利用率即可使用性。 設(shè)備獨(dú)立使用用戶獨(dú)立于設(shè)備的烈性。 如進(jìn)行 輸出時(shí),亦可以使用現(xiàn)實(shí)終端,也可以使用打印機(jī)。有了這種獨(dú)立性,就可以很 方便的進(jìn)行輸入 / 輸出重定向。3 什么是緩沖?為什么要引入緩沖?操作系統(tǒng)如何實(shí)現(xiàn)緩沖技術(shù)? 答:緩沖是在兩個(gè)不同速度設(shè)備之間傳輸信息時(shí), 用于平滑傳輸過(guò)程的一種手段。( 1)換屆 CPU與 I/O 設(shè)備之間的速度不匹配的矛盾。( 2)減少中斷 CPU的次數(shù)。(3)提高 CPU與 I/O 設(shè)備之間的并行性。4 設(shè)備分配中為什么可能出現(xiàn)死鎖?答:安全分配方式:在某些操作系統(tǒng)中,一個(gè)進(jìn)程只能提供一個(gè) I/O 請(qǐng)求。 也就是說(shuō),執(zhí)行進(jìn)程向系

37、統(tǒng)提出 I/O 請(qǐng)求后邊立即進(jìn)入等待狀態(tài),直到 I/O 請(qǐng)求 完成后才被喚醒。 這樣系統(tǒng)對(duì)設(shè)備的分配比較安全, 不會(huì)出現(xiàn)死鎖。 但這種方式 對(duì)進(jìn)程來(lái)說(shuō),因 CPU與 I/O 設(shè)備是串行工作的,這使得該進(jìn)程的推進(jìn)速度緩慢; 不安全分配方式:當(dāng)進(jìn)程發(fā)出 I/O 請(qǐng)求后不阻塞,而是繼續(xù)運(yùn)行,當(dāng)需要時(shí)有可 能接著發(fā)出第二個(gè)、第三個(gè) I/O 請(qǐng)求,僅當(dāng)進(jìn)程所請(qǐng)求的 I/O 設(shè)備已被另一個(gè)進(jìn) 程占用時(shí),進(jìn)程才進(jìn)入等待狀態(tài)。這種一個(gè)進(jìn)程同時(shí)可以使用多個(gè) I/O 設(shè)備的方 式提高了系統(tǒng)的資源利用率, 但也帶來(lái)了一種危險(xiǎn), 即如果兩個(gè)進(jìn)程都提出請(qǐng)求學(xué)習(xí)參考 使用對(duì)方占有的 I/O 設(shè)備時(shí),就會(huì)出現(xiàn)死鎖。5 以打

38、印機(jī)為例說(shuō)明 SPOOLing技術(shù)的工作原理。 答:當(dāng)用戶進(jìn)程請(qǐng)求打印輸出時(shí), 操作系統(tǒng)接受用戶的打印請(qǐng)求, 但并不真 正把打印機(jī)分配給該用戶進(jìn)程, 而是為進(jìn)程再次在輸出井中分配一空閑塊區(qū), 并 將要打印的數(shù)據(jù)送入其中, 同時(shí)還為用戶進(jìn)程申請(qǐng)一張用戶請(qǐng)求打印表, 將用戶 的打印要求填入其中, 再將該表掛在請(qǐng)求打印隊(duì)列上。 如果還有進(jìn)程要求打印輸 出,系統(tǒng)仍可以接受請(qǐng)求,也可以完成上述操作。6 假設(shè)一個(gè)磁盤(pán)有 200 個(gè)柱面,編號(hào)為 0199,當(dāng)前存取臂的位置是在 143號(hào) 柱面上,并剛剛完成了 125 號(hào)柱面的服務(wù)請(qǐng)求, 如果存在下列請(qǐng)求序列: 86、 147、91、177、94、150、10

39、2、175、130,試問(wèn):為完成上述請(qǐng)求,采用下 列算法時(shí)存取的移動(dòng)順序是什么?移動(dòng)總量是多少?( 1) 先來(lái)先服務(wù)( FCFS)。答:移動(dòng)順序: 143、 86、147、91、177、94、150、 102、175、130; 移動(dòng)總量:(143-86)+(147-86)+(147-91)+(177-91)+(177-94)+ (150-94)+(150-102)+(175-102)+(175-130)=565( 2) 最短尋道時(shí)間優(yōu)先( SSTF)。答:移動(dòng)順序: 143、 147、150、130、102、94、 91、86、175、177 移動(dòng)總量:(147-143)+(150-147)+

40、(150-130)+(130-102)+(102-94) +(94-91)+(91-86)+(175-86)+(177-175)=162( 3) 掃描算法( SCAN)。答:移動(dòng)順序: 143、 147、150、175、177、130、102、94、91、86 移動(dòng)總量:(147-143)+(150-147)+(175-150)+(177-175)+(177-130) +(130-102)+(102-94)+(94-91)+(91-86)=125( 4) 循環(huán)掃描算法( C-SCAN)。答: 移動(dòng)順序是: 143、147、150、175、177、86、91、94、102、130 移動(dòng)總量:(1

41、47-143)+(150-147)+(175-150)+(177-175)+(177-86) +(91-86)+(94-91)+(102-94)+(130-102)=169.7 磁盤(pán)的訪問(wèn)時(shí)間分成三部分:尋道時(shí)間、旋轉(zhuǎn)時(shí)間和數(shù)據(jù)傳輸時(shí)間。而優(yōu)化 磁盤(pán)磁道上的信息分布能減少輸入輸出服務(wù)的總時(shí)間。例如,有一個(gè)文件有 10 個(gè)記錄 A,B,C, ,J存放在磁盤(pán)的某一磁道上, 假定該磁盤(pán)共有 10個(gè)扇區(qū), 每個(gè)扇區(qū)存放一個(gè)記錄,安排如表 7-4 所示?,F(xiàn)在要從這個(gè)磁道上順序地將 AJ這 10 個(gè)記錄讀出,如果磁盤(pán)的旋轉(zhuǎn)速度為 20ms 轉(zhuǎn)一周,處理程序每讀 出一個(gè)記錄要花 4ms 進(jìn)行處理。試問(wèn): (

42、 1) 處理完 10 個(gè)記錄的總時(shí)間為多少?答:由題目所列條件可知,磁盤(pán)的旋轉(zhuǎn)速度為 20ms轉(zhuǎn)一周,每個(gè)此道有 10 個(gè) 記錄,因此讀出 1 個(gè)記錄的時(shí)間為 20ms/10=2ms。對(duì)于表中記錄的初始分布, 讀出并處理記錄 A 需要 20ms+4ms=60ms。 6ms 后讀/寫(xiě)頭急轉(zhuǎn)到了記錄 D出,為了讀出記錄 B必須再轉(zhuǎn) 8個(gè)山區(qū), 急需要 8*2ms=16ms,記錄 B 的讀取時(shí)間為 2ms,處理時(shí)間為 4ms,股 處理記錄 B共花時(shí)間為: 16ms+2ms+4ms=22ms。后續(xù) 8個(gè)記錄的讀取 時(shí)間 與記 錄 B 相 同。所以 處 理 10 記 錄 的總 時(shí)間 是: 9*22ms+

43、6ms=204ms。( 2) 為了優(yōu)化分布縮短處理時(shí)間,如何安排這些記錄?并計(jì)算處理的總時(shí) 間。學(xué)習(xí)參考表 7-4 文件記錄的存放扇區(qū)號(hào)123456789 10記錄號(hào)ABCDEFGHIJ答:為了縮短處理時(shí)間應(yīng)按圖瑣事安排這些記錄。經(jīng)優(yōu)化處理后, 讀出并處理記錄 A后,讀/寫(xiě)頭剛好轉(zhuǎn)到記錄 B的開(kāi)始出, 因此立即可讀取并處理記錄 B,后續(xù)記錄的讀取與處理情況相同。股處理 10 個(gè) 記錄的總時(shí)間為 10* (2ms+4ms)=60ms。8 假設(shè)一個(gè)磁盤(pán)有 100個(gè)柱面,每個(gè)柱面有 10 個(gè)磁道,每個(gè)磁道有 15個(gè)扇區(qū)。 當(dāng)進(jìn)程的要訪問(wèn)磁盤(pán)有 12345 扇區(qū)時(shí),計(jì)算該扇區(qū)在磁盤(pán)的第幾柱面、第幾 磁

44、道、第幾扇區(qū)?答:由題目知,磁盤(pán)每個(gè)柱面有 10 個(gè)磁頭,每個(gè)此道有 15 個(gè) 15 個(gè)山區(qū)。則 每個(gè)柱面的山區(qū)數(shù)位 10*15=150.13524/150=90 余 24,故 13524 所在煮面為 90.24/15=1 余 9,故 13524 再次頭號(hào)為 1,山區(qū)為 9。綜上所述, 13524 山區(qū) 所在的磁盤(pán)地址為:第 90 號(hào)柱面,第 1 號(hào)磁頭,第 9 號(hào)扇區(qū)。9 一個(gè)文件記錄大小為 32B,磁道輸入輸出以磁盤(pán)塊為單位,一個(gè)盤(pán)塊的大小為 512B。當(dāng)用戶進(jìn)程順序讀文件的各個(gè)記錄時(shí),計(jì)算實(shí)際啟動(dòng)磁盤(pán)I/O 占用整個(gè)訪問(wèn)請(qǐng)求時(shí)間的比例。答:盤(pán)塊的大小為 512B,一個(gè)文件記錄大小為 32

45、B,故一個(gè)盤(pán)塊包含的記 錄數(shù)為: 512/32=16。顯然在訪問(wèn) 16 個(gè)記錄中,只需要一次啟動(dòng)磁盤(pán),故實(shí)際啟 動(dòng)磁盤(pán) I/O 占用整個(gè)訪問(wèn)請(qǐng)求的比例為 1/16=6.25% 10如果磁盤(pán)扇區(qū)的大小固定為 512B,每個(gè)磁道有 80個(gè)扇區(qū),一共有 4 個(gè)可用 的盤(pán)面。假設(shè)磁盤(pán)旋轉(zhuǎn)速度是 360rpm。處理機(jī)使用中斷驅(qū)動(dòng)方式從磁盤(pán)讀取數(shù) 據(jù),每字節(jié)產(chǎn)生一次終端。如果處理中斷需要 2.5ms,試問(wèn):(1)處理機(jī)花費(fèi)在處理 I/O 上的時(shí)間占整個(gè)磁盤(pán)訪問(wèn)時(shí)間的百分比是多少 (忽略尋道時(shí)間)?答:(512*2.5)/(1/12+1/480)+(512*2.5)*100%=99.9%(2)采用 DMA方

46、式,每個(gè)扇區(qū)產(chǎn)生一次中斷,處理機(jī)話費(fèi)在處理 I/O 上的 時(shí)間占整個(gè)磁盤(pán)訪問(wèn)時(shí)間的半分比是多少?答: 2.5/(1/12+1/480)+2.5)*100%=96.7%習(xí)題八1 文件系統(tǒng)要解決的問(wèn)題有哪些?答:文件系統(tǒng)的目標(biāo)是提高存儲(chǔ)空間的利用率, 他要解決的主要問(wèn)題有: 完 成文件存儲(chǔ)空間的管理,實(shí)現(xiàn)文件名到物理地址的轉(zhuǎn)換,實(shí)現(xiàn)文件的目錄操作, 提高文件共享能力和保護(hù)措施, 提供友好的用戶接口。 文件系統(tǒng)向用戶提供了有 關(guān)文件的目錄操作的各種功能接口和系統(tǒng)調(diào)用, 如命令接口, 成尋接口和圖形用 戶接口。2 許多操作系統(tǒng)中提供了文件重命名功能, 它能賦予文件一個(gè)新的名字。 若進(jìn) 行文件復(fù)制,并給

47、復(fù)制文件起一個(gè)新的名字,然后刪除舊文件,也能達(dá)到給 文件重命名的目的。是問(wèn)這個(gè)方法在實(shí)現(xiàn)上有何不同?答:給文件重命名,用戶必須提供兩個(gè)參數(shù):舊文件名和新文件名。實(shí)現(xiàn)該學(xué)習(xí)參考 功能是,系統(tǒng)使用舊文件名查找文件目錄, 若找到舊文件名所在的目錄表項(xiàng), 則 將目錄表箱中文件名字段對(duì)應(yīng)的值改為新文件名值。 從視線上看, 文件重命名功 能完成的工作室修改表項(xiàng)中的文件名字段, 出文件名外, 文件的其他屬性都未改 變。3 使用文件系統(tǒng)時(shí),通常要顯式地進(jìn)行 Open()與 Close ()操作。試問(wèn):(1)這樣做的目的是什么? 答:顯式操作完成文件的打開(kāi)功能, 它將訪問(wèn)文件的目錄信息讀入內(nèi)存活 動(dòng)文件表,建立

48、起用戶進(jìn)程與文件的聯(lián)系。顯式操作完成文件關(guān)閉操作, 該操作刪除內(nèi)存中有關(guān)該文件的目錄信息, 切斷用戶與該文件的聯(lián)系。 若 在文件打開(kāi)期間,該文件做過(guò)某些修改,還應(yīng)將其寫(xiě)回磁盤(pán)。(2)能夠取消顯式地 Open()與 Close ()操作么?若能,怎樣做? 答:可以取消顯式的 OPEN與 CLOSE操作。如果取消了顯式地 OPEN與CLOSE 操作,系統(tǒng)在進(jìn)行文件操作之前需要半段文件是否已經(jīng)打開(kāi), 若文件為打 開(kāi),則應(yīng)自動(dòng)完成文件的打開(kāi)功能, 已建立用戶與文件之間的聯(lián)系。 同時(shí), 在系統(tǒng)結(jié)束時(shí),還應(yīng)該自動(dòng)關(guān)閉所有打開(kāi)的文件。(3)取消顯式地 Open()與 Close ()操作有什么不利影響? 答

49、:取消顯示的 OPEN雨 CLOSE操作是的文件低些的系統(tǒng)開(kāi)銷(xiāo)增加。因?yàn)?每次讀寫(xiě)文件之前都需要半段文件是否打開(kāi), 若為打開(kāi), 還要完成打開(kāi)操 作。系統(tǒng)在結(jié)束時(shí)也要做一些額外的工作, 已完成 CLOSE操作所完成的功 能。當(dāng)用戶進(jìn)程已完成對(duì)一個(gè)文件的訪問(wèn)單進(jìn)程本書(shū)呢尚未執(zhí)行完畢時(shí), 因無(wú)顯式地 CLOSE操作而無(wú)法關(guān)閉文件,從而不利于系統(tǒng)資源回收。4 文件目錄的作用是什么?文件目錄項(xiàng)通常包含哪些內(nèi)容? 答:文件目錄是文件名與文件所在存儲(chǔ)位置的一張映射表。文件系統(tǒng)根據(jù)他 實(shí)現(xiàn)用戶安明存取文件。文件目錄由若干目錄項(xiàng)組成,每個(gè)目錄項(xiàng)紀(jì)錄一個(gè) 文件的管理和控制信息。其中包括文件名、文件類(lèi)型、文件在存儲(chǔ)

50、設(shè)備上的 位置、文件的存取控制信息、文件的常見(jiàn)、訪問(wèn)和修改信息等。5 文件物理結(jié)構(gòu)中的鏈接分配方式有幾種實(shí)現(xiàn)方法?各什么特點(diǎn)? 答:文件物理結(jié)構(gòu)中的鏈接分配方式有兩種: 一種是隱式的, 即文件占用物理塊 中除存儲(chǔ)文件信息之外, 還存儲(chǔ)有一個(gè)鏈接指針 (即指向下一個(gè)物理塊的指針) ; 另一種是顯式地,即將鏈接指針從物理塊中提取出來(lái),單獨(dú)建立一個(gè)表,如 MS-DOS操作系統(tǒng)采用這種方式,該表乘坐文件分配表。隱式鏈接結(jié)構(gòu)的文件 只能采用順序存取方法,否則效率太低。 顯式鏈接結(jié)構(gòu)的文件 ,優(yōu)于指針單獨(dú)管理,通常將文件分配表放在貯存中, 無(wú)論采用順序存取還是隨機(jī)存取,其速度都差不多。6 設(shè)某文件 A由

51、100個(gè)物理塊組成, 現(xiàn)分別用連續(xù)文件, 鏈接文件和索引文件 來(lái)構(gòu)造。針對(duì) 3 種不同的結(jié)構(gòu),執(zhí)行以下操作時(shí)各需要多少次從洗盤(pán) I/O ?(1)將一物理塊加到文件頭部。(2)將一物理塊加到文件正中間。(3)將一物理塊加到文件尾部。學(xué)習(xí)參考構(gòu)造數(shù)量連續(xù)文件鏈接文件索引文件將一物理塊加到文件頭部20111將一物理塊加到文件正中間101521將一物理塊加到文件尾部110217 文件系統(tǒng)用混合方式管理存儲(chǔ)文件的物理塊,設(shè)塊的大小為512B,每個(gè)塊號(hào)占 3B,如果不考慮邏輯塊號(hào)在物理塊中所占的位置, 求二級(jí)索引和三級(jí)索 引時(shí)可尋址的文件最大長(zhǎng)度。答:由題目知,塊大小為 512B,每個(gè)塊號(hào)占 3B,一個(gè)物理塊客房 512/3=170 個(gè) 目錄項(xiàng)。一級(jí)索引可尋址的文件最大長(zhǎng)度為: 170*512=85KB;二級(jí)索引可尋址的文件最大長(zhǎng)度為: 170*170*512=14450KB 三級(jí)索引可尋址的文件最大長(zhǎng)度為: 170*170*170*512=2456500KB 8 一個(gè)計(jì)算機(jī)系統(tǒng)中,文件控制塊占 64B,磁盤(pán)塊的大小為

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論