


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、操作系統(tǒng)-習題-分章-詹煒(含答案)第一章 OS概述操作系統(tǒng):操作系統(tǒng)是控制和管理計算機硬件和軟件資源,合理地組織計算機的工作流程,以及方便用戶的程序的集合。其主要功能是實現(xiàn)處理機管理、內(nèi)存管理、I/O設(shè)備管理、文件管理和用戶接口。填空題1操作系統(tǒng)是運行在計算機裸機系統(tǒng)上的最基本的系統(tǒng)軟件。2. 操作系統(tǒng)目前有五大類型:批處理操作系統(tǒng)、分時操作系統(tǒng)、實時操作系統(tǒng)、網(wǎng)絡(luò)操作系統(tǒng)和分布式操作系統(tǒng)。3現(xiàn)代操作系統(tǒng)的兩個重要特征是并發(fā)和共享。4以多道程序設(shè)計為基礎(chǔ)的現(xiàn)代操作系統(tǒng)具有并發(fā)性、虛擬性、共享性、不確定性四個基本特征。5操作系統(tǒng)提供給編程人員的唯一接口是系統(tǒng)調(diào)用 。6現(xiàn)代操作系統(tǒng)的兩
2、個重要特征是并發(fā) 和共享。7計算機操作系統(tǒng)是方便用戶、管理和控制計算機 軟硬件資源 的系統(tǒng)軟件。8現(xiàn)代操作系統(tǒng)的兩個重要特征是并發(fā)和 共享 。9對于系統(tǒng)的總體設(shè)計目標來說,批處理系統(tǒng)應注重提高系統(tǒng)的效率,盡量增加系統(tǒng)的 吞吐量 ,分時系統(tǒng)應保證用戶 響應時間 ;而實時系統(tǒng)則應在保證及時響應和可靠性的前提下,再考慮系統(tǒng)資源的利用率。吞吐率 響應時間10計算機操作系統(tǒng)是方便用戶、管理和控制計算機系統(tǒng)資源的系統(tǒng)軟件。11在操作系統(tǒng)中的異步性主要是指在系統(tǒng)中進程推進的順序是走走停停。12. 現(xiàn)代操作系統(tǒng)的特征是并發(fā)、共享、虛擬和異步性。13.操作系統(tǒng)的五大功能是CPU管理、存儲管理、設(shè)備管理、文件系統(tǒng)
3、和用戶接口。14操作系統(tǒng)是運行在計算機基本硬件(或:硬件)系統(tǒng)上的最基本的系統(tǒng)軟件。 15.操作系統(tǒng)的主要設(shè)計目標是方便用戶使用或界面友好和系統(tǒng)能高效工作或資源利用率高。16. 操作系統(tǒng)的基本類型有批處理操作系統(tǒng),分時操作系統(tǒng)和實時操作系統(tǒng)三種。17在分時系統(tǒng)中,當用戶數(shù)目為100時,為保證響應時間不超過2秒,此時時間片最大應為20ms。分時系統(tǒng)采用的調(diào)度方法是時間片輪轉(zhuǎn)調(diào)度算法。2秒/100=20ms選擇題1. 實時操作系統(tǒng)追求的目標是( )。 A.高吞吐率 B.充分利用內(nèi)存 C. 快速響應 D. 減少系統(tǒng)開銷 2. 操作系統(tǒng)是為了提高計算機的1利用率和方便用戶使用計
4、算機而配置的基本軟件。它負責管理計算機系統(tǒng)中的2資源,其中包括3處理機,4主存儲器,外部設(shè)備和系統(tǒng)中的數(shù)據(jù)。操作系統(tǒng)中的3處理機管理部分負責對進程進行管理。操作系統(tǒng)對系統(tǒng)中的數(shù)據(jù)進行管理的部分通常叫做5數(shù)據(jù)庫系統(tǒng)。 供選擇的答案: 1 A、速度 B、利用率 C、靈活性 D、兼容性 2 A、程序 B、功能 C、資源 D、進程 3 F4A A、主存儲器 B、虛擬存儲器 C、運算器 D、控制器 E、微處理器 F、處理機 5 A、數(shù)據(jù)庫系統(tǒng) B、文件系統(tǒng) C、檢索系統(tǒng) D、數(shù)據(jù)庫 E、數(shù)據(jù)存儲系統(tǒng) F、數(shù)據(jù)結(jié)構(gòu) G、數(shù)據(jù)庫管理系統(tǒng) 3. 批處理系統(tǒng)的主要缺點是( )。 的利用率不高 B.失
5、去了交互性 C.不具備并行性 D.以上都不是 4. 操作系統(tǒng)是計算機系統(tǒng)的核心軟件。按功能特征的不同,可把操作系統(tǒng)分為1、2、3、網(wǎng)絡(luò)操作系統(tǒng)和分布式操作系統(tǒng)基本類型。其中1的主要目標是提高系統(tǒng)的吞吐率和效率,而2是一旦有處理請求和要求處理的數(shù)據(jù)時,CPU就應該立即處理該數(shù)據(jù)并將結(jié)果及時送回,例如4等。 供選擇的答案: 1B2E3C A、 單用戶系統(tǒng) B、批處理系統(tǒng) C、分時系統(tǒng) D、微機操作系統(tǒng) E、實時系統(tǒng) 4 A、計算機激光照排系統(tǒng) B、辦公自動化系統(tǒng) C、計算機輔助設(shè)計系統(tǒng) D、航空訂票系統(tǒng) 5. 現(xiàn)代操作系統(tǒng)的兩個基本特征是( ) 和資源共享。 A
6、.多道程序設(shè)計 B. 中斷處理 C.程序的并發(fā)執(zhí)行 D. 實現(xiàn)分時與實時處理 6. 以下( )項功能不是操作系統(tǒng)具備的主要功能。A內(nèi)存管理 B中斷處理 C文檔編輯 DCPU調(diào)度7. 批處理系統(tǒng)的主要缺點是( )。 的利用率不高 B.失去了交互性 C.不具備并行性 D.以上都不是 8. 在分時系統(tǒng)中,時間片一定時,( )響應時間越長A.內(nèi)存越多 B.用戶數(shù)越多 C.后備隊列 D.用戶數(shù)越少 9. 操作系統(tǒng)有多種類型:允許多個用戶以交互方式使用計算機的操作系統(tǒng),稱為 B ;允許多用戶將若干個作業(yè)提交給計算機系統(tǒng)集中處理的操作系統(tǒng),稱為 A ;在 C的控制下,計算機系統(tǒng)能及時
7、處理由過程控制反饋的數(shù)據(jù),并作出響應;在IBMPC機上的操作系統(tǒng)稱為 D 。A:批處理操作系統(tǒng); B:分時操作系統(tǒng); C:實時操作系統(tǒng);D:微機操作系統(tǒng);E:多處理機操作系統(tǒng); F:分布式操作系統(tǒng)10. 關(guān)于操作系統(tǒng)的敘述 是不正確的。 A“管理資源的程序”B“管理用戶程序執(zhí)行的程序” C“能使系統(tǒng)資源提高效率的程序”D“能方便用戶編程的程序”11()不是分時系統(tǒng)的基本特征A 同時性 B獨立性 C實時性 D交互12實時系統(tǒng)應具有兩個基本特征: 及時性和_.。A、虛擬性 B、同步性 C、可靠性 D、有效性13分時系統(tǒng)采用時間片輪轉(zhuǎn)算法,主要是為了解決_A、減小CPU空閑 B、縮短響應時間 C、增
8、加人機交互 D、提高吞吐率14分時系統(tǒng)追求的目標是( ).A、提高系統(tǒng)吞吐量 B、緩沖設(shè)備速度差異 C、提供設(shè)備獨立性 D、縮短響應時間15以下( )項功能是操作系統(tǒng)具備的主要功能A、內(nèi)存管理 B、中斷處理 C、文檔編輯 D、CPU調(diào)度16在操作系統(tǒng)的層次結(jié)構(gòu)中,( )是操作系統(tǒng)的核心部分,它位于最內(nèi)層。A存儲管理 B處理機管理 C設(shè)備管理 D作業(yè)管理17 UNIX操作系統(tǒng)是一個( )A交互式分時操作系統(tǒng) B多道批處理操作系統(tǒng) C實時操作系統(tǒng) D分布式操作系統(tǒng)18以下著名的操作系統(tǒng)中,屬于多用戶、分時系統(tǒng)的是( )。 ADOS系統(tǒng) BUNIX系統(tǒng) CWindows NT系統(tǒng) DOS2系統(tǒng)判斷題
9、操作系統(tǒng)提供了大量的服務,在最高層是系統(tǒng)調(diào)用,它允許正在運行的程序直接得到系統(tǒng)的服務(對)雖然分時系統(tǒng)也要求系統(tǒng)可靠,但實時系統(tǒng)對可靠性的要求更高。(對)操作系統(tǒng)是整個計算機系統(tǒng)的控制管理中心,它對其它軟件具有支配權(quán)利。因而,操作系統(tǒng)建立在其它軟件之上。(錯)第二章 進程管理填空題1當一個進程獨占處理器順序執(zhí)行時,具有兩個特性:封閉性和可再現(xiàn)性。 2進程由程度、數(shù)據(jù)和FCB組成。 3對信號量S的操作只能通過原語操作進行,對應每一個信號量設(shè)置了一個等待隊列。 4. 在操作系統(tǒng)中,進程是一個資源分配的基本單位,也是一個獨立運行和調(diào)度的基本單位。5. 在信號量機制中,信號量S > 0時的值表示
10、可用資源數(shù)目;若S < 0,則表示等待該資源的進程數(shù),此時進程應阻塞。6. 常用的進程通信方式有管道、共享存儲區(qū)、消息機制和郵箱機制。7. 正在執(zhí)行的進程等待I/O操作,其狀態(tài)將由執(zhí)行狀態(tài)變?yōu)樽枞麪顟B(tài)。8若干個事件在同一時刻發(fā)生稱為并行,若干個事件在同一時間間隔內(nèi)發(fā)生稱為并發(fā)。9進程間通信的方式有管道、共享存儲區(qū)和消息傳遞方式。10進程由程序、數(shù)據(jù)和PCB組成。11在生產(chǎn)者消費者問題中,消費者進程的兩個wait原語的正確順序為Wait(full);和wait(mutex);。12進程間通信的類型有:共享存儲區(qū)、管道機制、消息隊列和信箱機制。13進程和線程都是系統(tǒng)進行 資源分配和調(diào)度 的基
11、本單位,它們最大的區(qū)別在于 進程是具有一定獨bai立功能的程序關(guān)于某du個數(shù)據(jù)集合上的一次運行活動zhi,進程是系dao統(tǒng)進行資源分配和調(diào)度的一個獨立單位.線程是進程的一個實體,是CPU調(diào)度和分派的基本單位,它是比進程更小的能獨立運行的基本單位.一個進程可以包含多個線程 。14如果信號量的當前值為3,表示可用的資源數(shù)目為3,如果信號量的當前值為-3,則表示示 3 個進程進入阻塞狀態(tài)。15如果信號量的當前值為4,則表示 可用的資源數(shù)目為4 ,如果信號量的當前值為-4,則表示4 個進程進入阻塞狀態(tài) 。16在操作系統(tǒng)中進程是一個擁有資源的單位,也是一個調(diào)度和執(zhí)行的基本單位。17.一次只允許一個進程訪
12、問的資源叫臨界資源。18操作系統(tǒng)中,進程可以分為系統(tǒng)進程和用戶進程兩類。19當一個進程獨占處理器順序執(zhí)行時,具有兩個特性:封閉性和可再現(xiàn)性。 20對信號量S的操作只能通過P、V操作進行,對應每一個信號量設(shè)置了一個等待隊列。 21進程由程度、數(shù)據(jù)集合、進程控制塊及相關(guān)表格組成。 22.當一個進程完成了特定的任務后,系統(tǒng)收回這個進程所占的工作區(qū)或主存空間或資源和取消該進程的進程控制塊(PCB)就撤消了該進程。23.在操作系統(tǒng)中進程和線程的區(qū)別是:擁有資源。24進程由程序、數(shù)據(jù)和 數(shù)據(jù)處理模塊 組成。25當一個進程獨占處理器順序執(zhí)行時,具有兩個特性:封閉性 可再現(xiàn)性26在單CPU系統(tǒng)中有n(n>
13、;1)個進程,在任一時刻處于就緒的進程最多是_n-1_個,最少是_0_個。27進程通信中的消息通信是通過_發(fā)送原語_和_接收原語_兩個原語來實現(xiàn)的。28在消息緩沖通信方式中通信的基本方式是 消息_。選擇題1共享變量是指( )訪問的變量。 A、只能被系統(tǒng)進程 B、只能被多個進程互斥 C、只能被用戶進程 D、可被多個進程 2臨界區(qū)是指并發(fā)進程中訪問共享變量的( )段。 A、管理信息 B、信息存儲 C、數(shù)據(jù) D、程序 3若系統(tǒng)中有五臺繪圖儀,有多個進程均需要使用兩臺,規(guī)定每個進程一次僅允許申請一臺,則至多允許( )個進程參于競爭,而不會發(fā)生死鎖。 A、5 B、2 C、3 D、4 4 .我們把在一段時
14、間內(nèi),只允許一個進程訪問的資源,稱為臨界資源,因此,我們可以得出下列論述,正確的論述為 。A:對臨界資源是不能實現(xiàn)資源共享的。B:只要能使程序并發(fā)執(zhí)行,這些并發(fā)執(zhí)行的程序便可對臨界資源實現(xiàn)共享。C:為臨界資源配上相應的設(shè)備控制塊后,便能被共享。D:對臨界資源,應采取互斥訪問方式,來實現(xiàn)共享。5. 對于記錄型信號量,在執(zhí)行一次P操作時,信號量的值應當 C ;在執(zhí)行V操作時,信號量的值應當 B 。A:不變; B:加1; C:減1; D:加指定數(shù)值; E:減指定數(shù)值。6. 引入多道程序的目的在于( )。 A. 充分利用CPU,減少CPU等待時間 B.&
15、#160; 提高實時響應速度 C. 有利于代碼共享,減少主、輔存信息交換量 D 充分利用存儲器 7 在消息緩沖通信方式中通信的基本方式是_。 A、文件 B、消息 C、記錄 D、字段8 進程是程序的執(zhí)行過程,可以處于不同的狀態(tài),這種性質(zhì)稱作進程的( )。A、動態(tài)性 B、并發(fā)性 C、調(diào)度性 D、異步性9如果信號量S的值是0,此時進程A執(zhí)行wait(S)操作,那么,進程A會( )A、繼續(xù)運行 B、進入阻塞態(tài),讓出CPUC、進入就緒態(tài),讓出CPU D、繼續(xù)運行,并喚醒S隊列頭上的等待進程10原語是一種特殊的系統(tǒng)調(diào)用命令,它的特點是
16、( )A、功能強 B、自己調(diào)用自己 C、可被外層調(diào)用 D、執(zhí)行時不可中斷11程序在運行時需要很多系統(tǒng)資源,如內(nèi)存、文件、設(shè)備等,因此操作系統(tǒng)以程序為單位分配系統(tǒng)資源。(對12原語是一種特殊的系統(tǒng)調(diào)用命令,它的特點是( )A、功能強 B、自己調(diào)用自己 C、可被外層調(diào)用 D、執(zhí)行時不可中斷13在操作系統(tǒng)中,進程的最基本的特征是( )。A動態(tài)性和并發(fā)性 B順序性和可再現(xiàn)性 C與程序的對應性 D執(zhí)行過程的封閉性14下面關(guān)于線程的敘述中,正確的是( )。A.不論是系統(tǒng)支持線程還是用戶級線程,其切換都需要內(nèi)核的支持。 B.線程是資源的分配單位,進程是調(diào)度和分配的單位。C.不管系統(tǒng)中是否有線程,進程都是擁有
17、資源的獨立單位。 D.在引入線程的系統(tǒng)中,進程仍是資源分配和調(diào)度分派的基本單位。15處于運行狀態(tài)的操作系統(tǒng)程序應放在( )A寄存器中 B高速緩沖存儲器中 C主存儲器中 D輔助存儲器中16引入進程的原因是( ) A提高資源的利用率和控制程序的執(zhí)行 B提高資源的利用率和正確描述程序的執(zhí)行情況 C提高程序的執(zhí)行速度和控制程序的執(zhí)行 D提高程序的執(zhí)行速度和正確描述程序的執(zhí)行情況判斷題(×)1并發(fā)性是指若干事件在同一時刻發(fā)生。(×)2用戶為每個自己的進程創(chuàng)建PCB,并控制進程的執(zhí)行過程。()3原語是一種不可分割的操作。(×)4線程是最小的擁有資源的單位。(×)5進
18、程可以刪除自己的PCB表。()6執(zhí)行原語時不會響應任何中斷。()7對臨界資源應采取互斥訪問方式來實現(xiàn)共享。(×)8并發(fā)性是指若干事件在同一時刻發(fā)生。(對) 9并發(fā)性是指若干進程在一段時間內(nèi)都往前推進了一段,給用戶同時執(zhí)行的感覺,但微觀上還是串行的。(對 )10進程是最小的擁有資源的單位。()11執(zhí)行原語時不會響應任何中斷。(×)12用戶為每個自己的進程創(chuàng)建PCB,并控制進程的執(zhí)行過程。(錯 )13 PCB是由操作系統(tǒng)初啟時在一次創(chuàng)建的,它形成PCB池,由進程創(chuàng)建原語分配使用(×)14執(zhí)行原語時有跟高優(yōu)先級的進程要執(zhí)行時它將被中斷。( 對 )15在進程狀態(tài)的轉(zhuǎn)換中,
19、從就緒態(tài)轉(zhuǎn)換到阻塞態(tài)是不可能實現(xiàn).( 錯 )16進程之間的互斥,主要源于進程之間的資源競爭,從而實現(xiàn)多個相關(guān)進程在執(zhí)行次序上的協(xié)調(diào)。( 錯 )17進程從運行狀態(tài)變?yōu)樽枞麪顟B(tài)的原因是輸入或輸出事件發(fā)生。( 錯 )18進程A和進程B都要使用系統(tǒng)中同一臺打印機,為了保證打印結(jié)果的正確性,兩個進程要先后分別使用打印機,這屬于進程的同步關(guān)系。簡答題1.原語:它是由若干條機器指令所構(gòu)成,用以完成特定功能的一段程序,為保證其操作的 正確性,它應當是原子操作,即原語是一個不可分割的操作。2.進程:進程是程序在一個數(shù)據(jù)集合上的運行過程,是系統(tǒng)進行資源分配和調(diào)度的一個獨立的基本單位。:系統(tǒng)中存放進程的管理和控制信
20、息的數(shù)據(jù)結(jié)構(gòu)稱為進程控制塊(PCB Process Control Block),它是進程實體的一部分,是操作系統(tǒng)中最重要的記錄性數(shù)據(jù)結(jié)構(gòu)。它是進程管理和控制的最重要的數(shù)據(jù)結(jié)構(gòu),每一個進程均有一個PCB,在創(chuàng)建進程時,建立PCB,伴隨進程運行的全過程,直到進程撤消而撤消4.簡述進程的幾種狀態(tài)和引起狀態(tài)轉(zhuǎn)換的典型原因,以及相關(guān)的操作原語。進程的基本狀態(tài)有:新、就緒,阻塞,執(zhí)行、掛起和終止六種。新到就緒:交換,創(chuàng)建原語就緒到執(zhí)行:進程調(diào)度 執(zhí)行到阻塞:I/O請求,阻塞原語阻塞到就緒:I/O完成,喚醒原語執(zhí)行到就緒:時間片完阻塞到掛起:掛起原語掛起到就緒:喚醒原語執(zhí)行到終止:進程執(zhí)行完畢6在生產(chǎn)者消
21、費者問題中,能否將生產(chǎn)者進程的wait(empty)和wait(mutex)語句互換,為什么?不能。(2分)因為這樣可能導致系統(tǒng)死鎖。當系統(tǒng)中沒有空緩沖時,生產(chǎn)者進程的wait(mutex)操作獲取了緩沖隊列的控制權(quán),而wait(empty) 導致生產(chǎn)者進程阻塞,這時消費者進程也無法執(zhí)行。(3分)7不同用戶的不同任務之間的進程是有臨界區(qū)為什么請舉例說明。答:完全可能有臨界區(qū),如打印程序是可以由不同用戶的不同進程使用,但是只能有一個進程在某一時刻進入。8.什么是進程什么是線程線程與進程有什么關(guān)系 答:進程是程序關(guān)于某個數(shù)據(jù)集的一次運行,一個程序多次運行可以形成多個進程。線程是系統(tǒng)處理機調(diào)度的單元
22、,是進程為了爭奪處理機而產(chǎn)生一個進程至少有一個主線程,隨著業(yè)務的需要,它可以創(chuàng)建多個線程,它們是進程的多個線程,共享進程的資源,但替進程爭取處理機9.信號量一般是由哪些成員組成的它的值表示什么含義組成:一個整數(shù):表示資源量的數(shù)目 一個隊列:存放等待資源而阻塞的進程隊列的隊首進程同步程序題1 假設(shè)有三個進程R、W0、W1共享一個緩沖區(qū)B,而B中一次只能存放一個數(shù)據(jù)。進程R從輸入設(shè)備上讀數(shù)據(jù)送緩沖區(qū)B,若存放的數(shù)是偶數(shù),則允許W0將其取出并打印;若存放的數(shù)是奇數(shù),則允許W1將其取出并打印。試利用信號量和wait、signal操作寫出實現(xiàn)這三個進程能同步工作的程序。(要求說明所設(shè)信號量的作用及初值)
23、解:Var empty , full1 , full2 := semaphore := 1 , 0 , 0 ; 進程 A1,A2,An 通過 K 個緩沖區(qū)向進程 B1,B2,Bm 不斷地發(fā)送消息。發(fā)送和接收工作遵循如下規(guī)則:每個發(fā)送進程一次發(fā)送一個消息,寫入緩沖區(qū),緩沖區(qū)大小與消息長度一致;對每個消息,B1,B2,Bm 都需接收一次,讀入各自的數(shù)據(jù)區(qū)內(nèi);K 個緩沖區(qū)都滿時,發(fā)送進程等待,沒有可讀的消息時,接收進程等待。試用 wait 和 signal 原語操作組織正確的發(fā)送和接收操作。(10分)解:BEGIN Integer Mutex, Availn, Fullm; Integer I;Mu
24、tex:=1;FOR i:=1 TO m DOBEGIN AvailI := k; FullI := 0;ENDPROCEDURE Send(K)Integer I;BEGIN7. Jruassic 公園有一個恐龍博物館和一個公園.有m個旅客和n輛車,每輛車只能容納一個旅客。旅客在博物館逛了一會兒,然后排隊乘坐旅行車。當一輛車可用時,它載入一個旅客,然后繞公園行駛?cè)我忾L的時間。如果n輛車都已被旅客乘坐游玩,則想坐車的旅客需要等待;如果一輛車已經(jīng)就緒,但沒有旅客等待,那么這輛車等待。使用信號量同步m個旅客和n輛車的進程。(10分)解:visitors=m;cars=n;mutex=1;Pvi()
25、Pci() repeat repeat wait(cars);wait(visitors); wait(mutex); wait(mutex); get on;start; travell;run; get off;stop; signal(cars); signal(visitors); wait(mutex); wait(mutex); until false; until false;8.讀者與寫者問題 (reader - writer problems ) (10分) 在計算機體系中,對一個共享文件進行操作的進程可分為兩類:讀操作和寫操作,它們分別被稱為讀者和寫者。訪問該文件時讀者和寫
26、者,寫者和寫者間必須實現(xiàn)互斥。只有在沒有讀者訪問文件時,寫者才允許修改文件?;蛘邔懻咴谛薷奈募r不允許讀者去讀,否則會造成讀出的文件內(nèi)容不正確。試寫出算法描述讀者和寫者的問題。解: 為了實現(xiàn)讀者與寫者的同步和互斥,我們設(shè)置一個信號量S,用于讀者與寫者之間或?qū)懻吲c讀者之間的互斥,初值為“1”。用一個變量rc 表示當前正在讀的讀者個數(shù),當進程可以去讀或讀結(jié)束后都要改變rc 的值,因此rc 又成為若干讀進程的共享變量,它們必須互斥地修改rc。故必須定義另一個用于互斥的信號量Sr,初值也是“1”。讀者-寫者問題可描述如下: S, Sr:semaphore; int rc = 0; S=Sr=1;pro
27、cess Reader I (i=1,2,.,m) process Writer j (j=1,2,.,k)begin begin P(Sr); rc = rc+1; P(S); if (rc=1) P(S); Write file F; V(Sr); V(S); read file F; end P(Sr); rc = tc-1; if (rc=0) V(S); V(Sr);end9、生產(chǎn)者和消費者問題 (10分)有一組生產(chǎn)者P1,P2,PM和一組消費者C1,C2,CK,他們通過由n個環(huán)形緩沖區(qū)構(gòu)成的緩沖池進行通信,生產(chǎn)者把產(chǎn)品放入緩沖區(qū),消費者從緩沖區(qū)取產(chǎn)品來消費。請用wait和signa
28、l原語實現(xiàn)他們的同步操作。解:生產(chǎn)者和消費者問題begin Var mutex,empty,full:semaphore:=1,n,0; buffer:array0,n-1 of item; in,out:integer := 0,0;parbegin producer: beginrepeatproduce next product ;wait (empty);wait (mutex);buffer(in):=nextp ;in := (in+1) mod n ;signal (full);signal (mutex);until false ;endconsumer: begin repe
29、atwait (full);wait (mutex);nextc := buffer(out);out := (out+1) mod n;signal (empty);signal (mutex);consume the item in nextc;until false ;endparendend10、請用信號量描述哲學家進餐問題。(15分)解:哲學家進餐問題(15分)public void philosopher (int i) while (true) think();wait (forki);wait (fork (i+1) % 5);eat();signal(fork (i+1) %
30、 5);signal(forki);11今有三個并發(fā)進程R,M,P,它們共享了一個可循環(huán)使用的緩沖區(qū)B,緩沖區(qū)B共有N個單元。進程R負責從輸入設(shè)備讀信息,每讀一個字符后,把它存放在緩沖區(qū)B的一個單元中;進程M負責處理讀入的字符,若發(fā)現(xiàn)讀入的字符中有空格符,則把它改成“,”;進程P負責把處理后的字符取出并打印輸出。當緩沖區(qū)單元中的字符被進程P取出后,則又可用來存放下一次讀入的字符。請用PV操作為同步機制寫出它們能正確并發(fā)執(zhí)行的程序。 (10分)解:(10分)begin Var mutex,input,calculate,output:semaphore:=1,n,0,0; buffer:arra
31、y0,n-1 of item; in,mid,out:integer := 0,0,0;proR() do wait (input);wait (mutex);buffer(in):=input data;in := (in+1) mod n ;signal (calculate);signal (mutex);while true ; proM() do wait (calculate);wait (mutex);buffer(middle):=calculate data ;mid := (mid+1) mod n ;signal (output);signal (mutex); whil
32、e true ; proP() do wait (output);wait (mutex);buffer(out):=calculate data ;out := (out+1) mod n ;signal (input);signal (mutex); while true ; 12.理發(fā)店里有一位理發(fā)師、一把理發(fā)椅子和五把供等候理發(fā)的顧客坐的椅子。如果沒有顧客,理發(fā)師便在理發(fā)椅上睡覺。當一個顧客到來時,他必須先叫醒理發(fā)師,如果理發(fā)師正在理發(fā)時又有顧客來到,而如果有空椅子可坐,他們就坐下來等,如果沒有空椅子,他就離開。這里的問題是為理發(fā)師和顧客各編寫一段程序來描述他們行為,并用wait和si
33、gnal原語操作實現(xiàn)其同步。(10分)解:理發(fā)師問題 #define CHAIRS 5 /*為等候的顧客準備椅子數(shù)*/ typedef int semaphore; /* 運用你的想像力*/ semphore customers=0; /*等候服務的顧客數(shù)*/ semaphore barbers=0 /*等候服務的理發(fā)師數(shù)*/ semaphore mutex=1; /*用于互斥*/int waiting=0; /*還沒理發(fā)的等候顧客*/ void barber (void) while(TRUE) wait(customers); /*如果顧客數(shù)是0,則睡覺*/ wait(mutex); /*
34、要求進程等候*/ waiting=waiting-1; /*等候顧客數(shù)減1*/ signal(barbers); /*一個理發(fā)師現(xiàn)在開始理發(fā)*/ signal(mutex); /*釋放等候*/cut_hair(); /*理發(fā)(非臨界區(qū)操作)*/ void customers (void) wait(mutex);if (waiting<CHAIRS) waiting=waiting+1;signal(customers);signal(mutex);wait(barbers); else signal(mutex); 13、根據(jù)如下的前趨圖寫出可并發(fā)執(zhí)行的程序:(10分)1234567解
35、:(10)評分:變量、進程、程序主體每項一分。var a,b,c,d,e,f,g,h,i:semaphore := 0,0,0,0,0,0,0,0;beginparbegin begin S1;signal(a); signal(b); end begin wait(a); S2; signal(c);signal(d); end begin wait(c); S3; signal(e);signal(f); end begin wait(b); S4; signal(g); end begin wait(d);wait(e) S5; signal(h); end begin wait(f);
36、 wait(g); S6 ; signal(i); end begin wait(h); wait(i); S7; endparendend14、某車站售票廳,任何時刻最多可容納20名購票者進入,當售票廳中少于20名購票者時,則廳外的購票者可立即進入,否則需在外面等待。若把一個購票者看作一個進程,請回答下列問題:(1)用wait和signal操作管理這些并發(fā)進程時,應怎樣定義信號量,寫出信號量的初值以及信號量各種取值的含義。(2)根據(jù)所定義的信號量,加上wait和signal原語,寫出購票者進程的算法,以保證進程能夠正確地并發(fā)執(zhí)行。 (3)若欲購票者最多為n個人,寫出信號量可能的變化范圍(最大
37、值和最小值)。解:(1)定義一信號量S,初始值為20。意義:S>0S的值表示可繼續(xù)進入售 票廳的人數(shù)S=0表示售票廳中已有20名顧 客(購票者) S<0|S|的值為等待進入售票 廳的人數(shù)(2) int S=20; COBEGINPROCESSPI(I=1,2,) begin進入售票廳; wait(S);購票;signal(S);退出; end; COEND(3)S的最大值為20 S的最小值為20n第三章 處理解調(diào)度與死鎖1死鎖:指多個進程因競爭資源二造成的一種僵局,若無外力的作用,這些進程將永遠不能再向前推進。2在響應比最高者優(yōu)先的作業(yè)調(diào)度算法中,當各個作業(yè)等待時間相同時,運行時間
38、短的作業(yè)將得到優(yōu)先調(diào)度;當各個作業(yè)要求運行的時間相同時,等待時間長的作業(yè)得到優(yōu)先調(diào)度。 3有三個同時到達的作業(yè)J1,J2和J3,它們的執(zhí)行時間分別是T1,T2和T3,且T1<T2<T3。系統(tǒng)按單道方式運行且采用短作業(yè)優(yōu)先算法,則平均周轉(zhuǎn)時間是(3*T1+2*T2+T3)/3。4一個作業(yè)從進入系統(tǒng)到運行結(jié)束,一般要經(jīng)歷“后備”、“執(zhí)行”和“完成”三個 不同狀態(tài)。 5在批處理兼分時的系統(tǒng)中,往往由分時系統(tǒng)控制的作業(yè)稱為前臺作業(yè),而由批處理系統(tǒng)控制的作業(yè)稱為后臺作業(yè)。 6.一個理想的作業(yè)調(diào)度算法應該是既能提高系統(tǒng)效率或吞吐量高 及時得到計算結(jié)果又能使進入系統(tǒng)的作業(yè)周轉(zhuǎn)時間短等_。7產(chǎn)生死
39、鎖的四個必要條件是互斥條件和請求和保持,不剝奪條件和環(huán)路條件。8在響應比最高者優(yōu)先的作業(yè)調(diào)度算法中,當各個作業(yè)等待時間相同時,運行時間短的作業(yè)將得到優(yōu)先調(diào)度;當各個作業(yè)要求運行的時間相同時,等待時間長的作業(yè)得到優(yōu)先調(diào)度。9設(shè)單CPU環(huán)境下,有三道作業(yè),它們的提交時間及運行時間如下表:作業(yè)提交時間(單位:基本時間單位)運行時間(單位:基本時間單位)J1J2J3023742若采用短作業(yè)優(yōu)先調(diào)度策略,作業(yè)單道串行運行時的調(diào)度次序為J1,J3,J2,平均周轉(zhuǎn)時間=8。10系統(tǒng)為一個有6頁的進程分配4個物理塊,其頁表如下所示(時間單位:滴答),頁的大小為1K,請計算邏輯地址為0x17C8的物理地址。頁號
40、塊號裝入時間 上次引用時間 R(讀) M(修改)0 7126279 0014230 2601 022120 272 1 139160 280 1 111按CLOCK算法為0x03C8;按FIFO算法為0x0BC8;按LRU算法為0x07C8。12用戶要求計算機系統(tǒng)所做的工作的集合稱為作業(yè)。 13一作業(yè)進入內(nèi)存后,則所屬該作業(yè)的進程初始時處于( )狀態(tài)。 A、運行 B、等待 C、就緒 D、收容 14運行時間最短的作業(yè)被優(yōu)先調(diào)度,這種企業(yè)調(diào)度算法是( ) A 優(yōu)先級調(diào)度 B 響應比高者優(yōu)先 C 短作業(yè)優(yōu)先 D 先來先服務 15產(chǎn)生死鎖的主要原因是進程運行推進的順序不合適( ) A 系統(tǒng)資源不足和系
41、統(tǒng)中的進程太多 B 資源的獨占性和系統(tǒng)中的進程太多 C 進程調(diào)度不當和資源的獨占性 D 資源分配不當和系統(tǒng)資源不足16 B 是指從作業(yè)進入系統(tǒng)到作業(yè)完成所經(jīng)過的時間間隔; D 是從作業(yè)進入后備隊列起,到被調(diào)度程序選中時的時間間隔。A:響應時間;B:周轉(zhuǎn)時間;C:運行時間;D:等待時間;F:觸發(fā)時間。17產(chǎn)生死鎖的四個必要條件是互斥條件和 (1) ,不剝奪條件和 (2) 。(1) A:請求和阻塞條件; B:請求和釋放條件;C:請求和保持條件; D:釋放和阻塞條件;E:釋放和請求條件。(2) A:線性增長條件; B:環(huán)路條件;C:有序請求條件; D:無序請求條件。18CPU的調(diào)度分為高級、中級和低
42、級三種,其中低級調(diào)度是指 調(diào)度。A:作業(yè)B:交換C:進程19為了對緊急進程或重要進程進行調(diào)度,調(diào)度算法應采用( )。 A.先進先出調(diào)度算法 B. 優(yōu)先數(shù)法 C.最短作業(yè)優(yōu)先調(diào)度 D. 定時輪轉(zhuǎn)法 20我們?nèi)绻麨槊恳粋€作業(yè)只建立一個進程,則為了照顧短作業(yè)用戶,應采用 B ;為照顧緊急作業(yè)用戶,應采用 E ,為能實現(xiàn)人機交互作用應采用 C ,而能使短作業(yè),長作業(yè)及交互作業(yè)用戶都比較滿意時,應采用 D 。A: FCFS調(diào)度算法;B:短作業(yè)優(yōu)先調(diào)度算法;C:時間片輪轉(zhuǎn)法;D:多級反饋隊列調(diào)度算法;E:基于優(yōu)先權(quán)的剝奪調(diào)度算法;F:響應比優(yōu)先算法。21 產(chǎn)生死鎖的基本原因是 (1) 和 (2) 。(1)
43、 A:資源分配不當;B:系統(tǒng)資源不足;C:作業(yè)調(diào)度不當;D:資源的獨占性。(2) A:進程推進順序非法;B:進程調(diào)度不當;C:系統(tǒng)中進程太多;D:CPU運行太快。22 產(chǎn)生死鎖的四個必要條件是互斥條件和 (1) ,不剝奪條件和 (2) 。(1) A:請求和阻塞條件; B:請求和釋放條件;C:請求和保持條件;D:釋放和阻塞條件;E:釋放和請求條件。(2) A:線性增長條件;B:環(huán)路條件;C:有序請求條件;D:無序請求條件。23一作業(yè)8:00到達系統(tǒng),估計運行時間為1小時,若10:00開始執(zhí)行該作業(yè),其響應比是 。產(chǎn)生系統(tǒng)死鎖的原因可能是由于( )。 A、進程釋放資源 B、一個進程進入死循環(huán) C、
44、多個進程競爭,資源出現(xiàn)了循環(huán)等待 D、多個進程競爭共享型設(shè)備 25一個作業(yè)從提交開始到完成,往往要經(jīng)歷_高級_、_中級_和_低級_三級調(diào)度。26在響應比高者優(yōu)先的作業(yè)調(diào)度算法中,當各個作業(yè)等待時間相同時, 的作業(yè)將得到優(yōu)先調(diào)度;當各個作業(yè)要求運行的時間相同時, 的作業(yè)得到優(yōu)先調(diào)度。運行時間短 等待時間長27引起死鎖的四個必要條件是_互斥_、保持和等待、_不剝奪_、循環(huán)等待。28對待死鎖,一般應考慮死鎖的預防、避免、檢測和解除四個問題。典型的銀行家算法是屬于_避免_,破壞環(huán)路等待條件是屬于預防,而剝奪資源是_解除_ 的基本方法。 29避免死鎖的一個著名算法是( )A、先入先出算法 B、銀行家算法
45、 C、優(yōu)先級算法 D、資源按序分配法( T )確定作業(yè)調(diào)度算法時應主要考慮系統(tǒng)資源的均衡使用,使I/O繁忙型作業(yè)和CPU繁忙型作業(yè)搭配運行。( T )動態(tài)優(yōu)先級算法允許進程的優(yōu)先級在運行期間不斷改變。( T )作業(yè)調(diào)度往往選擇對資源需求不同的作業(yè)進行合理搭配,使得系統(tǒng)中個部分資源都得到均衡利用。( T )時間片輪轉(zhuǎn)法主要用于分時系統(tǒng)中的進程調(diào)度。優(yōu)先數(shù)是進程調(diào)度的重要依據(jù), 一旦確定不能改變。( T )在進行作業(yè)調(diào)度時,要想兼顧作業(yè)等待時間和計算時間,應選取響應比高者優(yōu)先算法。( T )作業(yè)調(diào)度選擇一個作業(yè)裝入主存后,該作業(yè)能否占用處理器必須由作業(yè)控制來決定。( F )進程申請CPU得不到滿足
46、時, 其狀態(tài)變?yōu)榈却龖B(tài)。( T )進程得不到處理機,則進入到就緒隊列,等待進程調(diào)度進程所請求的一次打印輸出結(jié)束后,將使進程狀態(tài)從( ) A、運行態(tài)變?yōu)榫途w態(tài) B、運行態(tài)變?yōu)榈却龖B(tài) C、就緒態(tài)變?yōu)檫\行態(tài) D、等待態(tài)變?yōu)榫途w態(tài) 運行時間最短的作業(yè)被優(yōu)先調(diào)度,這種作業(yè)調(diào)度算法是( ) A 優(yōu)先級調(diào)度 B 響應比高者優(yōu)先 C 短作業(yè)優(yōu)先 D先來先服務 CPU的調(diào)度分為高級、中級和低級三種,其中低級調(diào)度是指( ) 調(diào)度。A.作業(yè) B.交換 C.進程 D. 線程產(chǎn)生系統(tǒng)死鎖的原因可能是由于( )。 A、進程釋放資源 B、一個進程進入死循環(huán) C、多個進程競爭,資源出現(xiàn)了循
47、環(huán)等待 D、多個進程競爭共享型設(shè)備1進程的優(yōu)先級調(diào)度中經(jīng)常考慮哪些因素它們與優(yōu)先級的關(guān)系是什么答:進程優(yōu)先級調(diào)度中需要考慮如何確定優(yōu)先級。靜態(tài)優(yōu)先級與進程類型、進程對資源的請求、用戶要求三者相關(guān),系統(tǒng)進程比用戶進程擁有更高的優(yōu)先級,對資源需求少的進程具有更高的優(yōu)先級,用戶付費高的具有高優(yōu)先級。動態(tài)優(yōu)先級的高低與等待時間和需要服務的時間有關(guān),等待時間越長、要求服務時間越短,優(yōu)先級越高;反之越低。2假定有四個作業(yè),它們到達后備隊列的時間和估計運行時間如下圖所示:作業(yè)到達時間估計運行時間18:00 小時28:30 小時39:00 小時49:30 小時回答下列問題(要求給出過程) 采用FCFS調(diào)度算法
48、時,作業(yè)的平均周轉(zhuǎn)時間是多少? 采用最短作業(yè)優(yōu)先調(diào)度算法時,作業(yè)的平均周轉(zhuǎn)時間是多少?FCFS:作業(yè)到達運行開始完成周轉(zhuǎn)帶權(quán)周轉(zhuǎn)18:008:009:15128:309:1510:4539:0010:4511:1549:3011:1513:15平均周轉(zhuǎn)時間 t=平均帶權(quán)周轉(zhuǎn)時間 w=SJF:作業(yè)到達運行開始完成周轉(zhuǎn)帶權(quán)周轉(zhuǎn)18:008:009:15128:309:4511:1539:009:159:4549:3011:1513:15平均周轉(zhuǎn)時間 t=平均帶權(quán)周轉(zhuǎn)時間 w=3處理機調(diào)度分為哪三級?各自的主要任務是什么?答:作業(yè)調(diào)度:從一批后備作業(yè)中選擇一個或幾個作業(yè),給它們分配資源,建立進程,掛
49、入就緒隊列。執(zhí)行完后,回收資源。進程調(diào)度:從就緒進程隊列中根據(jù)某個策略選取一個進程,使之占用CPU。交換調(diào)度:按照給定的原則和策略,將外存交換區(qū)中的進程調(diào)入內(nèi)存,把內(nèi)存中的非執(zhí)行進程交換到外存交換區(qū)中。4什么是高級調(diào)度、中級調(diào)度和低級調(diào)度?答:作業(yè)調(diào)度:從一批后備作業(yè)中選擇一個或幾個作業(yè),給它們分配資源,建立進程,掛入就緒隊列。執(zhí)行完后,回收資源。進程調(diào)度:從就緒進程隊列中根據(jù)某個策略選取一個進程,使之占用CPU。交換調(diào)度:按照給定的原則和策略,將外存交換區(qū)中的進程調(diào)入內(nèi)存,把內(nèi)存中的非執(zhí)行進程交換到外存交換區(qū)中。5什么是死鎖產(chǎn)生死鎖的四個必要條件是什么死鎖:當某進程提出資源申請后,使得系統(tǒng)中
50、一些進程處于無休止的阻塞狀態(tài),在無外力作用下,永遠不能再繼續(xù)前進。產(chǎn)生死鎖的必要條件:互斥條件:某段時間內(nèi)某資源只能由一個進程使用。不剝奪條件:資源在未使用完前,不能被剝奪,由使用進程釋放。部分分配(請求和保持):進程因請求資源而阻塞時,對已分配給它的資源保持不放。環(huán)路條件:發(fā)生死鎖時,有向圖必構(gòu)成一環(huán)路。6設(shè)系統(tǒng)有三種類型的資源,數(shù)量為(4,2,2),系統(tǒng)中有進程A,B,C按如下順序請求資源: 進程A申請(3,2,1) 進程B申請(1,0,1) 進程A申請(0,1,0) 進程C申請(2,0,0)請你給出一和防止死鎖的資源剝奪分配策略,完成上述請求序列,并列出資源分配過程,指明哪些進程需要等待,哪些資源被剝奪。(10分)解:(10分
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 幼兒園實習老師聘用合同協(xié)議
- 區(qū)域戰(zhàn)略合作框架合同
- 房屋買賣合同補充協(xié)議書
- 企業(yè)短期借款合同協(xié)議
- 裝飾裝修材料供需合同范本
- 廣告公司員工培訓合同范本
- 水資源綜合利用工程合同書
- 道路交通事故雙方和解合同書
- 農(nóng)業(yè)觀光園土地租賃合同
- 小學生每日教育課件
- 資產(chǎn)運營總經(jīng)理崗位職責
- 2024-2025學年新教材高中英語 Unit 6 Earth first理解 課文精研讀教案 外研版必修第二冊
- 110kV變電站專項電氣試驗及調(diào)試方案
- 2024時事政治必考試題庫(預熱題)
- DZ∕T 0215-2020 礦產(chǎn)地質(zhì)勘查規(guī)范 煤(正式版)
- 威圖電柜空調(diào)SK3304500使用說書
- 品質(zhì)部組織架構(gòu)圖構(gòu)
- 《無損檢測》緒論
- 中藥飲片的銷售方案
- 2024年湖南省普通高中學業(yè)水平考試政治試卷(含答案)
- 《創(chuàng)意設(shè)計》課程標準
評論
0/150
提交評論