操作系統(tǒng)題庫08844_第1頁
操作系統(tǒng)題庫08844_第2頁
操作系統(tǒng)題庫08844_第3頁
操作系統(tǒng)題庫08844_第4頁
操作系統(tǒng)題庫08844_第5頁
已閱讀5頁,還剩37頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、填空題1、 計算機操作系統(tǒng)是方便用戶、管理和控制計算機_ 資源_的系統(tǒng)軟件。2、 采用多道程序設(shè)計技術(shù)能充分發(fā)揮 處理器與 與 外圍設(shè)備之間 并行工作的能力。3、 操作系統(tǒng)目前有五大類型:_ 批處理操作系統(tǒng)_、_分時操作系統(tǒng)_、_實時操作系統(tǒng)_、_網(wǎng)絡(luò)操作系統(tǒng)_和_分布式操作系統(tǒng)_。4、 操作系統(tǒng)的五大功能是:_ 處理機管理功能_、_ 存儲器管理功能_、_設(shè)備管理功能_、 文件管理功能_和_ 用戶接口_。5、 DOS是_ Disk Operating System_(磁盤操作系統(tǒng))_的縮寫。6、 UNIX系統(tǒng)是 分時 操作系統(tǒng),DOS系統(tǒng)是 單用戶單任務(wù) 操作系統(tǒng)。7、 計算機中的CPU的工作

2、分為系統(tǒng)態(tài)和用戶態(tài)兩種,系統(tǒng)態(tài)運行 操作系統(tǒng) 程序,用戶態(tài)運行 應(yīng)用 程序。三、簡答題1、什么是操作系統(tǒng)?它的五大主要功能是什么?答:操作系統(tǒng)是控制和管理計算機系統(tǒng)內(nèi)各種硬件和軟件資源、有效地組織多道程序運行的系統(tǒng)軟件(或程序集合),是用戶與計算機之間的接口。 操作系統(tǒng)作為計算機基本的系統(tǒng)軟件,具有五大功能,分別是:存儲管理、進程和處理機管理、文件管理、設(shè)備管理和用戶接口管理。2、解釋以下術(shù)語:資源、多道程序設(shè)計、并發(fā)、分時、吞吐量。答:資源:計算機中硬件和軟件的總稱。多道程序設(shè)計:在這種設(shè)計技術(shù)下,內(nèi)存中能同時存放多道程序,在管理程序的控制下交替地執(zhí)行。這些作業(yè)共享CPU和系統(tǒng)中的其他資源。

3、 并發(fā):是指兩個或多個活動在同一給定的時間間隔中進行,是宏觀上的概念。 分時是指多個用戶分享使用同一臺計算機。多個程序分時共享硬件和軟件資源。 吞吐量:在一段給定的時間內(nèi),計算機所能完成的總工作量。3、實時系統(tǒng)與分時系統(tǒng)的區(qū)別是什么?答:實時系統(tǒng)的交互能力較弱,為某個特定的系統(tǒng)專用;實時系統(tǒng)的響應(yīng)時間更嚴格、及時;實時系統(tǒng)對可靠性的要求更高。(1)關(guān)于交互性。分時系統(tǒng)中各個終端用戶與系統(tǒng)之間具有較強的交互性,而實時系統(tǒng)一般是專為某一領(lǐng)域使用的,對此要求不強。(2)關(guān)于可靠性。與分時系統(tǒng)相比,實時系統(tǒng)更加注重其穩(wěn)定性和可靠性。例如,對于航天控制系統(tǒng)來說,實時控制系統(tǒng)的故障可能帶來的后果是無法估量

4、的。(3)關(guān)于響應(yīng)時間。分時系統(tǒng)對響應(yīng)時間的要求是以終端用戶能接受的時間為依據(jù)的;而實時系統(tǒng)對響應(yīng)時間一般有嚴格的要求,即能對外部請求做出及時的響應(yīng)和處理4、什么是多道程序設(shè)計?多道程序設(shè)計的特點是什么?答:多道程序設(shè)計技術(shù)是指把多個程序同時存放在內(nèi)存中,使它們同時處于運行狀態(tài)。這些作業(yè)共享處理器時間和外部設(shè)備以及其他資源。 多道程序設(shè)計技術(shù)的主要特點是:多道、宏觀上并行、微觀上串行。多道是指計算機內(nèi)存中同時存放多道相互獨立的程序。宏觀上并行是指同時進入系統(tǒng)中的多道程序都處于運行過程中。微觀上串行是指在單處理機環(huán)境中,內(nèi)存中的多道程序輪流占有CPU,交替執(zhí)行5、如何理解計算機系統(tǒng)的資源?答:計

5、算機系統(tǒng)的資源包括兩大類:硬件資源和軟件資源。 硬件資源主要有中央處理器、主存儲器、輔助存儲器和各種輸入輸出設(shè)備。 軟件資源有編譯程序、編輯程序等各種程序以及有關(guān)數(shù)據(jù)7、我們通常將操作系統(tǒng)分為哪幾種類型?各自有什么特點?答:操作系統(tǒng)系統(tǒng)主要分為以下幾大類:一、批處理操作系統(tǒng)早期的一種大型機用操作系統(tǒng)。可對用戶作業(yè)成批處理,期間勿需用戶干預(yù),分為單道批處理系統(tǒng)和多道批處理系統(tǒng)。二、分時操作系統(tǒng)利用分時技術(shù)的一種聯(lián)機的多用戶交互式操作系統(tǒng),每個用戶可以通過自己的終端向系統(tǒng)發(fā)出各種操作控制命令,完成作業(yè)的運行。分時是指把處理機的運行時間分成很短的時間片,按時間片輪流把處理機分配給各聯(lián)機作業(yè)使用。三、

6、實時操作系統(tǒng)一個能夠在指定或者確定的時間內(nèi)完成系統(tǒng)功能以及對外部或內(nèi)部事件在同步或異步時間內(nèi)做出響應(yīng)的系統(tǒng)。四、網(wǎng)絡(luò)操作系統(tǒng)一種在通常操作系統(tǒng)功能的基礎(chǔ)上提供網(wǎng)絡(luò)通信和網(wǎng)絡(luò)服務(wù)功能的操作系統(tǒng)。五、分布式操作系統(tǒng)一種以計算機網(wǎng)絡(luò)為基礎(chǔ)的,將物理上分布的具有自治功能的數(shù)據(jù)處理系統(tǒng)或計算機系統(tǒng)互聯(lián)起來的操作系統(tǒng)。是非題(正確的劃“”,錯誤的劃“”)( F)1、多用戶操作系統(tǒng)離開了多終端硬件支持,則無法使用。( F)2、具有多道功能的操作系統(tǒng)一定是多用戶操作系統(tǒng)。( T )3、多用戶操作系統(tǒng)在單一硬件終端硬件支持下仍然可以工作。( F)4、多用戶操作系統(tǒng)一定是具有多道功能的操作系統(tǒng)。(T )5、進程的

7、相對速度不能由自己來控制。( F )6、進程的并發(fā)執(zhí)行是指同一時刻有兩個以上的程序,它們的指令在同一個處理器上執(zhí)行。( F )7、并發(fā)進程在訪問共享資源時,不可能出現(xiàn)與時間有關(guān)的錯誤。( F )8、并發(fā)是并行的不同表述,其原理相同。( T)9、臨界資源是指每次僅允許一個進程訪問的資源。( T)10、進程的互斥和同步是進程通信的基本內(nèi)容。( F)11、進程的互斥和同步的相互制約一般不會同時發(fā)生。( T )12、進程的互斥和同步總是因相互制約而同時引起。( T )13、作業(yè)同步面向用戶而進程同步面向計算機內(nèi)部資源管理控制。(T )14、進程之間的同步,主要源于進程之間的資源競爭,是指對多個相關(guān)進程

8、在執(zhí)行次序上的協(xié)調(diào)。( T )15、P操作和V操作都是原語操作。( F )16、利用信號量的PV操作可以交換大量的信息。(F )17、信號量機制是一種有效的實現(xiàn)進程同步與互斥的工具。信號量只能由PV操作來改變。( T )18、V操作是對信號量執(zhí)行加1操作,意味著釋放一個單位資源,加1后如果信號量的值等于零,則從等待隊列中喚醒一個進程,現(xiàn)進程變?yōu)榈却隣顟B(tài),否則現(xiàn)進程繼續(xù)進行。(F )19、死鎖是指因相互競爭資源使得系統(tǒng)中有多個阻塞進程的情況。( T )20、產(chǎn)生死鎖的原因可歸結(jié)為競爭資源和進程推進順序不當。( T )21、死鎖是指兩個或多個進程都處于互等狀態(tài)而無法繼續(xù)工作。( F)22、計算機的

9、死鎖俗稱“死機”。三、填空題1、 進程的三個基本狀態(tài)是 運行態(tài) 、 就緒態(tài) 和 阻塞態(tài) 。2、 程序的_并發(fā)_執(zhí)行是現(xiàn)代操作系統(tǒng)的基本特征之一,為了更好地描述這一特征而引入了 _進程_這一概念。 3、 進程存在的標志是_PCB_。 4、 一個程序運行在不同的數(shù)據(jù)集上就構(gòu)成了不同的 進程 ,分別得到不同的結(jié)果。5、 進程是一個 動態(tài) 的實體,它有自己的生命周期。它因創(chuàng)建 而產(chǎn)生,因 調(diào)度 而運行,因 等待某一件事情 而被阻塞(進入等待態(tài)),因 執(zhí)行完畢 而被撤消。6、 進程在運行過程中不斷 變化 ,但在某一時刻,進程當且僅當處于3種基本狀態(tài)之一。7、 進程的靜態(tài)實體由_程序段_、_相關(guān)數(shù)據(jù)段_和

10、_PCB_三部分組成。 8、 用于進程控制的原語主要有建立原語、撤消原語、掛起原語和_激活原語。 9、 進程被創(chuàng)建后,最初處于_就緒_狀態(tài),然后經(jīng)_進程調(diào)度程序_選中后進入_執(zhí)行_狀態(tài)。 10、 進程在運行中申請資源得不到滿足,則它從_執(zhí)行_態(tài)變成_等待_態(tài)。11、 處于等待態(tài)的進程,其外圍設(shè)備工作結(jié)束,則它變成_就緒_態(tài)。12、 進程從運行態(tài)變成就緒態(tài),主要原因是_運行時間到_和_出現(xiàn)更高優(yōu)先權(quán)進程_。13、 有多個進程等待分配CPU時,系統(tǒng)按一定的_ 優(yōu)先級_,從處于就緒態(tài)的進程中選擇_ 第一_ 個進程,讓它占有CPU,并把它的狀態(tài)變成_運行_態(tài)。14、 進程的特征主要有_并發(fā)性_、_異步

11、性_、獨立性,制約性和結(jié)構(gòu)性。15、 PCB的含義是_操作系統(tǒng)用于記錄和刻畫進程狀態(tài)及有關(guān)信息數(shù)據(jù)結(jié)構(gòu) 。16、 操作系統(tǒng)依據(jù)_PCB_對進程控制和管理。17、 進程創(chuàng)建工作主要完成的是創(chuàng)建進程控制塊,并把它掛到_就緒_隊列中。18、 一個進程完成自己的任務(wù)后,操作系統(tǒng)則要收回該進程占有的_地址空間_和撤消該進程的_控制塊_。19、 如果系統(tǒng)中有N個進程,則在就緒隊列中進程的個數(shù)最多為_N-1_。20、 操作系統(tǒng)中用于完成一些特定功能的、不可中斷的過程稱為_原語_。21、 用于控制進程的原語有創(chuàng)建原語、撤消原語、_掛起原語_和_激活原語_。22、 進程有兩種基本隊列:_就緒隊列_和_等待隊列_

12、。23、 進程調(diào)度程序負責CPU的分配,它按照某種_算法_,從 就緒 的進程中選擇一個進程,將其_PCB_中的有關(guān)現(xiàn)場信息送入處理器相應(yīng)的寄存器中,使它占有處理器運行。24、 常用的進程調(diào)度算法有先來先服務(wù)、時間片輪轉(zhuǎn)法和 優(yōu)先級法 。25、 先來先服務(wù)調(diào)度算法是按照進程進入就緒列隊的_先后次序_來選擇其占用的CPU,在進程調(diào)度時總是把CPU分配給就緒列隊的_隊首_進程。26、 時間片是指允許進程一次性占用處理器的_CPU_。時間片輪轉(zhuǎn)算法常用于_分時_操作系統(tǒng)。27、 我們把一個進程讓出CPU,由另一個進程占用CPU的過程稱為_進程切換_。28、 當一個進程獨占處理器順序執(zhí)行時,具有_封閉性

13、_和_可再現(xiàn)性 。29、 并發(fā)進程執(zhí)行時,執(zhí)行結(jié)果與它執(zhí)行的_初始條件_有關(guān);進程的并發(fā)執(zhí)行會破壞_封閉性_和_可再現(xiàn)性_。30、 我們把并發(fā)過程中與_臨界資源進行操作_有關(guān)的程序段稱為臨界區(qū)。31、 對_共享資源_的若干臨界區(qū)必須互斥執(zhí)行,而對_非共享資源_的臨界區(qū)是不必互斥的。32、 一次至多_一_個進程能夠進入臨界區(qū),當有進程在臨界區(qū)_執(zhí)行_時,其他想進入臨界區(qū)的進程必須_等待_。33、 任一個進入臨界區(qū)的進程必須在_有限_時間內(nèi)_進入_ 臨界區(qū)。34、 每執(zhí)行一次V操作,信號量的數(shù)值S加1。若_S=0_,則該進程繼續(xù)執(zhí)行;否則,從對應(yīng)的_就緒_隊列中移出一個進程并將_執(zhí)行狀態(tài)賦予該進程

14、。 35、 利用信號量實現(xiàn)進程的_互斥與同步_,應(yīng)為臨界區(qū)設(shè)置一個信號量MUTEX,其初值為1,表示該資源尚未使用,臨界區(qū)應(yīng)置于_P(mutex)_和_V(mutex)_原語之間。 36、 操作系統(tǒng)中信號量的值與_相應(yīng)資源_的使用情況有關(guān),它的值僅能由_P、V操作_來改變。 37、 _PV操作_能夠?qū)崿F(xiàn)臨界區(qū)的管理要求。38、 PV操作由_P操作_和_V操作_組成,是對_資源_進行操作。39、 P操作信號的值_S:=S-1_,若結(jié)果小于0,則該進程值為_等待_狀態(tài)。V操作將信號量的值_ S:=S+1_,若結(jié)果_ 大于0_,則釋放一個等待信號量的進程。40、 當并發(fā)進程存在競爭關(guān)系時必須 排它

15、地使用資源;當并發(fā)進程存在協(xié)作關(guān)系時必須_共享資源_。分別稱為_進程的互斥_和_進程的同步_。41、 _互斥_是指當有若干個進程都要使用某一共享資源時,任何時刻最多只允許_一_個進程去使用,其他要只用該資料的進程必須_等待_,直到占用資源者_釋放_該資源。42、 進程的同步是指并發(fā)進程之間的一種_直接的協(xié)同工作_關(guān)系,一個進程的執(zhí)行依賴另一個進程的_信息或信號_,當一個進程沒有得到它時應(yīng)_等待_,直到被_喚醒_。43、 進程的同步和互斥反映了進程間_同步_和_互斥_的關(guān)系。 44、 用PV操作是實現(xiàn)_同步_ 和_互斥_的有效工具,但若使用不當則不僅_會出現(xiàn)與時間相關(guān)的錯誤_而且會_產(chǎn)生死鎖_。

16、45、 并發(fā)進程之間通過_信號量_交換的是少量的信息,這是一種_低級_通信方式;而大量信息的傳遞要_消息傳遞_來實現(xiàn),這是一種_高級_的通信方式,稱為_消息傳遞機制_。46、 實際上,_進程互斥_是進程同步的一種特例。47、 目前常用的高級通信方式有共享存儲器、_消息傳遞通信機制_、管道通信_等。48、 形成死鎖的起因是_競爭資源_和_進程間推進順序非法_。49、 避免死鎖的一個著名的算法是_銀行家算法_。50、 死鎖產(chǎn)生的四個必要條件是_互斥條件_、_請求和保持條件、_不剝奪條件_和_循環(huán)等待條件_四種。 51、 檢測死鎖后可采用剝奪進程占有的資源、_進程回退_、_進程撤銷_和_系統(tǒng)重啟_等

17、辦法來解除死鎖。52、 在實際使用中,為了操作系統(tǒng)的安全和可靠,往往采用死鎖的_預(yù)防_、_避免_和_檢測與解除_的混合策略,這樣既可保證整個系統(tǒng)不出現(xiàn)死鎖,又可以盡可能地提高資源利用率。53、 通常,線程的定義是_是進程中執(zhí)行運算的最小單位_。在現(xiàn)代操作系統(tǒng)中,資源的分配單位是_進程_,而處理機的調(diào)度單位是_線程_,一個進程可以有_多個_線程。 54、 利用優(yōu)先級調(diào)度算法進行進程調(diào)度時,即從就緒隊列中選擇優(yōu)先級高的進程有兩種不同的處理方式: 非搶占式優(yōu)先權(quán)算法 和 搶占式優(yōu)先權(quán)算法 。四、簡答題1、 什么是進程?它與程序相比有哪些特征?答:進程是一個具有一定獨立功能的程序關(guān)于某個數(shù)據(jù)集合的一次

18、運行活動。它是操作系統(tǒng)動態(tài)執(zhí)行的基本單元,在傳統(tǒng)的操作系統(tǒng)中,進程既是基本的分配單元,也是基本的執(zhí)行單元。 進程與程序的主要區(qū)別:(1)程序是永存的;進程是暫時的,是程序在數(shù)據(jù)集上的一次執(zhí)行,有創(chuàng)建有撤銷,存在是暫時的;(2)程序是靜態(tài)的觀念,進程是動態(tài)的觀念;(3)進程具有并發(fā)性,而程序沒有;(4)進程是競爭計算機資源的基本單位,程序不是。(5)進程和程序不是一一對應(yīng)的: 一個程序可對應(yīng)多個進程即多個進程可執(zhí)行同一程序; 一個進程可以執(zhí)行一個或幾個程序2、 一個進程進入臨界區(qū)的調(diào)度原則是什么?答:進程進入臨界區(qū)的調(diào)度原則是:如果有若干進程要求進入空閑的臨界區(qū),一次僅允許一個進程進入。任何時候

19、,處于臨界區(qū)內(nèi)的進程不可多于一個。如已有進程進入自己的臨界區(qū),則其它所有試圖進入臨界區(qū)的進程必須等待。進入臨界區(qū)的進程要在有限時間內(nèi)退出,以便其它進程能及時進入自己的臨界區(qū)。如果進程不能進入自己的臨界區(qū),則應(yīng)讓出CPU,避免進程出現(xiàn)“忙等”現(xiàn)象??臻e讓進、忙則等待、有限等待、讓權(quán)等待3、 在一個單CPU的多道程序設(shè)計系統(tǒng)中,若在某一時刻有N個進程同時存在,那么處于運行態(tài)、等待態(tài)和就緒態(tài)進程的最小和最大值分別可能是多少?答:狀態(tài) 最大值 最小值 運行態(tài) 1 1 等待態(tài) N-1 0 就緒態(tài) N-1 04、 為什么并發(fā)進程執(zhí)行時可能會產(chǎn)生與時間有關(guān)的錯誤,如何避免?答:由于進程運行時會隨時被中斷(包

20、括時間片到、申請資源等),不僅斷點不固定,而且中斷多長時間也不固定,即進程是走走停停且它向前推進的相對速度無法由自身控制。異步性有交往的并發(fā)進程可能會同時使用共享資源,如果對這種情況不加控制,由于進程占用處理器的時間、執(zhí)行的速度和外界的影響等,就會引起與時間有關(guān)的錯誤。只要使若干并發(fā)進程的相關(guān)臨界區(qū)互斥執(zhí)行,就可避免造成這類錯誤。5、 什么是PV操作,它有什么作用?答:PV操作能夠?qū)崿F(xiàn)對臨界區(qū)的管理要求。它由P操作原語和V操作原語組成,對信號量進行操作,具體定義如下: P(S):將信號量S的值減1,即S=S-1; 如果S0,則該進程繼續(xù)執(zhí)行;否則該進程置為等待狀態(tài),排入等待隊列。 V(S):將

21、信號量S的值加1,即S=S+1; 如果S0,則該進程繼續(xù)執(zhí)行;否則釋放隊列中第一個等待信號量的進程。6、 假設(shè)PV操作用信號量管理某個共享資源,請問當S0,S=0和S0時,它們的物理意義是什么?答:一般來說,信號量S0時,S表示可用資源的數(shù)量。執(zhí)行一次P操作意味著請求分配一個單位資源,因此S的值減1;當S0時,表示已經(jīng)沒有可用資源,請求者必須等待別的進程釋放該類資源,它才能運行下去。而執(zhí)行一個V操作意味著釋放一個單位資源,因此S的值加1;若S0,表示有某些進程正在等待該資源,因此要喚醒一個等待狀態(tài)的進程,使之運行下去。7、 什么是死鎖?死鎖的四個必要條件是什么?答:死鎖是兩個或兩個以上的進程中

22、的每一個都在等待其中另一個進程釋放資源而被封鎖,它們都無法向前推進,稱這種現(xiàn)象為死鎖現(xiàn)象。產(chǎn)生死鎖的四個必要條件是資源互斥使用、保持和等待、非剝奪性、循環(huán)等待。8、 操作系統(tǒng)為什么要引入進程?進程與程序的關(guān)系是怎樣的?答:現(xiàn)代計算機系統(tǒng)中程序并發(fā)執(zhí)行和資源共享的需要,使得系統(tǒng)的工作情況變得非常復(fù)雜,而程序作為機器指令集合,這一靜態(tài)概念已經(jīng)不能如實反映程序并發(fā)執(zhí)行過程的動態(tài)性,因此,引入進程的概念來描述程序的動態(tài)執(zhí)行過程。這對于我們理解、描述和設(shè)計操作系統(tǒng)具有重要意義。進程定義為程序在并發(fā)環(huán)境中的執(zhí)行過程,它與程序是完全不同的概念。主要區(qū)別是:(1)程序是靜態(tài)概念,是永久性軟件資源;而進程是動態(tài)

23、概念,是動態(tài)生亡的暫存性資源。(2)進程是一個能獨立運行的單位,能與其他進程并發(fā)執(zhí)行,系統(tǒng)是以進程為單位分配CPU的;而程序則不能作為一個能獨立運行單位。(3)程序和進程沒有一一對應(yīng)關(guān)系。一個程序在工作時可以由多個進程工作,一個進程在工作時至少對應(yīng)有一個程序。(4)各個進程在并發(fā)執(zhí)行時會產(chǎn)生制約關(guān)系,使各自推進的速度不可預(yù)測;而程序作為靜態(tài)概念,不存在這種異步特征。 進程和程序關(guān)系類似生活中的炒菜與菜譜。菜譜相同,而各人炒出來的菜的味道卻差別很大。原因是菜譜基本上是一種靜態(tài)描述,它不可能把所有執(zhí)行的動態(tài)過程中,涉及的時空、環(huán)境等因素一一用指令描述清楚。9、如何理解進程的順序性與并發(fā)性?答:進程

24、的順序性與并發(fā)性: 1、順序性 順序性包括兩層含義:(1)內(nèi)部順序性,對于一個進程來說,它的所有指令是按序執(zhí)行的;(2)外部順序性,對于多個進程來說,所有進程是依次執(zhí)行的。 例如,假如有P1和P2兩個進程,其活動分別為: P1活動:A1 A2 A3 A4 P2活動:B1 B2 B3 B4 順序執(zhí)行時,有如下兩種情形: 情形1:A1 A2 A3 A4 B1 B2 B3 B4 情形2:B1 B2 B3 B4 A1 A2 A3 A4 2、并發(fā)性 并發(fā)性包括如下兩層含義:(1)內(nèi)部順序性,對于一個進程來說,它的所有指令是按序執(zhí)行的;(2)外部并發(fā)性,對于多個進程來說,所有進程是交叉執(zhí)行的。 例如,對于

25、上面P1和P2兩個進程來說,并發(fā)執(zhí)行有許多情形,如: 情形1:A1 B1 B2 A2 A3 B3 A4 B4 情形2:B1 B2 A1 A2 A3 B3 B4 A4 并發(fā)進程在其執(zhí)行過程中,出現(xiàn)哪種交叉情形是不可預(yù)知的,這就是并發(fā)進程的不確定性,操作系統(tǒng)應(yīng)當保證:無論出現(xiàn)何種交叉情形,每個進程運行的結(jié)果都應(yīng)當是唯一的,正確的。 10、什么是進程的同步與互斥?答:進程的同步與互斥是指進程在推進時的相互制約關(guān)系。在多道程序系統(tǒng)中,由于進程合作與資源共享,這種進程間的制約稱為可能。我們把前者稱為進程同步,后者稱為進程互斥。 進程同步是進程間共同完成一項任務(wù)時直接發(fā)生相互作用的關(guān)系。為進程之間的直接制

26、約關(guān)系。在多道環(huán)境下,這種進程間在執(zhí)行次序上的協(xié)調(diào)是必不可少的。同步進程之間的關(guān)系如同接力賽跑中的運動員,或生產(chǎn)流水線的每一道工序。 進程互斥是進程之間的間接制約關(guān)系。在多道系統(tǒng)中,每次只允許一個進程訪問的資源稱為臨界資源,進程互斥就是保證每次只有一個進程使用臨界資源?;コ膺M程之間的關(guān)系如同汽車在交叉路口爭用車道,籃球比賽中雙方爭搶籃板球。11、什么叫原語?答:在操作系統(tǒng)中,往往設(shè)計一些完成特定功能的、不可中斷的過程,這些不可中斷的過程稱為原語。如P、V操作原語。12、什么是線程?它與進程有什么關(guān)系?答:線程是進程中執(zhí)行運算的最小單位,即處理機調(diào)度的基本單位。它與進程的關(guān)系是:一個線程只能屬于

27、一個進程,而一個進程可以有多個線程;資源分配給進程,同一進程的所有線程共享該進程的所有資源;處理機分給線程,即真正在處理機上運行的是線程;線程在運行過程中,需要協(xié)作同步,不同進程的線程間要利用消息通信的辦法實現(xiàn)同步。特別注意的是:傳統(tǒng)操作系統(tǒng)中的進程概念與現(xiàn)代操作系統(tǒng)中的進程概念不同簡單說,傳統(tǒng)操作系統(tǒng)中進程具有分配資源、調(diào)度運行兩大功能,而現(xiàn)代操作系統(tǒng)中進程只作為分配資源單位,線程才作為調(diào)度運行單位。13、試以生產(chǎn)者消費者問題說明進程同步問題的實質(zhì)。答:一個生產(chǎn)者,一個消費者和一個產(chǎn)品之間關(guān)系是典型的進程同步問題。設(shè)信號量S為倉庫內(nèi)產(chǎn)品,P-V操作配對進行缺一不可。生產(chǎn)者進程將產(chǎn)品放入倉庫后

28、通知消費者可用;消費者進程在得知倉庫有產(chǎn)品時取走,然后告訴生產(chǎn)者可繼續(xù)生產(chǎn)。14、用PV操作實現(xiàn)進程間的同步與互斥應(yīng)該注意什么?答:用PV操作實現(xiàn)進程間的同步與互斥,應(yīng)該注意以下四個方面: 對每一個共享資源都要設(shè)立信號量?;コ鈺r對一個共享資源設(shè)立一個信號量;同步時對一個共享資源可能要設(shè)立兩個或多個信號量,要視由幾個進程來使用該共享變量而定; 互斥時信號量的初值一般為1;同步時至少有一個信號量的初值大于等于1; PV操作一定要成對調(diào)用。互斥時在臨界區(qū)前后對同一信號量作PV操作;同步時則對不同的信號量作PV操作,PV操作的位置一定要正確。 對互斥和同步混合問題,PV操作可能會嵌套,一般同步的PV操

29、作在外,互斥的PV操作在內(nèi)。五、綜合題2143執(zhí)行態(tài)就緒態(tài)等待態(tài)1、某系統(tǒng)的進程狀態(tài)轉(zhuǎn)換圖如下圖所示,請回答: 引起各種狀態(tài)轉(zhuǎn)換的典型事件有哪些?答:1,就緒運行:CPU空閑,就緒態(tài)進程被調(diào)度程序選中。 2,運行就緒:正在運行的進程用完了本次分配給它的CPU時間片。 3,運行阻塞:運行態(tài)進程因某種條件未滿足而放棄對CPU的占用,如等待讀文件。 4,阻塞就緒:阻塞態(tài)進程所等待的事件發(fā)生了,例如讀數(shù)據(jù)的操作完成。 當我們觀察系統(tǒng)中某些進程時,能夠看到某一進程產(chǎn)生的一次狀態(tài)轉(zhuǎn)換能引起另一個進程作一次狀態(tài)轉(zhuǎn)換。在什么情況下,當一個進程發(fā)生轉(zhuǎn)換3時,能立即引起另一進程發(fā)生轉(zhuǎn)換1?試說明是否會發(fā)生這些因果

30、轉(zhuǎn)換:21;32;41。答:21:可以。運行進程用完了本次分配給它的時間片,讓出CPU,從就緒隊列中選一個進程投入運行。 32:不可以。任何時候一個進程只能處于一種狀態(tài),它既然由運行態(tài)變?yōu)樽枞麘B(tài),就不能再變?yōu)榫途w態(tài)。 41:可以。某一阻塞態(tài)進程等待的事件出現(xiàn)了,而且此時就緒隊列為空,該進程進入就緒隊列后馬上又被調(diào)度運行。就緒進程隊列等待磁盤讀文件運行等待打印機輸出結(jié)果2、某分時系統(tǒng)的進程出現(xiàn)如上圖所示的狀態(tài)變化。試問 你認為該系統(tǒng)采用的是何種進程調(diào)度算法?答:該分時系統(tǒng)采用的進程調(diào)度算法是時間片輪轉(zhuǎn)法。 把圖中所示的每一個狀態(tài)變化的原因填寫在下表中。變 化原 因進程被選中,變成運行態(tài)時間片到,

31、運行的進程排入就緒隊列尾部運行的進程啟動打印機,等待打印打印工作結(jié)束,等待的進程排入就緒隊列尾部等待磁盤讀文件工作磁盤傳輸信息結(jié)束,等待的進程排入就緒隊列尾部3、四個進程A、B、C、D都要讀一個共享文件F,系統(tǒng)允許多個進程同時讀文件F。但限制是進程A和進程C不能同時讀文件F,進程B和進程D也不能同時讀文件F。為了使這四個進程并發(fā)執(zhí)行時能按系統(tǒng)要求使用文件,現(xiàn)用PV操作進行管理,請回答下面的問題: 如何定義信號量及初值;答:兩個信號量m和s,s和m的初值均為1。 在下列的程序中填上適當?shù)腜、V操作,以保證它們能正確并發(fā)工作:進程A進程B進程C進程D1357read Fread Fread Fre

32、ad F2468答:進程A 進程 B 進程 C 進程 D P(m) P(s) P(m) P(s) read F read F read F read F V(m) V(s) V(m) V(s)4、判斷下面的同步問題的算法是否正確?若有錯,請指出錯誤原因并予以改正。 設(shè)A、B兩進程共用一個緩沖區(qū)Q,A向Q寫入信息,B則從Q讀出信息,算法框圖如圖所示。 設(shè)A、B為兩個并發(fā)進程,它們共享一臨界資源。其運行臨界區(qū)的算法框圖如圖所示。 答:這個算法不對。因為A、B兩進程共用一個緩沖區(qū)Q,如果A先運行,且信息數(shù)量足夠多,那么緩沖區(qū)Q中的信息就會發(fā)生后面的沖掉前面的,造成信息丟失,B就不能從Q中讀出完整的信

33、息。 進行改正:A、B兩進程要同步使用緩沖區(qū)Q。為此,設(shè)立兩個信號量: empty表示緩沖區(qū)Q為空,初值為1; full表示緩沖區(qū)Q為滿,初值為0。 算法框圖如圖所示。 A進程 B進程 P(empty) P(full) 向Q寫入信息 從Q中讀出信息 V(full) V(empty)5、設(shè)有一臺計算機,有兩條I/O通道,分別接一臺輸入機和一臺打印機。輸入機把一批數(shù)據(jù)逐一輸入到緩沖區(qū)B1中,加工處理后再搬到B2中,并在打印機上打印,請問: 系統(tǒng)要設(shè)幾個進程來完成這個任務(wù)?各自的工作是什么? 這些進程間有什么樣的相互制約關(guān)系? 用P、V操作寫出這些進程同步算法。答:(1)系統(tǒng)可設(shè)三個進程來完成這個任

34、務(wù):R進程負責從卡片輸入機上讀入卡片信息,輸入到緩沖區(qū)B1中;C進程負責從緩沖區(qū)B1中取出信息,進行加工處理,之后將結(jié)果送到緩沖區(qū)B2中;P進程負責從緩沖區(qū)B2中取出信息,并在打印機上印出。 R進程受C進程影響,B1放滿信息后R進程要等待等C進程將其中信息全部取走,才能繼續(xù)讀入信息;C進程受R進程和P進程的約束:B1中信息放滿后C進程才可從中取出它們,且B2被取空后C進程才可將加工結(jié)果送入其中;P進程受C進程的約束:B2中信息放滿后P進程才可從中取出它們,進行打印。 信號量含義及初值: B1full­ 緩沖區(qū)B1滿,初值為0; B1empty緩沖區(qū)B1空,初值為0; B2full&sh

35、y; 緩沖區(qū)B2滿,初值為0; B2empty緩沖區(qū)B2空,初值為0; R進程 C進程 P進程 輸入信息寫入緩沖區(qū)B1 P(B1full) P(B2full) V(B1full) 從B1中取出信息 從B2中取出信息進行打印 P(B1empty) 加工信息 V(B2empty) 結(jié)果送入B2 V(B1empty) V(B2full) P(B2empty) 6、桌上有一空盤,允許存放一只水果。爸爸可向盤中放蘋果,也可向盤中放橘子,兒子專等吃盤中的橘子,女兒專等吃盤中的蘋果。規(guī)定當盤空時一次只能放一只水果供吃者取用,請用P,V原語實現(xiàn)爸爸、兒子、女兒三個并發(fā)進程的同步。答:Var dish,appl

36、e,banana:Semaphore:=1,0,0;Main() cobeginFather(); son();daugher();Coend Father() while (true) p(dish); if 放的是蘋果 v(apple); else V(banana) son() while (true) p(banana);從盤子取香蕉;v(dish); 吃香蕉; daugher() while (true) p(apple);從盤子取蘋果;v(dish); 吃蘋果; 是非題(正確的劃“”,錯誤的劃“”)( )1、一個作業(yè)或任務(wù)在運行,可以對應(yīng)多個進程執(zhí)行。( )2、作業(yè)一旦被作業(yè)調(diào)度程

37、序選中,即占有了CPU。( )3、設(shè)有3個作業(yè)J1,J2,J3,其運行時間分別是1,2,3小時。假設(shè)這些作業(yè)同時到達,并在一臺處理機上按單道運行,采用短作業(yè)優(yōu)先調(diào)度算法,則平均周轉(zhuǎn)時間由小到大的執(zhí)行序列是J1,J2,J3。( )4、操作系統(tǒng)的作業(yè)管理是一種微觀的低級管理。( )5、確定作業(yè)調(diào)度算法時應(yīng)主要考慮系統(tǒng)資源的均衡使用,使I/O繁忙作業(yè)和CPU繁忙作業(yè)搭配運行。( )6、一個作業(yè)由若干個作業(yè)步組成,在多道程序設(shè)計的系統(tǒng)中這些作業(yè)步可以并發(fā)執(zhí)行。(作業(yè)可以并發(fā)進行)( )7、通用操作系統(tǒng)中,通常把終端作業(yè)稱為后臺作業(yè),批處理作業(yè)稱為前臺作業(yè)。(在分時兼批處理的計算機系統(tǒng)中 )( )8、作

38、業(yè)控制語言是供用戶編寫程序以實現(xiàn)某項計算任務(wù)的語言。作業(yè)控制語言是對用戶作業(yè)的進行組織和管理的各種控制命令的集合 ( )9、交互式作業(yè)不存在作業(yè)調(diào)度問題。( )10、作業(yè)調(diào)度與進程調(diào)度相互配合才能實現(xiàn)多道作業(yè)的并發(fā)執(zhí)行。三、填空題1、 作業(yè)的輸入方式主要有三種:聯(lián)機輸入方式 、脫機輸入方式和直接耦合方式。2、 作業(yè)從進入系統(tǒng)到最后完成,可能要經(jīng)歷三級調(diào)度:高級調(diào)度、中級調(diào)度和低級調(diào)度。3、 作業(yè)的狀態(tài)分為四種:提交、后備、執(zhí)行和完成4、 作業(yè)調(diào)度完成作業(yè)狀態(tài)從 就緒 態(tài)到 運行 態(tài)的轉(zhuǎn)化。5、 從計算機系統(tǒng)的角度看,作業(yè)由程序、數(shù)據(jù)、作業(yè)說明書組成。6、 在分時批處理系統(tǒng)中,如果有終端作業(yè)和批

39、處理作業(yè)混合同時執(zhí)行,則 終端作業(yè)應(yīng)優(yōu)先占有處理機。7、 操作系統(tǒng)中用以表征“作業(yè)”的數(shù)據(jù)結(jié)構(gòu)是 作業(yè)控制塊(JCB) 。8、 某作業(yè)的提交時間為10:30,需要運行的時間為1小時,假設(shè)11:00開始調(diào)度,它的響應(yīng)比是 2/3 。9、 在響應(yīng)比最高者優(yōu)先的作業(yè)調(diào)度算法中,當各個作業(yè)等待時間相同時, 作業(yè)要求運行時間最短的作業(yè)將得到優(yōu)先調(diào)度;當各個作業(yè)要求運行的時間相同時, 作業(yè)等待時間最大 的作業(yè)得到優(yōu)先調(diào)度。10、 設(shè)有一組作業(yè),它們的提交時間及運行時間如下所示。作業(yè)號提交時間(分鐘)運行時間(分鐘)19:006029:403039:5010410:105在單道方式下,采用短作業(yè)優(yōu)先調(diào)度算法

40、,作業(yè)的執(zhí)行順序是 1 3 4 2 。四、簡答題1、 多道程序設(shè)計系統(tǒng)中,評價作業(yè)調(diào)度算法好壞的準則是什么?答:評價作業(yè)調(diào)度算法好壞的標準有CPU利用率,吞吐量、周轉(zhuǎn)時間、平均周轉(zhuǎn)時間、帶權(quán)平均周轉(zhuǎn)時間等。通常(尤其在批處理系統(tǒng)中)更常用的是平均周轉(zhuǎn)時間和帶權(quán)平均周轉(zhuǎn)時間。 解答:平均周轉(zhuǎn)時間,帶權(quán)平均周轉(zhuǎn)時間2、 為什么響應(yīng)比高者優(yōu)先調(diào)度算法對大作業(yè)和小作業(yè)都有利?答:因為響應(yīng)比高者優(yōu)先調(diào)度算法綜合考慮了等待時間與運行時間,在運行時間相同的情況下優(yōu)先調(diào)用等待時間長的作業(yè)3、 作業(yè)調(diào)度的功能有哪些?答:按一定的原則對外存輸入井上的大量后備作業(yè)進行選擇,給選出的作業(yè)分配內(nèi)存、輸入輸出設(shè)備等必要的

41、資源,并建立相應(yīng)進程,使該作業(yè)的相關(guān)進程獲得競爭處理機的權(quán)利。另外,當作業(yè)執(zhí)行完畢時,還負責回收系統(tǒng)資源。4、 現(xiàn)有兩道作業(yè)同時執(zhí)行,一道以計算為主,另一道以輸入輸出為主,你將怎樣賦予作業(yè)進程占有處理機的優(yōu)先級?為什么?答:優(yōu)先分配計算的作業(yè),因為計算不需要人工干預(yù),執(zhí)行速度快,輸入輸出需要人工干預(yù),執(zhí)行速度慢五、綜合題1、設(shè)有三個批作業(yè)JOB1、JOB2、JOB3,其到達時間、處理時間及完成時間如下:作業(yè) 作業(yè)到達時間(時) 開始處理時間(時) 處理完成時間(時)JOB1 15 18 22JOB2 18 21 23 JOB3 17 19 21試計算:(1)各個作業(yè)的周轉(zhuǎn)時間;(2)所有作業(yè)的

42、平均周轉(zhuǎn)時間;解: 作業(yè) 周轉(zhuǎn)時間 等待時間 JOB1 7 3 JOB2 5 3 JOB3 4 2 所有作業(yè)的平均周轉(zhuǎn)時間5.33 2、假定在單CPU條件下有下列要執(zhí)行的作業(yè):作業(yè)號運行時間優(yōu)先級1102243335作業(yè)到來的時間是按作業(yè)編號順序進行的(即后面作業(yè)依次比前一個作業(yè)遲到一個時間單位)。 (1)用一個執(zhí)行時間圖描述在采用非搶占式優(yōu)先級算法時執(zhí)行這些作業(yè)的情況。(2)對于上述算法,各個作業(yè)的周轉(zhuǎn)時間是多少?平均周轉(zhuǎn)時間是多少(3)對于上述算法,各個作業(yè)的帶權(quán)周轉(zhuǎn)時間是多少?平均帶權(quán)周轉(zhuǎn)時間是多少?答::(1)非搶占式優(yōu)先級算法 作業(yè)1 作業(yè)3 作業(yè)2 10 3 4(2)作業(yè)1的周轉(zhuǎn)時

43、間:10。作業(yè)2的周轉(zhuǎn)時間:13-1=12。作業(yè)3的周轉(zhuǎn)時間:17-2=15。平均周轉(zhuǎn)時間為:(10+12+15)/312.33(3)作業(yè)1的帶權(quán)周轉(zhuǎn)時間:10/10=1。作業(yè)2的帶權(quán)周轉(zhuǎn)時間:12/3=4。 作業(yè)3的帶權(quán)周轉(zhuǎn)時間:15/3=5。平均帶權(quán)周轉(zhuǎn)時間為:(1+4+5)/33.333、現(xiàn)有3個批處理作業(yè),第一個作業(yè)10:00到達,需要執(zhí)行2小時;第二個作業(yè)在10:10到達,需要執(zhí)行1小時;第三個作業(yè)在10:25到達,需要執(zhí)行25分鐘。分別采取如下3種作業(yè)調(diào)度算法:調(diào)度算法1:作業(yè)號到達時間開始執(zhí)行時間執(zhí)行結(jié)束時間110:0010:0012:00210:1012:0013:00310:

44、2513:0013:25調(diào)度算法2:作業(yè)號到達時間開始執(zhí)行時間執(zhí)行結(jié)束時間110:0011:5013:50210:1010:5011:50310:2510:2510:50調(diào)度算法3:作業(yè)號到達時間開始執(zhí)行時間執(zhí)行結(jié)束時間110:0010:0012:00210:1012:2513:25310:2512:0012:25 計算各調(diào)度算法下的作業(yè)平均周轉(zhuǎn)時間。 調(diào)度算法1,3分別采用的是什么作業(yè)調(diào)度算法?分析 作業(yè)的周轉(zhuǎn)時間作業(yè)完成時間作業(yè)提交時間。以調(diào)度算法1的作業(yè)2為例,其周轉(zhuǎn)時間=作業(yè)完成時間13:00作業(yè)提交時間10:10,得到結(jié)果為2小時50分鐘,轉(zhuǎn)換為小時為2.83小時。轉(zhuǎn)換的目的是為了方

45、便計算平均周轉(zhuǎn)時間。解:(1)采用調(diào)度算法1時:作業(yè)1的周轉(zhuǎn)時間為2小時;作業(yè)2的周轉(zhuǎn)時間為2.83小時;作業(yè)3的周轉(zhuǎn)時間為3小時;平均周轉(zhuǎn)時間為:(22.833)32.61小時。采用調(diào)度算法2時:作業(yè)1的周轉(zhuǎn)時間為3.83小時;作業(yè)2的周轉(zhuǎn)時間為1.67小時;作業(yè)3的周轉(zhuǎn)時間為0.42小時;平均周轉(zhuǎn)時間為:(3.83l.670.42)3l.97小時。采用調(diào)度算法3時:作業(yè)1的周轉(zhuǎn)時間為2小時;作業(yè)2的周轉(zhuǎn)時間為3.25小時;作業(yè)3的周轉(zhuǎn)時間為3小時;平均周轉(zhuǎn)時間為:(2+3.25+3)32.75小時。(2)調(diào)度算法1是先來先服務(wù)調(diào)度算法(FCFS);調(diào)度算法2是按照最短作業(yè)優(yōu)先算法(SJF)

46、;調(diào)度算法3是響應(yīng)比最高者優(yōu)先算法(HRRF)。4、設(shè)有一組作業(yè),它們的提交時間及運行時間如下所示:作業(yè)號提交時間運行時間(分鐘)18:007028:403038:501049:105試問在單CPU方式下,采用響應(yīng)比高者優(yōu)先調(diào)度算法,作業(yè)的執(zhí)行順序是什么?答1-3-4-25、在單CPU環(huán)境下,設(shè)有4道作業(yè),它們的提交時間及執(zhí)行時間(單位:小時)如下:作業(yè)號提交時間運行時間(分鐘)110.02.0210.21.0310.40.5410.50.3試計算采用先來先服務(wù)調(diào)度算法(FCFS)和最短作業(yè)優(yōu)先調(diào)度算法(SJF)時的平均周轉(zhuǎn)時間和平均帶權(quán)周轉(zhuǎn)時間,并指出它們的調(diào)度順序。平均帶權(quán)周轉(zhuǎn)時間=(完成

47、時間-提交時間)/執(zhí)行時間周轉(zhuǎn)時間=完成時間-開始時間答:若采用先來先服務(wù)調(diào)度算法,則其調(diào)度順序為1、2、3、4。作業(yè)號 提交時間 執(zhí)行時間 開始時間 完成時間 周轉(zhuǎn)時間 帶權(quán)周轉(zhuǎn)時間1 10.0 2.0 10.0 12.0 2.0 1.02 10.2 1.0 12.0 13.0 2.8 2.83 10.4 0.513.0 13.5 3.1 6.24 10.5 0.3 13.5 13.8 3.3 11.0平均周轉(zhuǎn)時間(2.02.83.l3.3)/42.8 平均帶權(quán)周轉(zhuǎn)時間(l.02.86.211.0)/45.25若采用短作業(yè)優(yōu)先調(diào)度算法,則其調(diào)度順序為1、4、3、2。作業(yè)號 提交時間 執(zhí)行時間 開始時間 完成時間 周轉(zhuǎn)時間 帶權(quán)周轉(zhuǎn)時間1 10.0 2.0 10.0 12.0 2.0 1.04 10.5 0.3 12.0 12.3 1.8 6.03 10.4 0.5 12.3 12.8 2.4 4.82 10.2 1.0 12.8 13.8 3.6 3.6 平均周轉(zhuǎn)時間(2.0l.82.43.6)/42.45 平均帶權(quán)周轉(zhuǎn)時間(1.064.83.6)/43.85是非題(正確的劃“”,錯誤的劃“”)( )1、在現(xiàn)代操作系統(tǒng)中,不允許用戶干

溫馨提示

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

評論

0/150

提交評論