操作系統(tǒng)期末復(fù)習(xí)資料——知識點(簡答)集錦_第1頁
操作系統(tǒng)期末復(fù)習(xí)資料——知識點(簡答)集錦_第2頁
操作系統(tǒng)期末復(fù)習(xí)資料——知識點(簡答)集錦_第3頁
操作系統(tǒng)期末復(fù)習(xí)資料——知識點(簡答)集錦_第4頁
操作系統(tǒng)期末復(fù)習(xí)資料——知識點(簡答)集錦_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上 第二章 操作系統(tǒng)概述1. 解釋單體內(nèi)核和微內(nèi)核的區(qū)別。單體內(nèi)核是一個提供操作系統(tǒng)應(yīng)該提供的功能的大內(nèi)核,包括調(diào)度、文件系統(tǒng)、網(wǎng)絡(luò)、設(shè)備驅(qū)動程序、存儲管理等。內(nèi)核的所有功能成分都能夠訪問它的內(nèi)部數(shù)據(jù)結(jié)構(gòu)和程序。典型情況下,這個大內(nèi)核是作為一個進程實現(xiàn)的,所有元素都共享相同的地址空間。微內(nèi)核是一個小的有特權(quán)的操作系統(tǒng)內(nèi)核,只提供包括進程調(diào)度、內(nèi)存管理、和進程間通信等基本功能,要依靠其他進程擔(dān)當(dāng)起和操作系統(tǒng)內(nèi)核聯(lián)系作用。 2. 假設(shè)我們有一臺多道程序的計算機,每個作業(yè)有相同的特征。在一個計算周期T中,一個作業(yè)有一半時間花費在I/O上,另一半用于處理器的活動。每個作業(yè)一共運

2、行N個周期。假設(shè)使用簡單的循環(huán)法調(diào)度,并且I/O操作可以與處理器操作重疊。定義以下量:·時間周期=完成任務(wù)的實際時間·吞吐量=每個時間周期T內(nèi)平均完成的作業(yè)數(shù)目·處理器使用率=處理器活躍(不是處于等待)的時間的百分比 當(dāng)周期T分別按下列方式分布時,對1個、2個和4個同時發(fā)生的作業(yè),請計算這些量:a. 前一般用于I/O,后一半用于處理器。b. 前四分之一和后四分之一用于I/O,中間部分用于處理器。答:(a)和(b)的答案相同。盡管處理器活動不能重疊,但I/O操作能。 一個作業(yè) 時間周期=NT 處理器利用率=50 兩個作業(yè) 時間周期=NT 處理器利用率=100 四個作

3、業(yè) 時間周期=(2N-1)NT 處理器利用率=1002.1操作系統(tǒng)設(shè)計的三個目標(biāo)是什么?方便:操作系統(tǒng)使計算機更易于使用。有效:操作系統(tǒng)允許以更有效的方式使用計算機系統(tǒng)資源。擴展的能力:在構(gòu)造操作系統(tǒng)時,應(yīng)該允許在不妨礙服務(wù)的前提下有效地開發(fā)、測試和引進新的系統(tǒng)功能。2.2什么是操作系統(tǒng)的內(nèi)核?內(nèi)核是操作系統(tǒng)最常使用的部分,它存在于主存中并在特權(quán)模式下運行,響應(yīng)進程調(diào)度和設(shè)備中斷。2.3什么是多道程序設(shè)計? 多道程序設(shè)計是一種處理操作,它在兩個或多個程序間交錯處理每個進程。2.4什么是進程?進程是一個正在執(zhí)行的程序,它被操作系統(tǒng)控制和選擇。2.7解釋實地址和虛地址的區(qū)別。虛地址指的是存在于虛擬

4、內(nèi)存中的地址,它有時候在磁盤中有時候在主存中。實地址指的是主存中的地址。2.10什么是多線程? 多線程技術(shù)是指把執(zhí)行一個應(yīng)用程序的進程劃分成可以同時運行的多個線程。2.4系統(tǒng)調(diào)用的目的是什么?如何實現(xiàn)與操作系統(tǒng)相關(guān)的的系統(tǒng)調(diào)用以及與雙重模式(內(nèi)核模式和用戶模式)操作相關(guān)的系統(tǒng)調(diào)用?系統(tǒng)調(diào)用被應(yīng)用程序用來調(diào)用一個由操作系統(tǒng)提供的函數(shù)。通常情況下,系統(tǒng)調(diào)用最終轉(zhuǎn)換成在內(nèi)核模式下的系統(tǒng)程序。第3章 進程描述和控制3. 什么是交換,其目的是什么?答:交換是指把主存中某個進程的一部分或者全部內(nèi)容轉(zhuǎn)移到磁盤。當(dāng)主存中沒有處于就緒態(tài)的進程時,操作系統(tǒng)就把一個阻塞的進程換出到磁盤中的掛起隊列,從而使另一個進程

5、可以進入主存執(zhí)行。4. 列出掛起態(tài)進程的4個特點。答:1.進程不能立即執(zhí)行。2.進程可能是或不是正在等待一個事件。如果是,阻塞條件不依賴于掛起條件,阻塞事件的發(fā)生不會使進程立即被執(zhí)行。3.為了阻止進程執(zhí)行,可以通過代理把這個進程置于掛起態(tài),代理可以是進程自己,也可以是父進程或操作系統(tǒng)。4.除非代理顯式地命令系統(tǒng)進行狀態(tài)轉(zhuǎn)換,否則進程無法從這個狀態(tài)中轉(zhuǎn)移。5. 為什么需要兩種模式(用戶模式和內(nèi)核模式)?答:用戶模式下可以執(zhí)行的指令和訪問的內(nèi)存區(qū)域都受到限制。這是為了防止操作系統(tǒng)受到破壞或者修改。而在內(nèi)核模式下則沒有這些限制,從而使它能夠完成其功能。 6. 中斷和陷阱有什么區(qū)別? 答:中斷與當(dāng)前正

6、在運行的進程無關(guān)的某些類型的外部事件相關(guān),如完成一次I/O操作。陷阱與當(dāng)前正在運行的進程所產(chǎn)生的錯誤或異常條件相關(guān),如非法的文件訪問。7. 模式切換和進程切換有什么區(qū)別? 答:發(fā)生模式切換可以不改變當(dāng)前正處于運行態(tài)的進程的狀態(tài)。發(fā)生進程切換時,一個正在執(zhí)行的進程被中斷,操作系統(tǒng)指定另一個進程為運行態(tài)。進程切換需要保存更多的狀態(tài)信息。3.1 什么是指令跟蹤?答:指令跟蹤是指為該進程而執(zhí)行的指令序列。3.2 對于圖3.6中的進程模型,請簡單定義每個狀態(tài)。 答:運行態(tài):該進程正在執(zhí)行。就緒態(tài):進程做好了準(zhǔn)備,只要有機會就開始執(zhí)行。阻塞態(tài):進程在某些事件發(fā)生前不能執(zhí)行,如I/O操作完成。新建態(tài):剛剛創(chuàng)

7、建的進程,操作系統(tǒng)還沒有把它加入到可執(zhí)行進程組中。退出態(tài):操作系統(tǒng)從可執(zhí)行進程組中釋放出的進程,或者是因為它自身停止了,或者是因為某種原因被取消。3.3 搶占一個進程是什么意思?答:處理器為了執(zhí)行另外的進程而終止當(dāng)前正在執(zhí)行的進程,這就叫進程搶占。3.4 為什么圖3.9(b)中有兩個阻塞態(tài)?答:有兩個獨立的概念:進程是否在等待一個事件(阻塞與否)以及進程是否已經(jīng)被換出主存(掛起與否)。為適應(yīng)這種2*2的組合,需要兩個阻塞態(tài)和兩個掛起態(tài)。3.5 對于哪類實體,操作系統(tǒng)為了管理它而維護其信息表?答:內(nèi)存、I/O、文件和進程。3.6 列出進程控制塊中的三類信息。答:進程標(biāo)識,處理器狀態(tài)信息,進程控制

8、信息。3.7 操作系統(tǒng)創(chuàng)建一個新進程所執(zhí)行的步驟是什么?答:1.給新進程分配一個唯一的進程標(biāo)識號。2.給進程分配空間。3.初始化進程控制塊。4.設(shè)置正確的連接。5.創(chuàng)建或擴充其他的數(shù)據(jù)結(jié)構(gòu)。3.8 舉出中斷的三個例子。答:時鐘終端,I/O終端,內(nèi)存失效。3.1. 給出操作系統(tǒng)進行進程管理時的五種主要活動,并簡單描述為什么需要它們。答:用戶進程和系統(tǒng)進程創(chuàng)建及刪除。系統(tǒng)中的進程可以為信息共享、運算加速、模塊化和方便并發(fā)地執(zhí)行。而并發(fā)執(zhí)行需要進程的創(chuàng)建和刪除機制。當(dāng)進程創(chuàng)建或者運行時分配給它需要的資源。當(dāng)進程終止時,操作系統(tǒng)需要收回任何可以重新利用的資源。進程的暫停和繼續(xù)執(zhí)行。在進程調(diào)度中,當(dāng)進程

9、在等待某些資源時,操作系統(tǒng)需要將它的狀態(tài)改變?yōu)榈却蚓途w狀態(tài)。當(dāng)所需要的資源可用時,操作系統(tǒng)需要將它的狀態(tài)變?yōu)檫\行態(tài)以使其繼續(xù)執(zhí)行。提供進程的同步機制。合作的進程可能需要共享數(shù)據(jù)。對共享數(shù)據(jù)的并行訪問可能會導(dǎo)致數(shù)據(jù)沖突。操作系統(tǒng)必須提供進程的同步機制以使合作進程有序地執(zhí)行,從而保證數(shù)據(jù)的一致性。提供進程的通信機制。操作系統(tǒng)下執(zhí)行的進程既可以是獨立進程也可以是合作進程。合作進程之間必須具有一定的方式進行通信。提供進程的死鎖解決機制。在多道程序環(huán)境中,多個進程可能會競爭有限的資源。如果發(fā)生死鎖,所有的等待進程都將永遠不能由等待狀態(tài)再變?yōu)檫\行態(tài),資源將被浪費,工作永遠不能完成。3.2. 在PINK8

10、9 中為進程定義了以下狀態(tài):執(zhí)行(運行)態(tài)、活躍(就緒)態(tài)、阻塞態(tài)和掛起態(tài)。當(dāng)進程正在等待允許使用某一資源時,它處于阻塞態(tài);當(dāng)進程正在等待它已經(jīng)獲得的某種資源上的操作完成時,它處于掛起態(tài)。在許多操作系統(tǒng)中,這兩種狀態(tài)常常放在一起作為阻塞態(tài),掛起態(tài)使用本章中給出的定義。請比較這兩組定義的優(yōu)點。答:PINK89中引用了以下例子來闡述其中阻塞和掛起的定義:假設(shè)一個進程已經(jīng)執(zhí)行了一段時間,它需要一個額外的磁帶設(shè)備來寫出一個臨時文件。在它開始寫磁帶之前,進程必須得到使用某一設(shè)備的許可。當(dāng)它做出請求時,磁帶設(shè)備可能并不可用,這種情況下,該進程就處于阻塞態(tài)。假設(shè)操作系統(tǒng)在某一時刻將磁帶設(shè)備分配給了該進程,這

11、時進程就重新變?yōu)榛钴S態(tài)。當(dāng)進程重新變?yōu)閳?zhí)行態(tài)時要對新獲得的磁帶設(shè)備進行寫操作。這時進程變?yōu)閽炱饝B(tài),等待該磁帶上當(dāng)前所進行的寫操作完成。這種對等待某一設(shè)備的兩種不同原因的區(qū)別,在操作系統(tǒng)組織其工作時是非常有用的。然而這并不能表明那些進程是換入的,那些進程是換出的。后一種區(qū)別是必需的,而且應(yīng)該在進程狀態(tài)中以某種形式表現(xiàn)出來。8. 列出并簡單解釋微內(nèi)核設(shè)計相對于整體式設(shè)計的七個優(yōu)點。答:一致接口:進程不需要區(qū)分是內(nèi)核級服務(wù)還是用戶級服務(wù),因為所有服務(wù)都是通過消息傳遞提供的??蓴U展性:允許增加新的服務(wù)以及在同一個功能區(qū)域中提供多個服務(wù)。靈活性:不僅可以在操作系統(tǒng)中增加新功能,還可以刪減現(xiàn)有的功能,以產(chǎn)

12、生一個更小、更有效的實現(xiàn)??梢浦残裕核谢蛘咧辽俅蟛糠痔幚砥鲗S么a都在微內(nèi)核中。因此,當(dāng)把系統(tǒng)移植到一個處理器上時只需要很少的變化,而且易于進行邏輯上的歸類??煽啃裕盒〉奈?nèi)核可以被嚴(yán)格地測試,它使用少量的應(yīng)用程序編程接口(API),這就為內(nèi)核外部的操作系統(tǒng)服務(wù)產(chǎn)生高質(zhì)量的代碼提供了機會。分布式系統(tǒng)支持:微內(nèi)核通信中消息的方向性決定了它對分布式系統(tǒng)的支持。面向?qū)ο蟛僮飨到y(tǒng)環(huán)境:在微內(nèi)核設(shè)計和操作系統(tǒng)模塊化擴展的開發(fā)中都可以借助面向?qū)ο蠓椒ǖ脑怼?.1 解釋微內(nèi)核操作系統(tǒng)可能存在的性能缺點。答:通過微內(nèi)核構(gòu)造和發(fā)送信息、接受應(yīng)答并解碼所花費的時間比一次系統(tǒng)調(diào)用的時間要多。4.2 列出即使在最

13、小的微內(nèi)核操作系統(tǒng)中也可以找到的三個功能。答:低級存儲器管理,進程間通信(IPC)以及I/O和中斷管理。4.3 在微內(nèi)核操作系統(tǒng)中,進程或線程間通信的基本形式是什么?答:消息。9. 列出與競爭進程相關(guān)的三種控制問題,并簡單地給出各自的定義。答:互斥:競爭進程僅可以訪問一個臨界資源(一次僅有一個進程可以訪問臨界資源),并發(fā)機制必須滿足一次只有一個進程可以訪問臨界資源這個規(guī)則。死鎖:如果競爭進程需要唯一的訪問多于一個資源,并且當(dāng)一個進程控制著一個進程,且在等待另一個進程,死鎖可能發(fā)生。饑餓:一組進程的一個可能會無限期地拒絕進入到一個需要資源,因為其他成員組成壟斷這個資源。10. 通常與讀者-寫者問

14、題相關(guān)聯(lián)的有哪些條件?答:1.任意多的讀進程可以同時讀這個文件,2.一次只有一個寫進程可以往文件中寫,3.如果一個寫進程正在往文件中寫時,則禁止任何讀進程讀文件。5.1列出與并發(fā)相關(guān)的四種設(shè)計問題答:進程間的交互,共享資源之間的競爭,多個進程的同步問題,對進程的處理器時間分配問題5.2列出并發(fā)的三種上下文 答:多個應(yīng)用程序,結(jié)構(gòu)化應(yīng)用程序,操作系統(tǒng)結(jié)構(gòu)5.3執(zhí)行并發(fā)進程的最基本要求是什么?答:加強互斥的能力5.4列出進程間的三種互相知道的程度,并簡單地給出各自的定義。答:進程間互相不知道對方:這是一些獨立的進程,他們不會一起工作。進程間間接知道對方:這些進程并不需要知道對方的進程ID號,但他們

15、共享訪問某些對象,如一個I/O緩沖區(qū)。進程間直接知道對方:這些進程可以通過進程ID號互相通信,用于合作完成某些活動。5.5競爭進程和合作進程進程間有什么區(qū)別。 答:競爭進程需要同時訪問相同的資源,像磁盤,文件或打印機。合作進程要么共享訪問一個共有的資源,像一個內(nèi)存訪問區(qū),要么就與其他進程相互通信,在一些應(yīng)用程序或活動上進行合作。5.7列出對互斥的要求。答:1.必須強制實施互斥:在具有關(guān)于相同資源或共享對象的臨界區(qū)的所有進程中,一次只允許一個進程進入臨界區(qū)。2.一個在臨界區(qū)停止的進程必須不干涉其他進程。3.絕不允許出現(xiàn)一個需要訪問臨界區(qū)的進程被無限延遲的情況,即不會餓死或饑餓。4.當(dāng)沒有進程在臨

16、界區(qū)中時,任何需要進入臨界區(qū)的進程必須能夠立即進入。5.對相關(guān)進程的速度和處理器的數(shù)目沒有任何要求和限制。6.一個進程駐留在臨界區(qū)中的時間是有限的。11. 能發(fā)生死鎖所必須的三個條件是什么?答:互斥,占有且等待,非搶占。12. 產(chǎn)生死鎖的第個條件是什么?答:循環(huán)等待。13. 死鎖避免,檢測和預(yù)防之間的區(qū)別是什么? 答:死鎖預(yù)防是通過間接地限制三種死鎖必要條件的至少一個或直接地限制循環(huán)等待的發(fā)生來避免死鎖的出現(xiàn)。死鎖避免允許可能出現(xiàn)的必要條件發(fā)生,但是采取措施確保不會出現(xiàn)死鎖的情況。而死鎖檢測允許資源的自由分配,采取周期性的措施來發(fā)現(xiàn)并處理可能存在的死鎖情況。.給出可重用資源和可消費資源的例子。

17、答:可重用資源:處理器,/通道,主存和輔存,設(shè)備以及諸如文件,數(shù)據(jù)庫和信號量之類的數(shù)據(jù)結(jié)構(gòu)??上M資源:中斷,信號,消息和/緩沖區(qū)中的信息。.如何防止占有且等待的條件?答:可以要求進程一次性地請求所有需要的資源,并且阻塞這個資源直到所有請求都同時滿足。.給出防止無搶占條件的兩種方法。答:第一種,如果占有某些資源的一個進程進行進一步資源請求被拒絕,則該進程必須釋放它最初占用的資源,如果有必要,可再次請求這些資源和另外的資源。第二種,如果一個進程請求當(dāng)前被另一個進程占有的一個資源,則操作系統(tǒng)可以搶占另一個進程,要求它釋放資源。.如何防止循環(huán)等待條件?答:可以通過定義資源類型的線性順序來預(yù)防。如果一

18、個進程已經(jīng)分配到了類型的資源,那么它接下來請求的資源只能是那些排在類型之后的資源類型。第7章 內(nèi)存管理14. 為什么需要重定位進程的能力?答:通常情況下,并不能事先知道在某個程序執(zhí)行期間會有哪個程序駐留在主存中。此外還希望通過提供一個巨大的就緒進程池,能夠把活動進程換入和換出主存,以便使處理器的利用率最大化。在這兩種情況下,進程在主存中的確切位置是不可預(yù)知的。15. 邏輯地址、相對地址和物理地址間有什么區(qū)別?答:邏輯地址是指與當(dāng)前數(shù)據(jù)在內(nèi)存中的物理分配地址無關(guān)的訪問地址,在執(zhí)行對內(nèi)存的訪問之前必須把它轉(zhuǎn)化成物理地址。相對地址是邏輯地址的一個特例,是相對于某些已知點(通常是程序的開始處)的存儲單

19、元。物理地址或絕對地址是數(shù)據(jù)在主存中的實際位置。7.1. 內(nèi)存管理需要滿足哪些需求?答:重定位、保護、共享、邏輯組織、物理組織7.2. 為什么不可能在編譯時實施內(nèi)存保護?答:由于程序在主存中的位置是不可預(yù)測的,因而在編譯時不可能檢查絕對地址來確保保護。并且,大多數(shù)程序設(shè)計語言允許在運行時進行地址的動態(tài)計算(例如,通過計算數(shù)組下標(biāo)或數(shù)據(jù)結(jié)構(gòu)中的指針)。因此,必須在運行時檢查進程產(chǎn)生的所有存儲器訪問,以便確保它們只訪問了分配給該進程的存儲空間。7.3. 允許兩個或多個進程訪問進程的某一特定區(qū)域的原因是什么?答:如果許多進程正在執(zhí)行同一程序,則允許每個進程訪問該程序的同一個副本要比讓每個進程有自己單獨的副本更有優(yōu)勢。同樣,合作完成同一任務(wù)的進程可能需要共享訪問同一個數(shù)據(jù)結(jié)構(gòu)。7.4. 在固定分區(qū)方案中,使用大小不等的分區(qū)有什么好處?答:通過使用大小不等的固定分區(qū):1.可以在提供很多分區(qū)的同時提供一到兩個非常大的分區(qū)。大的分區(qū)允許將很大的進程全部載入主存中。2.由于小的進程可以被放入小的分區(qū)中,從而減少了內(nèi)部碎片。7.5. 內(nèi)部碎片和外部碎片有什么區(qū)別?答:內(nèi)

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論