操作系統(tǒng)習(xí)題2(含答案)_第1頁
操作系統(tǒng)習(xí)題2(含答案)_第2頁
操作系統(tǒng)習(xí)題2(含答案)_第3頁
操作系統(tǒng)習(xí)題2(含答案)_第4頁
操作系統(tǒng)習(xí)題2(含答案)_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

本文格式為Word版,下載可任意編輯——操作系統(tǒng)習(xí)題2(含答案)操作系統(tǒng)總復(fù)習(xí)及相關(guān)習(xí)題

第一章引論

名詞解釋1操作系統(tǒng)

操作系統(tǒng)是管理和控制計算機系統(tǒng)內(nèi)各種硬件和軟件資源,有效地組織多道程序運行的系統(tǒng)軟件(或程序集合),是用戶與計算機之間的接口。2管態(tài)

當(dāng)執(zhí)行操作系統(tǒng)程序時,處理機所處的狀態(tài)3目態(tài)

當(dāng)執(zhí)行普通用戶程序時,處理機所處的狀態(tài)。4多道程序設(shè)計在這種設(shè)計技術(shù)下,內(nèi)存中能同時存放多道程序,在管理程序的控制下交替的執(zhí)行。這些作業(yè)共享CPU和系統(tǒng)中的其他資源。5并發(fā)

是指兩個或多個活動在同一給定的時間間隔中進行。它是宏觀上的概念。6并行

是指兩個或多個活動在同一時刻同時執(zhí)行的狀況。7吞吐量

在一段給定的時間內(nèi),計算機所能完成的總工作量。8分時

就是對時間的共享。在分時系統(tǒng)中,分時主要是指若干并發(fā)程序?qū)PU時間的共享。9實時

表示“及時〞或“既時〞。10系統(tǒng)調(diào)用

是用戶在程序中能以“函數(shù)調(diào)用〞形式調(diào)用的、由操作系統(tǒng)提供的子功能的集合。每一個子功能稱作一條系統(tǒng)調(diào)用命令。它是操作系統(tǒng)對外的接口,是用戶級程序取得操作系統(tǒng)服務(wù)的唯一途徑。11特權(quán)指令

指指令系統(tǒng)中這樣一些指令,如啟動設(shè)備指令、設(shè)置時鐘指令、中斷屏蔽指令和清內(nèi)存指令,這些指令只能由操作系統(tǒng)使用。12命令解釋程序

其主要功能是接收用戶輸入的命令,然后予以解釋并且執(zhí)行。13脫機I/O

是指輸入/輸出工作不受主機直接控制,而由衛(wèi)星機專門負(fù)責(zé)完成I/O,主機專門完成快速計算任務(wù),從而二者可以并行操作。14聯(lián)機I/O

是指作業(yè)的輸入、調(diào)入內(nèi)存及結(jié)果輸出都在cpu直接控制下進行。15資源共享

是指計算機系統(tǒng)中的資源被多個進程所功用。例如,多個進程同時占用內(nèi)存,從而對內(nèi)存共享;它們并發(fā)執(zhí)行時對cpu進行共享;各個進程在執(zhí)行過程中提出對文件的讀寫請求,從而對磁盤進行共享等等。簡答題

1什么是操作系統(tǒng)?它的主要功能是什么?

答:操作系統(tǒng)是控制和管理計算機系統(tǒng)內(nèi)各種硬件和軟件資源,有效地組織多道程序運行的系統(tǒng)軟件(或程序集合),是用戶與計算機之間的接口。操作系統(tǒng)的主要功能有5個方面,即存儲管理、處理機管理、設(shè)備管理、文件管理和用戶接口。

2推動操作系統(tǒng)形成和發(fā)展的主要動力是什么?

答:推動操作系統(tǒng)發(fā)展的因素好多,主要可歸結(jié)為兩大方面:硬件技術(shù)更新和應(yīng)用需求擴大伴隨計算機器件的更新?lián)Q代和計算機體系結(jié)構(gòu)的發(fā)展,促使操作系統(tǒng)的性能和結(jié)構(gòu)有了顯著發(fā)展。應(yīng)用需求促進了計算機技術(shù)的發(fā)展,也促進了操作系統(tǒng)的不斷更新升級。

3操作系統(tǒng)的基本特征是什么?

答:操作系統(tǒng)的基本特征是并發(fā)、共享和不確定。并發(fā)性是指兩個或多個活動在同一給定的時間間隔中進行;共享是指計算機系統(tǒng)中的資源被多個進程所共用;不確定性是指系統(tǒng)中各種事件發(fā)生順序的不可預(yù)計性。4多道程序和多重處理有何區(qū)別?

答:多道程序是作業(yè)之間自動調(diào)度執(zhí)行、共享系統(tǒng)資源,并不是真正的同時執(zhí)行多個作業(yè);而多重處理系統(tǒng)配置多個cpu,能真正同時執(zhí)行多道程序。要有效使用多重處理,必需采用多道程序設(shè)計技術(shù),而多道程序設(shè)計原則上不一定要求多重處理系統(tǒng)的支持。

5試說明多道程序設(shè)計和多任務(wù)系統(tǒng)之間的關(guān)系答:多道程序設(shè)計是利用外設(shè)與cpu能夠并行處理的特性,在主存同時存放多個程序,使之在系統(tǒng)中交織地使用cpu,從而提高系統(tǒng)資源的利用率。而多任務(wù)系統(tǒng)主要指多進程交織使用cpu。多道程序隱含了多任務(wù)處理,但多任務(wù)系統(tǒng)中不一定有多道程序。由于一個程序也可以采用多任務(wù)處理機制。

6不同類型的操作系統(tǒng)提供不同的功能。假定有如下的應(yīng)用環(huán)境,請你為它們選擇適合的操作系統(tǒng)。(1)飛機的導(dǎo)航,(2)辦公自動化系統(tǒng),(3)航空訂票系統(tǒng),(4)繁雜的科學(xué)計算,(5)圖書檢索系統(tǒng)答:(1)飛機的導(dǎo)航系統(tǒng),應(yīng)采用硬實時操作系統(tǒng)(2)辦公自動化系統(tǒng),應(yīng)采用分時操作系統(tǒng)(3)航空訂票系統(tǒng),應(yīng)采用軟實時操作系統(tǒng)(4)繁雜的科學(xué)計算,應(yīng)采用批處理系統(tǒng)(5)圖書檢索系統(tǒng),應(yīng)采用軟實時操作系統(tǒng)7什么是批處理系統(tǒng),它有什么特征?

答:批處理系統(tǒng):操作員把用戶提交的作業(yè)分類,把一批作業(yè)編成一個作業(yè)執(zhí)行序列,由專門編制的監(jiān)視程序自動依次處理。其主要特征是:用戶脫機使用計算機、成批處理、多道程序運行。

8什么是分時系統(tǒng),它有什么特征?

答:分時系統(tǒng):把處理機的運行時間分成很短的時間片,按時間片輪轉(zhuǎn)的方式,把處理機分派給各進程使用。其主要特征是:交互性、多用戶同時性、獨立性。

9什么是實時系統(tǒng)?它有什么特征?

答:實時系統(tǒng):在被控對象允許時間范圍內(nèi)做出響應(yīng)。其主要特征是:對實時信息分析處理速度要比進入系統(tǒng)快、要求安全可靠、資源利用率低。

10什么是處理機的核心態(tài)和用戶態(tài)?為什么要設(shè)置這兩種不同的狀態(tài)?

答:當(dāng)執(zhí)行操作系統(tǒng)程序時,處理機處于核心態(tài)。它有較高的特權(quán),可以執(zhí)行所有的指令,包括一般用戶程序中不能使用的特權(quán)指令,從而能對所有寄放器和內(nèi)存進行訪問,啟動i/o操作等。

用戶程序是在用戶態(tài)下執(zhí)行,它的權(quán)限較低,只能執(zhí)行指令集中非特權(quán)指令。(2分)

設(shè)置這兩種不同狀態(tài)的目的是為了保護操作系統(tǒng)程序(特別是其內(nèi)核部分),防止受到用戶程序的損害。

11系統(tǒng)調(diào)用與過程調(diào)用在功能及實現(xiàn)上有什么一致點和不同點?

答:一致點:兩者都由程序代碼構(gòu)成,可直接用高級程序設(shè)計語言(如C,C++和Perl語言)來編制;使用方式一致——以函數(shù)調(diào)用的形式出現(xiàn),調(diào)用時傳送參數(shù)。

不同點:①代碼層次不同,過程調(diào)用不屬于操作系統(tǒng)的一部分,而系統(tǒng)調(diào)用是操作系統(tǒng)的一部分。②運行狀態(tài)不同。過程調(diào)用只能在用戶態(tài)下運行,不能進入核心態(tài),而系統(tǒng)調(diào)用是在核心態(tài)下運行的。③進入方式不同。過程調(diào)用在用戶程序中調(diào)用,并直接在用戶空間內(nèi)執(zhí)行;而系統(tǒng)調(diào)用可以在用戶程序中調(diào)用,但是在用戶程序中執(zhí)行到系統(tǒng)調(diào)用時,會產(chǎn)生異常事件。實現(xiàn)處理機狀態(tài)從用戶態(tài)到核心態(tài)的轉(zhuǎn)變,從而進入操作系統(tǒng)核心空間去執(zhí)行系統(tǒng)調(diào)用的代碼。

12試說明特權(quán)指令和系統(tǒng)調(diào)用之間的區(qū)別與聯(lián)系。答:特權(quán)指令是一類只能在核心態(tài)下執(zhí)行的機器指令。而系統(tǒng)調(diào)用不是機器指令,它往往以函數(shù)調(diào)用的形式出現(xiàn),實現(xiàn)操作系統(tǒng)提供的子功能,它是操作系統(tǒng)與用戶的編程接口。在用戶程序中可以使用系統(tǒng)調(diào)用來獲得操作系統(tǒng)服務(wù),在系統(tǒng)調(diào)用代碼中可以使用特權(quán)指令

其次章進程和線程

名詞解釋1順序性

是指順序程序所規(guī)定的每個動作都在上個動作終止后才開始的特性。

2封閉性

是指只有程序本身的動作才能改變程序的運行環(huán)境。

3可再現(xiàn)性

是指程序的執(zhí)行結(jié)果與程序運行的速度無關(guān)。

4進程

程序在并發(fā)環(huán)境中的執(zhí)行過程。

5互斥

在規(guī)律上本來完全獨立的進程,由于競爭同一個資源而產(chǎn)生的相互制約的關(guān)系。

6同步

是指進程間共同完成一項任務(wù)時直接發(fā)生相互作用的關(guān)系。也就是說,這些具有伙伴關(guān)系的進程在執(zhí)行次序上必需遵循確定的規(guī)律。

7臨界資源

一次僅允許一個進程使用的資源。

8臨界區(qū)

在每個進程中訪問臨界資源的那段程序。

9線程

線程是進程中實施調(diào)度和分派的基本單位。

10管程

管程是一種高級同步機制,一個管程定義一個數(shù)據(jù)結(jié)構(gòu)和能為并發(fā)進程在其上執(zhí)行的一組操作,這組操作能使進程同步和改變管程中的數(shù)據(jù)。

11進程控制塊

進程控制塊是進程存在的唯一標(biāo)識,它保存了系統(tǒng)管理和控制進程所必需的信息,是進程動態(tài)特性的集中表現(xiàn)。

12原語

指操作系統(tǒng)中實現(xiàn)一些具有特定功能的程序段,這些程序段的執(zhí)行過程是不可分割的,即其執(zhí)行過程不允許被中斷。

13就緒態(tài)

進程已經(jīng)獲得了除cpu之外的全部資源,等待系統(tǒng)分派cpu,一旦獲得cpu,進程就可以變?yōu)檫\行態(tài)。

14運行態(tài)

正在cpu上執(zhí)行的進程所處的狀態(tài)。在單cpu系統(tǒng)中,任何時候最多只能有一個進程處于運行狀態(tài)。

15阻塞態(tài)

又稱等待態(tài),指正在運行的進程因等待某個條件發(fā)生而不能運行時所處的狀態(tài)。處于阻塞態(tài)的進程在規(guī)律上是不能運行的,即使cpu空閑,它也不能占用cpu。

16進程通信

是指進程間的信息交換。

17同步機制

同步機構(gòu)是負(fù)責(zé)處理進程之間制約關(guān)系的機制,即操作系統(tǒng)中負(fù)責(zé)解決進程之間協(xié)調(diào)工作的同步關(guān)系(直接制約關(guān)系),以及共享臨界資源的互斥關(guān)系(間接制約關(guān)系)的執(zhí)行機構(gòu)。

簡答題

1在操作系統(tǒng)中為什么要引入進程概念?

答:由于多道程序并發(fā)執(zhí)行時共享系統(tǒng)資源,共同決定這些資源的狀態(tài),因此系統(tǒng)中各程序在執(zhí)行過程中就出現(xiàn)了相互制約的新關(guān)系,程序的執(zhí)行出現(xiàn)“走走停停〞的新狀態(tài)。用程序這個靜態(tài)的概念已不能如實反映程序并發(fā)執(zhí)行過程中的這些特征。為此,人們引入了“進程(Process)〞這一概念來描述程序動態(tài)執(zhí)行過程的性質(zhì)。

進程和程序是兩個完全不同的概念。然而,進程與程序之間存在密切關(guān)系,進程的功能是通過程序的運行得以實現(xiàn)的,進程活動的主體是程序。進程不能脫離開具體程序而獨立存在。

2有人說,一個進程是由偽處理機執(zhí)行的一個程序,這話對嗎?為什么?答:對。

由于偽處理機的概念只有在執(zhí)行時才存在,它表示多個進程在單處理機上并發(fā)執(zhí)行的一個調(diào)度單位。因此,盡管進程是動態(tài)概念,是程序的執(zhí)行過程,但是,在多個進程并行執(zhí)行時,依舊只有一個進程占據(jù)處理機執(zhí)行,而其他并發(fā)進程則處于就緒或等待狀態(tài)。這些并發(fā)進程就相當(dāng)于由偽處理機執(zhí)行的程序。

3試比較進程和程序的區(qū)別答:(1)進程是一個動態(tài)的概念,而程序是一個靜態(tài)的概念,程序是指令的有序集合,無執(zhí)行含義,進程則強調(diào)執(zhí)行的過程。(2)進程具有并行特征(獨立性、異步性),程序則沒有。(3)不同的進程可以包含同一個程序,同一程序在執(zhí)行中也可以產(chǎn)生多個進程。

4進程的基本狀態(tài)有哪些?試描繪進程狀態(tài)轉(zhuǎn)換圖。答:進程至少有三種基本狀態(tài):運行狀態(tài)、就緒狀態(tài)和阻塞狀態(tài)(或等待狀態(tài))。進程狀態(tài)轉(zhuǎn)換如下圖:

運行態(tài)

所需要的資源未被滿足進程調(diào)度

(如等待I/O)時間片到

所需資源得到滿足

(如I/O完成)運行態(tài)運行態(tài)

5并發(fā)進程間的制約有哪兩種?引起制約的原因是什么?答:并發(fā)進程所受的制約有兩種:直接制約和間接制約。直接制約是由并發(fā)進程相互共享對方的私有資源所引起的;間接制約是由競爭共有資源而引起的。

6什么是進程間的互斥?什么是進程間同步?

答:進程間的互斥是指:一組并發(fā)進程中的一個或多個程序段,因共享某一共有資源而導(dǎo)致它們必需以一個不許交織執(zhí)行的單位執(zhí)行,即不允許兩個以上的共享

該資源的并發(fā)進程同時進入臨界區(qū)。進程間的同步是指:異步環(huán)境下的一組并發(fā)進程因直接制約相互發(fā)送消息而進行相互合作、相互等待,是各進程按一定的速度執(zhí)行的過程。

7什么是臨界區(qū)和臨界資源?進程進入臨界區(qū)的調(diào)度原則是什么?答:臨界資源——一次僅允許一個進程使用的資源臨界區(qū)——在每個進程中訪問臨界資源的那段程序一個進程進入臨界區(qū)的調(diào)度原則是:

①假使有若干進程要求進入空閑的臨界區(qū),一次僅允許一個進程進入

②任何時候,處于臨界區(qū)內(nèi)的進程不可多于一個。如已有進程進入自己的臨界區(qū),則其他所有試圖進入臨界區(qū)的進程必需等待

③進入臨界區(qū)的進程要在有限的時間內(nèi)退出,以便讓其他進程能及時進入自己的臨界區(qū)

④假使進程不能進入自己的臨界區(qū),則應(yīng)讓出cpu,避免進程出現(xiàn)“忙等〞現(xiàn)象.

8簡述信號量的定義和作用。P,V操作原語是如何定義的?

答:信號量一般是由兩個成員組成的數(shù)據(jù)結(jié)構(gòu),其中一個成員是整型變量,表示該信號量的值,它與相應(yīng)資源的使用狀況有關(guān);另一個是指向PCB的指針。當(dāng)多個進程都等待同一信號量時,它們就排成一個隊列,由信號量的指針項指出該隊列的隊首。(2分)

信號量尋??梢院唵畏从吵鱿鄳?yīng)資源的使用狀況,它與P、V操作原語一起使用可實現(xiàn)進程的同步和互斥。(1分)

P,V操作原語有如下定義。

P(S)順序執(zhí)行下述兩個動作(1分):⑴信號量的值減1,即S=S-1;⑵假使S>=0,則該進程繼續(xù)執(zhí)行。

假使S0,則該進程繼續(xù)運行;

假使SNbeginV(S1);gotoL;end//同方向過河的人站滿橋墩時,重新申請計數(shù)

R=R+1;IfR==1P(S);//申請過河V(S1);//釋放計數(shù)器的使用權(quán)(3’)占有一個橋墩,并順序過河到對岸;P(S1);R=R-1;

IfR==0V(S);//假使已經(jīng)無同向的人過河,釋放占用權(quán)V(S1);(3’)

end.

7在一個飛機訂票系統(tǒng)中,多個用戶共享一個數(shù)據(jù)庫。各用戶可以同時查詢信息,若有一個用戶要訂票,須更新數(shù)據(jù)庫時,其余所有用戶都不可以訪問數(shù)據(jù)庫。請用P,V操作設(shè)計一個同步算法,實現(xiàn)用戶查詢與訂票功能。要求:當(dāng)一個用戶訂票而需要更新數(shù)據(jù)庫時,不能因不斷有查詢者到來而使其長時間等待。利用信號量機制保證其正常執(zhí)行。

解:這是典型的讀者——寫者問題,查詢信息的用戶是讀者,訂票用戶是寫者,并且要求寫者優(yōu)先。(2’)變量說明:(`2’)

計數(shù)變量

rc——正在運行的查詢者進程數(shù)目,初值為0.信號量

Sw——控制訂票者進程的活動,初值為1.Src——互斥使用rc變量,初值為1.

S——當(dāng)訂票者到達(dá)時封鎖后續(xù)的讀進程,初值為1.讀者進程P(S)P(Src)rc=rc+1

if(rc==1)P(Sw)V(Src)

V(S)(2’)查詢庫當(dāng)中的信息P(Src)

rc=rc-1;

if(rc==0)V(Sw)V(Src)(2’)

寫者進程(`2’)P(S)P(Sw)

更新數(shù)據(jù)庫內(nèi)容V(Sw)V(S)

8某車站售票廳,任何時刻最多可容納20名購票者進入,當(dāng)售票廳中少于20名購票者時,則廳外的購票者可馬上進入,否則需在外面等待。若把一個購票者看作一個進程,請回復(fù)以下問題:

(1)用PV操作管理這些并發(fā)進程時,應(yīng)怎樣定義信號量,寫出信號量的初值以及信號量各種取值的含義。

(2)根據(jù)所定義的信號量,把應(yīng)執(zhí)行的PV操作填入下述空格中,以保證進程能夠正確地并發(fā)執(zhí)行。

COBEGINPROCESSPI(I=1,2,??)begin

進入售票廳;購票;

退出;endCOEND

(3)若欲購票者最多為n個人,寫出信號量可能的變化范圍(最大值和最小值)。

答:(1)定義一信號量S,初始值為20。(1’)意義:(`3’=1’*3)

S>0S的值表示可繼續(xù)進入售票廳的人數(shù)S=0表示售票廳中已有20名顧客(購票者)S進行資源分派。就是說,在資源分派過程中若預(yù)計有發(fā)生死鎖的可能性,則加以避免。這種方法的關(guān)鍵是確定資源分派的安全性。

5安全序列

針對當(dāng)前分派狀態(tài)來說,系統(tǒng)至少能夠依照某種次序為每個進程分派資源(直至最大需求),并且使他們依次成功地運行完畢,這種進程序列{p1,p2,…,pn}就是安全序列。

簡答題

1計算機系統(tǒng)中產(chǎn)生死鎖的根本原因是什么?死鎖發(fā)生的四個基本條件是什么?答:計算機系統(tǒng)中產(chǎn)生死鎖的根本原因是:資源有限且操作不當(dāng)。死鎖發(fā)生的四個基本條件有互斥條件、請求保持條件(占有且等待條件)、非剝奪條件(不可搶占條件)和環(huán)路條件(循環(huán)等待條件)。

2簡述發(fā)生死鎖的四個必要條件?

答:四個必要條件是:互斥條件、占有且等待條件(請求保持條件)、不可搶占條件(非剝奪條件)和循環(huán)等待條件(環(huán)路條件)。

互斥條件——某個資源在一段時間內(nèi)只能由一個進程占有,不能同時被兩個及其以上的進程占有。

占有且等待條件——進程至少已經(jīng)占有一個資源,但又申請新的資源。不可搶占條件——一個進程所占有的資源再用完之前,其他進程不能強行奪走資源,只能由該進程用完之后主動釋放。

循環(huán)等待條件——存在一個進程等待序列{P1,P2,?,Pn},其中,P1等待P2所占有的某個資源,P2等待P3所占有的某個資源,??,而Pn等待P1所占有的某個資源,從而形成一個進程循環(huán)等待。

3什么是死鎖?解決死鎖的方法一般有那幾種?

答:死鎖是指在一個進程集合中的每個進程都在等待僅由該集合中的另一個進程才能引發(fā)的事件而無限期地僵持下去的局面。

解決死鎖問題的一般方法為:死鎖的預(yù)防、死鎖的避免、死鎖的檢測和恢復(fù)。

4死鎖預(yù)防的基本思想是什么?死鎖避免的基本思想是什么?

答:死鎖預(yù)防的基本思想是:要求進程申請資源是遵循某種協(xié)議,從而打破產(chǎn)生思考的四個必要條件中的一個或幾個,保證系統(tǒng)不會進入死鎖狀態(tài).

死鎖避免的基本思想是:對進程所發(fā)出的每一個申請資源命令加以動態(tài)地檢查,并根據(jù)檢查結(jié)果決定是否進行資源分派.就是說,在資源分派過程中若預(yù)計有發(fā)生死鎖的可能性,則加以避免.這種方法的關(guān)鍵是確定資源分派的安全性.

5什么是死鎖的安全序列?何謂系統(tǒng)是安全的?答:進程的安全序列{P1,P2,?,PN}是這樣組成的:若對于每個進程Pi(1度完成一臺物理的cpu轉(zhuǎn)變成多臺虛擬(或規(guī)律)的cpu的工作。

6交換調(diào)度

是基于系統(tǒng)確定的某個策略,將主存中處于等待狀態(tài)或就緒狀態(tài)的某個或某些進程交換到外存交換區(qū)中,以便將外存交換區(qū)上具備運行條件的進程換入主存,準(zhǔn)備執(zhí)行。引入交換調(diào)度的目的是為了解決主存緊張和提高主存的利用效率。

7剝奪式調(diào)度

當(dāng)一個進程正在執(zhí)行時,系統(tǒng)基于某種策略強行將處理機從占有者進程剝奪而分派給另一個進程的調(diào)度。這種調(diào)度方式系統(tǒng)開銷大,但系統(tǒng)能及時響應(yīng)請求。

8非剝奪式調(diào)度

系統(tǒng)一旦把處理機分派給某個進程之后,該進程一直運行下去,直到該進程完成或因等待某個事件發(fā)生時,才將處理機分派給其他進程。這種調(diào)度方式實現(xiàn)簡單,系統(tǒng)開銷小,但系統(tǒng)性能不夠好。

簡答題

1作業(yè)由哪幾部分組成?各有什么功能?

答:作業(yè)由三部分組成:程序、數(shù)據(jù)和作業(yè)說明書。

程序和數(shù)據(jù)完成用戶所要求的業(yè)務(wù)處理工作,作業(yè)說明書則表達(dá)用戶的控制意圖。

2試比較作業(yè)和進程的區(qū)別

答:一個進程是一個程序?qū)δ硞€數(shù)據(jù)集的執(zhí)行過程,是分派資源的單位。作業(yè)是用戶需要計算機完成某項任務(wù),而要求計算機所做工作的集合。一個作業(yè)的完成要經(jīng)過作業(yè)提交、作業(yè)收容、作業(yè)執(zhí)行和作業(yè)完成4個階段。而進程是已提交完畢的程序所執(zhí)行過程的描述,是資源分派的基本單位。其主要區(qū)別關(guān)系如下:(1)作業(yè)是用戶向計算機提交任務(wù)的任務(wù)實體。在用戶向計算機提交作業(yè)之后,系統(tǒng)將它放入外存中的作業(yè)等待隊列中等待執(zhí)行。而進程則是完成用戶任務(wù)的執(zhí)行實體,是向系統(tǒng)申請分派資源的基本單位。任一進程,只要它被創(chuàng)立,總有相應(yīng)的部分存在內(nèi)存中。

(2)一個作業(yè)可由多個進程組成。且必需至少由一個進城組成,但反過來不成立。

(3)作業(yè)的概念主要用在批處理系統(tǒng)中。像UNIX這樣的分時系統(tǒng)中,則沒有作業(yè)概念。則進程的概念則用在幾乎所有的多道程序系統(tǒng)中。

3高級調(diào)度與低級調(diào)度的主要功能是什么?為什么要引入中級調(diào)度?

答:高級調(diào)度的主要功能是根據(jù)一定的算法,從輸入的一批作業(yè)中選出若干作業(yè),分派必要的資源,如內(nèi)存、外設(shè)等,為它建立相應(yīng)的用戶作業(yè)進程和為其服務(wù)的系統(tǒng)進程(如輸入/輸出進程),最終把它們的程序和數(shù)據(jù)調(diào)入內(nèi)存,等待進程調(diào)度程序?qū)ζ鋱?zhí)行調(diào)度,并在作業(yè)完成后做善后處理工作。

低級調(diào)度的主要功能是根據(jù)一定的算法將cpu分派給就緒隊列中的一個進程。

為了使內(nèi)存中同時存放的進程數(shù)目不至于太多,有時需要把某些進程從內(nèi)存移到外存上,以減少多道程序的數(shù)目,為此設(shè)立了中級調(diào)度.

4處理機調(diào)度一般分為哪三級?其中哪一級調(diào)度必不可少?為什么?答:處理機調(diào)度一般可分為高級調(diào)度(作業(yè)調(diào)度)、中級調(diào)度和低級調(diào)度(進程調(diào)度)。其中進程調(diào)度必不可少。

進程只有在得到CPU之后才能真正活動起來,所有就緒進程經(jīng)由進程調(diào)度才能獲得CPU的控制權(quán)。實際上,進程調(diào)度完成一臺物理的CPU轉(zhuǎn)變成多臺虛擬機(或規(guī)律)的CPU的工作,進程調(diào)度的實現(xiàn)策略往往決定了操作系統(tǒng)的類型,其算法優(yōu)劣直接影響整個系統(tǒng)的性能。

5作業(yè)調(diào)度與進程調(diào)度之間有什么區(qū)別?二者間如何協(xié)調(diào)工作?

答:作業(yè)調(diào)度與進程調(diào)度之間的區(qū)別主要是:作業(yè)調(diào)度是宏觀調(diào)度,它所選擇的作業(yè)只是具有獲得處理機的資格,但尚未占有處理機,不能馬上在其上實際運行;而進程調(diào)度是微觀調(diào)度,動態(tài)地把處理機實際地分派給所選擇的進程,使之真正活動起來。另外,進程調(diào)度相當(dāng)頻繁,而作業(yè)調(diào)度執(zhí)行的次數(shù)一般很少。

作業(yè)調(diào)度從外存的后背隊列中選擇一批作業(yè)調(diào)入內(nèi)存,為它們創(chuàng)立進程,這些進程被送入就緒隊列。進程調(diào)度從就緒隊列中選出一個進程來,并把它的狀態(tài)改為運行態(tài),把cpu分派給它。當(dāng)運行進程要等待某一事件時,就讓出cpu,進入相應(yīng)的阻塞隊列,并進行進程調(diào)度。運行進程完成后,由作業(yè)調(diào)度進行善后處理工作。

綜合題

1假定在單CPU條件下要執(zhí)行的作業(yè)如下表所示。表作業(yè)列表

作業(yè)運行時間優(yōu)先級1103211323414552

作業(yè)到來的時間是按作業(yè)編號順序進行的(即后面作業(yè)依次比前一個作業(yè)遲到一個時間單位)。

①用一個執(zhí)行時間圖描述使用非搶占式優(yōu)先級算法時各自執(zhí)行這些作業(yè)的狀況:

②對于該算法,各個作業(yè)的周轉(zhuǎn)時間是多少?平均周轉(zhuǎn)時間是多少?

③對于該算法,各個作業(yè)的帶權(quán)周轉(zhuǎn)時間是多少?平均帶權(quán)周轉(zhuǎn)時間是多少?解:⑴

非搶占式優(yōu)先級

J1J4J3J5J2

01011131819(3’)

⑵和⑶非搶占式優(yōu)先級(`7’=1’*7)JOBtstrteJ101010J21119J32213J43111J54518

T

T

101811814W1185.58.02.8

12.22.06

W

2在一個有兩道作業(yè)的批處理系統(tǒng)中,作業(yè)調(diào)度采用短作業(yè)優(yōu)先級調(diào)度算法,進程調(diào)度采用搶占式優(yōu)先級調(diào)度算法。設(shè)作業(yè)序列如表4-9所示。表4-9作業(yè)列表

作業(yè)名到達(dá)時間預(yù)估計時間(分鐘)優(yōu)先數(shù)A8:004010B8:20305C8:30508D8:502012

其中給出的作業(yè)優(yōu)先數(shù)即為相應(yīng)進程的優(yōu)先數(shù)。其數(shù)值越小,優(yōu)先級越高。要求:

①列出所有作業(yè)進入內(nèi)存的時間及終止時間。②計算平均周轉(zhuǎn)時間和平均帶權(quán)周轉(zhuǎn)時間。解:①

8:008:208:308:509:1010:0010:20

(4’)

②(`6’=1’*6)JOBtstsrteTA8:008:009:1070B8:208:208:5030C8:309:1010:0090D8:508:5010:2090

DCBAT70

W2.2625

3有A、B、C、D、E,共5個待運行作業(yè),各自估計的運行時間為9,6,3,5,x。試問采用哪種運行次序使得平均響應(yīng)時間為最短?(答案依靠于x)解答:

由于短作業(yè)優(yōu)先調(diào)度算法可以使作業(yè)的平均周轉(zhuǎn)時間最短,同樣使作業(yè)的平均響應(yīng)時間為最短。(5’)下面對x的取值進行探討:(`5’=1’*5)

當(dāng)09,作業(yè)的運行順序應(yīng)為C(3),D(5),B(6),A(9),E(x)

4有一個具有如下作業(yè)流的批處理處理系統(tǒng),作業(yè)調(diào)度采用短作業(yè)優(yōu)先,進程調(diào)度采用基于優(yōu)先數(shù)的搶先式調(diào)度算法。下表給出的是作業(yè)序列和相應(yīng)進程的優(yōu)先數(shù),優(yōu)先數(shù)越小優(yōu)先級越高。

作業(yè)名到達(dá)時間估計運行時間/min優(yōu)先數(shù)18:0040428:2030238:3050348:50205(1)列出所有作業(yè)進入內(nèi)存時間及完成時間

(2)計算作業(yè)的平均周轉(zhuǎn)時間和平均帶權(quán)周轉(zhuǎn)時間解答:

(1)作業(yè)進入內(nèi)存時間與終止時間如下所示:(`4’=1’*4)作業(yè)名進入內(nèi)存時間終止時間18:009:1028:208:5039:1010:00

48:5010:20(2)各作業(yè)的周轉(zhuǎn)時間為:(`4’=1’*4)作業(yè)A:9:10–8:00=70min作業(yè)B:8:50–8:20=30min作業(yè)C:10:00–8:30=90min

作業(yè)D:10:20–8:50=90min

作業(yè)的平均周轉(zhuǎn)時間為:(70+30+90+90)/4=70min(1’)

作業(yè)的平均帶權(quán)周轉(zhuǎn)時間為:(70/40+30/30+90/50+90/20)/4=2.26min(1’)第五章存儲管理名詞解釋1物理地址

內(nèi)存中各存儲單元的地址由統(tǒng)一的基地址順序編址,這種地址稱為物理地址。

2規(guī)律地址

用戶程序經(jīng)編譯之后的每個目標(biāo)模塊都以0為基地址順序編址,這種地址稱為規(guī)律地址。

3規(guī)律地址空間

由程序中規(guī)律地址組成的地址范圍叫做規(guī)律地址空間。

4物理地址空間

由內(nèi)存中的一系列存儲單元所限定的地址范圍稱作內(nèi)存空間。

5重定位

把規(guī)律地址轉(zhuǎn)變?yōu)閮?nèi)存物理地址的過程叫做重定位。

6靜態(tài)重定位

在目標(biāo)程序裝入內(nèi)存時所進行的重定位。

7動態(tài)重定位

在程序執(zhí)行期間,每次訪問內(nèi)存之前進行的重定位。

8內(nèi)部碎片

在一個分區(qū)內(nèi)部出現(xiàn)的碎片(即被浪費的空間)稱作內(nèi)部碎片。如固定分區(qū)法會產(chǎn)生內(nèi)部碎片。

9外部碎片

在所有分區(qū)之外新產(chǎn)生的碎片稱作外部碎片,如在動態(tài)分區(qū)法實施過程中出現(xiàn)的越來越多的小空閑塊,由于它們太小,無法裝入一個小進程,因而被浪費掉。

10碎片

在分區(qū)法中,內(nèi)存出現(xiàn)大量容量太小、無法被利用的小分區(qū)稱作“碎片〞。

11緊縮

移動某些已分區(qū)的內(nèi)容,使所有作業(yè)的分區(qū)緊挨在一起,而把空閑區(qū)留在另一端,這種技術(shù)稱為緊縮。

12可重定位地址

當(dāng)含有它的程序被重定位時,將隨之被調(diào)整的一種地址。

13固定分區(qū)法

內(nèi)存中分區(qū)的個數(shù)固定不變,各個分區(qū)的大小也固定不變,但不同分區(qū)的大小可以不同,每個分區(qū)只可裝入一道作業(yè)。

14動態(tài)分區(qū)法

各個分區(qū)是在相應(yīng)作業(yè)要求進入內(nèi)存時才建立的,使其大小恰好適應(yīng)作業(yè)的大

小。

15可再入代碼也稱純代碼,是指那些在其執(zhí)行過程本身不做任何修改的代碼,尋常由指令和常數(shù)組成。

16虛擬存儲器

虛擬存儲器是用戶能作為可編程內(nèi)存對待的虛擬存儲空間,在這種計算機系統(tǒng)中實現(xiàn)了用戶規(guī)律存儲器與物理存儲器的分開,它是操作系統(tǒng)給用戶提供的一個比真實內(nèi)存空間大得多的地址空間。

17抖動

頁面抖動是系統(tǒng)中頻繁進行頁面置換的現(xiàn)象。即假使一個進程沒有一定數(shù)量的內(nèi)存塊,它很快就發(fā)生缺頁。此時,它必需淘汰某頁。由于所有這些頁面都正在使用,所以剛被淘汰出去的頁很快又被訪問,因而要把它重新調(diào)入??墒钦{(diào)入不久又再被淘汰出去,這樣再訪問,再調(diào)入,如此反復(fù),使得整個系統(tǒng)的頁面替換十分頻繁,以致大部分機器時間都用在來回進行的頁面調(diào)度上,只有一小部分時間用于進程的實際運算方面。

18工作集

工作集是一個進程在某一小段時間內(nèi)訪問頁面的集合。利用工作集模型可防止抖動,也可以進行頁面置換。

19程序局部性原理

在相對短的一段時間內(nèi),進程集中在一組子程序或循環(huán)中之行,導(dǎo)致所有的存儲器訪問局限于進程地址空間的一個固定子集。這種現(xiàn)象就叫做程序局部性原理。

20快表

又叫“聯(lián)想存儲器〞。在分頁系統(tǒng)中,由于頁表是存放在主存中的,因此cpu存取一個數(shù)據(jù)時要訪問兩次主存。這樣使計算機的處理速度降低約一倍。為了提高地址變換速度,在地址變換機構(gòu)中增設(shè)一個具有并行查找能力的高速緩沖存儲器,用以存放當(dāng)前訪問的頁表項。這樣的高速緩沖存儲器就是快表。

21交換

交換系統(tǒng)指系統(tǒng)根據(jù)需要把主存中暫時不運行的某個(或某些)作業(yè)部分或全部移到外存。而把外存中的某個(或某些)作業(yè)移到相應(yīng)的主存區(qū),并使其投入運行。

22換頁

指系統(tǒng)根據(jù)某種策略選擇某頁出主存,將某頁調(diào)入主存的過程。

23實存

實存是指計算機配置的物理存儲器,它直接向cpu提供程序和數(shù)據(jù)。

24虛存

虛存是指系統(tǒng)向用戶程序提供的編程空間,其大小由cpu的地址長度決定。

簡答題

1解釋固定分區(qū)法和動態(tài)分區(qū)法的基本原理。

答:固定分區(qū)法——內(nèi)存中分區(qū)的個數(shù)固定不變,各個分區(qū)的大小也固定不變,但不同分區(qū)的大小可以不同。每個分區(qū)只可裝入一道作業(yè)。動態(tài)分區(qū)法——各個分區(qū)是在相應(yīng)作業(yè)要進入內(nèi)存時才建立的,使其大小恰好適應(yīng)作業(yè)的大小。

2說明內(nèi)部碎片和外部碎片的不同之處

答:內(nèi)存中出現(xiàn)的其容量太小、無法被利用的小分區(qū)稱作碎片。內(nèi)部碎片和外部碎片出現(xiàn)的位置不同。內(nèi)部碎片出現(xiàn)在一個分區(qū)的內(nèi)部(即被浪費的空間),如固定分區(qū)法會產(chǎn)生內(nèi)部碎片。外部碎片出現(xiàn)在所有分區(qū)之外,是新增的小分區(qū),如在動態(tài)分區(qū)法實施過程中會出現(xiàn)外部碎片。

3動態(tài)重定位分區(qū)管理方式中如何實現(xiàn)虛-實地址映射?

答:作業(yè)裝入內(nèi)存時,是將該用戶的程序和數(shù)據(jù)原封不動地裝入到內(nèi)存中。當(dāng)調(diào)度該進程在cpu上執(zhí)行時,操作系統(tǒng)就自動將該進程在內(nèi)存的起始地址裝入基址寄放器,將進程的大小裝入限長寄放器。當(dāng)執(zhí)行指令時,假使地址合法,則將相對地址與基址寄放器中的地址相加,所得結(jié)果就是真剛要訪問的內(nèi)存地址;假使地址越界,則發(fā)出相應(yīng)中斷,進行處理。

4什么是虛擬存儲器?它有哪些基本特征?

答:虛擬存儲器是用戶能作為可編址內(nèi)存對待的虛擬存儲空間,在這種計算機系統(tǒng)中實現(xiàn)了用戶規(guī)律存儲器與物理存儲器的分開,它是操作系統(tǒng)給用戶提供的一個比真實內(nèi)存空間大得多的地址空間。

虛擬存儲器的基本特征是:虛擬擴展——不是物理上,而是規(guī)律上擴展了內(nèi)存容量;部分裝入——每個作業(yè)不是全部一次性地裝入內(nèi)存,而是只裝入一部分;離散分派——不必占用連續(xù)的內(nèi)存空間,而是〞見縫插針〞;屢屢對換——所需的全部程序和數(shù)據(jù)要分成屢屢調(diào)入內(nèi)存。

5引入虛擬存儲器后,除了獲得主存“擴展〞的好處,還有什么好處?

答:引入虛存后,程序的地址空間都是虛地址的集合,只有在程序運行中通過硬件地址轉(zhuǎn)換機構(gòu)和操作系統(tǒng)的相應(yīng)軟件,才能將虛地址變換成主存的實地址,這將為主存的分派帶來更大的靈活性。另外,虛、實地址分開,用戶程序不能干擾實地址的生成,從而實現(xiàn)了存儲器的保護。

6什么是分頁?什么是分段?二者有何主要區(qū)別?答:分頁是由系統(tǒng)將一個進程的規(guī)律地址空間劃分成若干大小相等的部分,每一部分稱做一個頁面。

分段是用戶根據(jù)作業(yè)的規(guī)律關(guān)系進行自然劃分,每個分段是作業(yè)中相對獨立

的一部分。

分段和分頁都是非連續(xù)的存儲管理方法,分頁和分段的主要區(qū)別有:

①頁是信息的物理單位,段是信息的規(guī)律單位。

②頁面的大小由系統(tǒng)確定,并且各頁大小都一致;各段長度因段而已,由用戶決定。

③分頁的作業(yè)地址空間是一維的,分段的作業(yè)的地址空間是二維的。④分頁的活動對用戶是不可見的,而分段是用戶可見的活動。

7在分頁系統(tǒng)中頁面大小由誰決定?頁表的作用是什么?如何將規(guī)律地址轉(zhuǎn)換成物理地址?

答:在分頁系統(tǒng)中頁面大小由硬件決定。

頁表的作用是:實現(xiàn)從頁號到物理塊號的地址映射。

規(guī)律地址轉(zhuǎn)換成物理地址的過程是:用頁號P去檢索頁表,從頁表中得到該頁的物理塊號,把它裝入物理地址寄放器中。同時,將頁內(nèi)地址d直接送入物理地址寄放器的塊內(nèi)地址字段中。這樣,物理地址寄放器中的內(nèi)容就是由二者拼接成的實際訪問內(nèi)存地址,從而完成了從規(guī)律地址到物理地址的轉(zhuǎn)換。

8什么是belady現(xiàn)象?

答:belady現(xiàn)象是指在使用FIFO算法進行內(nèi)存頁面置換時,在未給進程或作業(yè)分派足它所要求的全部頁面的狀況下,有時出現(xiàn)的分派的頁面數(shù)增多,缺頁次數(shù)發(fā)而增加的奇怪現(xiàn)象。

9請求分頁技術(shù)的基本思想是什么?它與簡單分頁技術(shù)之間有何根本區(qū)別?答:請求分頁技術(shù)的基本思想是:當(dāng)一個進程的部分頁面在內(nèi)存時就可調(diào)度它運行;在運行過程中若用到的頁面尚未在內(nèi)存,則把它們動態(tài)換入內(nèi)存。這樣,就減少了對換時間和所需內(nèi)存數(shù)量,允許增加程序的道數(shù)。

請求分頁技術(shù)是在簡單分頁技術(shù)基礎(chǔ)上發(fā)展起來的,兩者根本區(qū)別是:請求分頁提供虛擬存儲器,而簡單分頁系統(tǒng)并未提供虛擬存儲器。

10為什么分段技術(shù)比分頁技術(shù)更簡單實現(xiàn)程序或數(shù)據(jù)的共享和保護?

答:每一段在規(guī)律上是相對完整的一組信息,分段技術(shù)中的共享是在段一級出現(xiàn)的。這樣,任何共享的信息就可以單獨成為一段。同樣,段中所有內(nèi)容可以用一致的方式進行使用,從而規(guī)定一致的保護權(quán)限。然而,頁是信息的物理單位,在一頁中可能存在規(guī)律上相互獨立的兩組或多組信息,各有不同的使用方式和存取權(quán)限,因而,對分頁難以進行共享和保護。

11何謂工作集?它有什么作用?

答:工作集是一個進程在某一小段時間內(nèi)訪問頁面的集合。利用工作集模型可防止抖動,也可以進行頁面置換。

12什么是頁面抖動?系統(tǒng)怎樣檢測是否出現(xiàn)抖動?一旦檢測到抖動?系統(tǒng)如何消除它?

答:頁面抖動是系統(tǒng)頻繁進行頁面置換的現(xiàn)象。整個系統(tǒng)的頁面替換十分頻繁,

以致大部分機器時間都用在來回進行的頁面調(diào)度上,只有一小部分時間用于進程的實際運算方面。

操作系統(tǒng)監(jiān)視每個進程的工作集,并給它分派工作集所需的內(nèi)存塊。若有足夠多的額外塊,就可以裝入并啟動另外的進程。假使工作集增大了,超出可用塊的總數(shù),即系統(tǒng)中全部進程對內(nèi)存塊的總請求量大于可用內(nèi)存塊的總量,將出現(xiàn)抖動,由于某些進程得不到足夠的內(nèi)存塊。

一旦檢測到抖動,操作系統(tǒng)要選擇一個進程讓它掛起,把它的頁面寫出去,把它占用的內(nèi)存塊分給別的進程。被掛起的進程將在以后適當(dāng)時機重新開始執(zhí)行。

綜合題

1考慮下面頁面走向:1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6當(dāng)內(nèi)存塊數(shù)量分別為3時,試問LRU,FIFO,OPT三種置換算法的缺頁次數(shù)各是多少?(注意,所有內(nèi)存最初都是空的,凡第1次用到的頁面都產(chǎn)生一次缺頁)答:LRU

12342156212376321236111444555111777222222222111222226661116333336666333333333×××××××××××××××(2’)FIFO

12342156212376321236111444466663333222262222111222277771111333355511116666633××××××××××××××××(2’)OPT

12342156212376321236111111111113333333332222222222277722222344456666666661116×××××××××××(2’)

內(nèi)存塊數(shù)置換算法FIFOLRUOPT3161511(3’)

2考慮下面存儲訪問序列,該程序大小為460字:10,11,104,170,73,309,185,245,246,434,458,364設(shè)頁面大小是100字,請給出該訪問序列的頁

面走向。又設(shè)該程序基本可用內(nèi)存是200字,采用FIFO置換算法,求出缺頁率。假使采用LRU算法,缺頁率是多少?假使采用最優(yōu)淘汰算法,其缺頁率又是多少?解:

該序列的頁面走向為:0、1、0、3、1、2、4、3。(1’)FIFO01031243000333421111223××××××(2’)

LRU01031243000011441133223×××××××(2’)

OPT01031243000333331111244×××××(2’)

算法FIFOLRUOPT缺頁次數(shù)675缺頁率6/12=0.57/12=0.5835/12=0.417(3’)

3設(shè)某頁系統(tǒng)中,頁幀大小為100字。一個程序大小為1200字,可能的訪問序列如下:

10,205,110,735,603,50,815,314,432,320,225,80,130,270系統(tǒng)采用LRU算法。當(dāng)為其分派4個主存塊時,給出該作業(yè)駐留的各個頁的變化狀況及頁故障數(shù)。答:

首先將規(guī)律地址變換成頁號。這樣10,205,110,735,603,50,815,314,432,320,225,80,130,720,通過除以頁的大小100,頁號分別為0,2,1,7,6,0,8,3,4,2,0,1,2。(3’)

系統(tǒng)為運行進程分派4個主存塊,采用LRU算法,因此可以列表給出進程的缺頁狀況:

0217608343201202176083432012021760834320102176088432002176008433

FFFFFFFFFSFFFS(5’)

6什么是文件控制塊?它與文件有何關(guān)系?

答:文件控制塊——用于描述和控制文件的數(shù)據(jù)結(jié)構(gòu),其中包括文件名、文件類型、位置、大小等信息。

文件控制塊與文件一一對應(yīng),即在文件系統(tǒng)內(nèi)部,給每個文件唯一地設(shè)置一個文件控制塊,核心利用這種結(jié)構(gòu)對文件實施各種管理。

7文件系統(tǒng)中的目錄結(jié)構(gòu)有哪幾種基本形式?各有何優(yōu)缺點?

答:文件系統(tǒng)中的目錄結(jié)構(gòu)有:單級目錄結(jié)構(gòu)、二級目錄結(jié)構(gòu)、樹形目錄結(jié)構(gòu)和非循環(huán)圖目錄結(jié)構(gòu),UNIX采用非循環(huán)圖目錄結(jié)構(gòu),即帶鏈接的樹形目錄結(jié)構(gòu)。文件系統(tǒng)目錄結(jié)構(gòu)優(yōu)點缺點

單級目錄結(jié)構(gòu)簡單、能實現(xiàn)按名存取查找速度慢;不允許重名;不便于共享

二級目錄結(jié)構(gòu)允許重名;提高了檢索目錄的速度仍不利于文件共享

樹形目錄結(jié)構(gòu)文件的層次和隸屬關(guān)系明了,便于只能在用戶級對文件進行臨時共享

實現(xiàn)不同級別的存取保護和文件系統(tǒng)的動態(tài)裝卸

非循環(huán)圖目錄結(jié)構(gòu)具有樹形結(jié)構(gòu)的優(yōu)點,而且實現(xiàn)對管理較繁雜

文件的永久共享

8常用的磁盤空閑區(qū)管理技術(shù)有哪幾種?試簡要說明各自的實現(xiàn)思想。

答:常用的磁盤空閑區(qū)管理技術(shù)有:空閑空間表達(dá)法、空閑塊鏈接法、位示圖法和空閑塊成組鏈接法。

空閑空間表法——所有連續(xù)的空閑盤塊在表中占據(jù)一項,其中標(biāo)出第一個空閑塊號和該項中所包含的空閑塊個數(shù),以及相應(yīng)的物理塊號。利用該表可進行盤塊的分派和文件的刪除時盤塊的回收

空閑塊鏈接法——所有的空閑盤塊鏈在一個隊列中,用一個指針(空閑區(qū)頭)指向第一個空閑塊,而各個空閑塊中都含有下一個空閑塊的塊號,最終一塊的指針項計為NULL,表示鏈尾。分派和釋放盤塊都在鏈?zhǔn)走M行

位示圖法——利用一串二進制的值來反映磁盤空間的分派狀況,每個盤塊都對應(yīng)一位。假使盤塊是空閑的,對應(yīng)位是0;如盤塊已分出去,則對應(yīng)位是1??臻e塊成組鏈法——把所有空閑盤塊按固定數(shù)量分組,組與組之間形成鏈接關(guān)系,最終一組的塊號(可能不滿一組)尋常放在內(nèi)存的一個專用棧結(jié)構(gòu)中。這樣,對盤塊的分派和釋放是在棧中進行(或構(gòu)成新的一組).

9什么是文件共享?文件鏈接如何實現(xiàn)文件共享?

答:文件的共享是指系統(tǒng)允大量個用戶(進程)共同使用某個或某些文件。文件鏈接是給文件起別名,即將該文件的目錄項登記在鏈接目錄中。這樣,訪問該文件的路徑就不只一條。不同的用戶(進程)就可以利用各自的路徑來共享同一文件。

10什么是文件后備?數(shù)據(jù)轉(zhuǎn)儲方法有哪兩種?按時間劃分,后備分哪幾種?答:文件的后備就是把硬盤上的文件轉(zhuǎn)儲到其他外部介質(zhì)上。

將磁盤上的數(shù)據(jù)轉(zhuǎn)儲到磁帶上有兩種方式:物理轉(zhuǎn)儲和規(guī)律轉(zhuǎn)儲。物理轉(zhuǎn)儲是從磁盤上第0塊開始,把所有的盤塊依照順序?qū)懙酱艓?,?dāng)復(fù)制完最終一塊時,轉(zhuǎn)儲終止。規(guī)律轉(zhuǎn)儲方式是從一個或多個指定的目錄開始,遞歸地轉(zhuǎn)儲自某個日期以來被修改過的所有文件和目錄。

尋常有以下三種備份策略:完全備份、增量備份和更新備份。

完全備份也稱簡單備份,即每隔一定時間就對系統(tǒng)作一次全面的備份;增量備份使每隔一段較短的時間進行一次備份,但僅僅備份在這段時間間隔內(nèi)修改過的數(shù)據(jù);更新備份是備份從上次進行完全備份后至今更改的全部數(shù)據(jù)文件。

11文件系統(tǒng)的一般格式是怎樣的?其中引導(dǎo)塊和超級塊的作用各是什么?答:文件系統(tǒng)的一般由引導(dǎo)塊、超級塊、空閑空間管理、I節(jié)點、根目錄、文件數(shù)據(jù)區(qū)

引導(dǎo)塊的作用是引導(dǎo)操作系統(tǒng)。它包括一個小程序,用于讀入該分區(qū)上相應(yīng)操作系統(tǒng)的引導(dǎo)部分,從而把該分區(qū)中的操作系統(tǒng)裝入內(nèi)存。超級塊的作用是對整個文件系統(tǒng)進行控制和管理。它包含有關(guān)文件系統(tǒng)的全部關(guān)鍵參數(shù)。當(dāng)計算機加電進行引導(dǎo)或第一次遇到該文件系統(tǒng)時,就把超級塊中的信息讀入內(nèi)存。超級塊中包含標(biāo)識文件系統(tǒng)類型的幻數(shù)、文件系統(tǒng)中的盤塊數(shù)量、修改標(biāo)記及其他關(guān)鍵管理方面的信息。第七章設(shè)備管理名詞解釋1輸入井

是指為使設(shè)備與cpu速度相匹配,系統(tǒng)在磁盤上設(shè)置的多個緩沖區(qū),以實現(xiàn)設(shè)備與cpu之間的數(shù)據(jù)交換。輸入井主要用來存放由輸入設(shè)備輸入的信息。

2緩沖池

又叫公共緩沖區(qū),也是系統(tǒng)在磁盤上設(shè)置的多個緩沖區(qū)。它既可以用于輸入,也可以用于輸出,較好地戰(zhàn)勝了專用緩沖區(qū)的缺點。一方面提高了緩沖區(qū)的利用率,另一方面也提高了設(shè)備與cpu的并行操作程度。

3虛擬設(shè)備

它是利用共享設(shè)備上的一部分空間來模擬獨占設(shè)備的一種I/O技術(shù)。

4存儲設(shè)備

它們是指計算機用來存儲信息的設(shè)備,如此盤(硬盤和軟盤)、磁帶等。

5輸入輸出設(shè)備

是計算機用來接收來自外部世界信息的設(shè)備,或者將計算機加工處理好的信息送向外部世界的設(shè)備。例如鍵盤、打印機、卡片輸入機。

6設(shè)備的無關(guān)性

也稱設(shè)備獨立性,就是說,用戶程序應(yīng)與實際使用的物理設(shè)備無關(guān),由操作系統(tǒng)來考慮因?qū)嶋H設(shè)備不同而需要使用不同的設(shè)備驅(qū)動程序等問題。

7通道

為使CPU擺脫繁忙的I/O事務(wù),現(xiàn)代大、中型計算機都設(shè)置了專門處理I/O操作的機構(gòu),這就是通道。

8RAID

稱作廉價磁盤冗余陣列,即利用一臺磁盤陣列控制器來統(tǒng)一管理和控制一組磁盤驅(qū)動器(幾臺到幾十臺),組成一個高可靠性、快速大容量的磁盤系統(tǒng)。采用該技術(shù)可以獲取更高的可靠性和更快的數(shù)據(jù)傳輸速率,而不是價格上更低廉。

簡答題

1為什么要引入緩沖技術(shù)?設(shè)置緩沖區(qū)的原則是什么?

答:引入緩沖區(qū)的主要目的是:⑴緩和CPU與I/O設(shè)備間速度不匹配的矛盾。⑵提高它們之間的并行性。⑶減少對CPU的中斷次數(shù),放寬CPU對中斷響應(yīng)時間的要求。

設(shè)置緩沖區(qū)的原則是:假使數(shù)據(jù)到達(dá)率與離去率相差很大,則可采用單緩沖方式;假使信息的輸入與輸出速率一致(或者相差不大)時,則可用雙緩沖區(qū);對于陣發(fā)性的輸入/輸出,可以設(shè)立多個緩沖區(qū)。

2操作系統(tǒng)中設(shè)備管理的功能是什么?答:對各種外部設(shè)備進行管理是操作系統(tǒng)的一個重要任務(wù),也是其基本組成部分。操作系統(tǒng)中設(shè)備管理的功能是:①監(jiān)視設(shè)備狀態(tài);②進行設(shè)備分派;③完成I/O操作;

④緩沖管理與地址轉(zhuǎn)換。

3什么是緩沖?為什么要引入緩沖?答:緩沖即是使用專用硬件緩沖器或在內(nèi)存中劃出一個區(qū)域用來暫時存放輸入輸出數(shù)據(jù)的器件。

引入緩沖是為了匹配外設(shè)和cpu之間的處理速度,減少中斷次數(shù)和cpu的中斷處理時間,同時解決dma或通道方式時的數(shù)據(jù)傳輸瓶頸問題。

4I/O設(shè)備尋??煞譃槟膬纱箢悾扛髯詡鬏?shù)男畔挝挥惺裁刺攸c?答:I/O設(shè)備尋常可分為字符設(shè)備和塊設(shè)備。字符設(shè)備尋常以獨占方式分派,信息的傳輸單位是字符或字節(jié)。塊設(shè)備尋常采用共享方式分派,信息的傳輸是以塊為單位進行傳輸?shù)摹?/p>

5什么是I/O控制?,I/O操作的四種控制方式是什么?

答:I/O控制是指從用戶進程的輸入/輸出請求開始,給用戶進程分派設(shè)備和啟動有關(guān)設(shè)備進行I/O操作,并在I/O操作完成之后響應(yīng)中斷,直至善后處理為止的整個系統(tǒng)控制過程。

I/O操作的四種控制方式分別是:程序直接控制方式、中斷I/O控制方式、DMA控制方式、I/O通道控制方式。

6I/O控制可用那幾種方式實現(xiàn),各有什么優(yōu)缺點?

答:I/O控制過程可用三種方式實現(xiàn):作為請求I/O操作的進程實現(xiàn);作為當(dāng)前進程的一部分實現(xiàn);由專門的系統(tǒng)進程——I/O進程完成。第一種方式請求對應(yīng)I/O操作的進程能很快占據(jù)處理機,但要求系統(tǒng)和I/O操作的進程具有良好的實時性。其次種方式不要求系統(tǒng)具有高的實時性,但I/O控制過程要由當(dāng)前進程負(fù)責(zé)。第三種方式增加了一個額外的進程開銷,但用戶不用關(guān)心I/O控制過程。

7設(shè)備分派技術(shù)主要有哪些?常用的設(shè)備分派算法是什么?答:設(shè)備分派技術(shù)主要有:獨占分派、共享分派和虛擬分派。

常用的設(shè)備分派算法是:先來先服務(wù)算法和優(yōu)先級高的優(yōu)先服務(wù)算法。

8實現(xiàn)SPOOLing系統(tǒng)的硬件前提是什么?SPOOLing系統(tǒng)的主要功能是什么?答:實現(xiàn)SPOOLING系統(tǒng)的首先要有硬件支持:要提供大容量的磁盤,要有中斷和通道裝置,以便使外圍設(shè)備與中央處理器能夠并行工作。它是為了滿足多道程序或多進程隊獨占設(shè)備的共享使用而引入的,其主要功能即是:將獨占設(shè)備改造為共享設(shè)備,實現(xiàn)虛擬設(shè)備。

9簡述處理I/O請求的主要步驟。

答:處理I/O請求是一個系統(tǒng)獲取用戶I/O請求轉(zhuǎn)發(fā)給相應(yīng)外設(shè)完成的過程,其具體的處理步驟如下:①用戶進程發(fā)出I/O操作;

②系統(tǒng)接受這個I/O請求,轉(zhuǎn)去執(zhí)行操作系統(tǒng)的核心程序;③設(shè)備驅(qū)動程序具體完成I/O操作;

④I/O完成后,系統(tǒng)進行I/O中斷處理,然后用戶進程重新開始執(zhí)行

10設(shè)備驅(qū)動程序主要執(zhí)行什么功能?答:設(shè)備驅(qū)動進程嚴(yán)格執(zhí)行設(shè)備驅(qū)動程序中規(guī)定的各種功能,即接受用戶的I/O請求;取出請求隊列中隊首的請求,將相應(yīng)的設(shè)備分派給它;啟動該設(shè)備工作,完成指定的I/O操作;處理來自設(shè)備的中斷。

11I/O軟件的設(shè)計目標(biāo)?它是如何劃分層次的?各層的功能是什么?答:I/O軟件的設(shè)計目標(biāo):

①與設(shè)備無關(guān)

②對文件和設(shè)備應(yīng)統(tǒng)一命名③層次結(jié)構(gòu)④效率高

I/O軟件可分為如下4個層次:中斷處理程序、設(shè)備驅(qū)動程序、與設(shè)備無關(guān)的操作系統(tǒng)軟件和用戶級軟件。各層功能為:

①中斷處理程序——分析中斷原因,并依據(jù)中斷原因調(diào)用相應(yīng)的處理程序②設(shè)備驅(qū)動程序——它接受來自上層、與設(shè)備無關(guān)軟件的抽象讀寫請求,并將該I/O請求排在請求隊列的隊尾,還要檢查I/O請求的合法性;取出請求隊列中對首請求,將相應(yīng)設(shè)備分派給它;向該設(shè)備控制器發(fā)送命令,啟動該

設(shè)備工作,完成指定的I/O操作;處理來自設(shè)備的中斷

③與設(shè)備無關(guān)的操作系統(tǒng)軟件——其基本功能是執(zhí)行所有驅(qū)動器共同的I/O功能和對用戶級軟件提供統(tǒng)一軟件

④用戶級軟件——多數(shù)I/O軟件都在操作系統(tǒng)中,用戶空間中也有一小部分。尋常,它們以庫函數(shù)形式出現(xiàn),在用戶程序中可以調(diào)用它們

12什么叫尋道?訪問磁盤時間由哪幾部分組成?其中哪一個是磁盤調(diào)度的主要目標(biāo)?為什么?

答:把磁頭從當(dāng)前位置移到相應(yīng)的磁道上或柱面上,這個操作過程叫做尋道。

訪問磁盤一般要有三部分時間:尋道時間、旋轉(zhuǎn)延遲時間和傳輸時間。尋道時間是磁盤調(diào)度的主要目標(biāo)。傳輸時間是硬件設(shè)計時就固定的,尋道時間和旋轉(zhuǎn)延遲時間與信息在磁盤上的位置有關(guān)。由于磁頭臂是機械移動,所以對大多數(shù)磁盤來說,尋道時間遠(yuǎn)大于旋轉(zhuǎn)延遲時間與傳輸時間之和,它是影響磁盤調(diào)度的主要因素。

13什么是RAID?采用RAID技術(shù)的優(yōu)點是什么?

答:RAID稱作廉價磁盤冗余陣列,即利用一臺磁盤陣列控制起來統(tǒng)一管理和控制一組磁盤驅(qū)動器(幾臺到幾十臺),組成一個高可靠性、快速大容量的磁盤系統(tǒng)。

采用RAID技術(shù)可以獲取更高的可靠性和更快的數(shù)據(jù)傳輸速率,而不是價格上更低廉。

綜合題

1假定一個硬盤有100個柱面,每個柱面有10個磁道,每個磁道有15個扇區(qū)。當(dāng)進程要訪問磁盤的12345扇區(qū)時,計算磁盤的三維物理扇區(qū)號。解:

每個柱面的扇區(qū)數(shù)為:10*15=150(3’)

12345/150=82余45,故12345扇區(qū)所在的柱面為82(3’)再將45/15,其商為3,余數(shù)為0,(3’)

故求得12345扇區(qū)所在的磁盤地址為:82柱面,3磁道,0扇區(qū)。(1’)

2假設(shè)移動頭磁盤有200個磁道(0-199號)。目前正在處理143號磁道上的請求,而剛剛處理終止的請求是125號,假使下面給出的順序是按FIFO排成的等待服務(wù)隊列順序:86,147,91,177,94,150,102,75,130那么,以下各種磁盤調(diào)度算法來滿足這些請求所需的總磁頭移動量是多少?91,177,94,150,175,1301)FCFS,2)SSTF解:

1)FCFS:125?143—86—147—91—177—94—150—102—75—130(2’)滿足這些請求所需要的總磁頭移動量為

(143-86)+(147-86)+(147-91)+(177-91)+(177-94)+(150-94)+(150-102)+(102-75)+(130-75)

=57+61+65+86+83+56+48+27+55=529(3’)

2)SSTF:125?143—147—150—130—102—94—91—86—75—177(2’)滿足這些請求所需的總磁頭移動量為

(150-143)+(150-75)+(177-75)=7+75+102=182(3’)

3假設(shè)移動頭磁盤有200個磁道(0-199號)。目前正在處理14

溫馨提示

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

最新文檔

評論

0/150

提交評論