




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
PAGEPAGE22014級-信息專業(yè)-OS-部分試題精編一、單項選擇題(每小題1分共30分)操作系統(tǒng)是計算機系統(tǒng)中必不可少的一個,它是程序模塊的集合,用于管理和控制軟硬件資源、組織工作流程,提供功能強大、使用方便和可擴充的工作環(huán)境,在計算機與用戶間起到接口的作用。
A.系統(tǒng)軟件 B.應(yīng)用軟件 C.管理軟件 D.控制軟件的主要特點是提供即時響應(yīng)和高可靠性。生產(chǎn)過程的控制、武器系統(tǒng)、航空訂票系統(tǒng)、銀行業(yè)務(wù)就是這樣的系統(tǒng)。
A.分時系統(tǒng) B.實時系統(tǒng) C.批處理系統(tǒng) D.分布式系統(tǒng)是操作系統(tǒng)中最重要、最基本的概念之一,它是系統(tǒng)分配資源的基本單位,是一個具有獨立功能的程序段對某個數(shù)據(jù)集的一次執(zhí)行活動。
A.程序 B.作業(yè) C.進程 D.線程從作業(yè)交給系統(tǒng)到作業(yè)完成的時間間隔叫做。
A.周轉(zhuǎn)時間B.響應(yīng)時間C.運行時間D.等待時間在進程管理中,當(dāng)時,進程從阻塞狀態(tài)變?yōu)榫途w狀態(tài)。
A.進程被進程調(diào)度程序選中 B.等待某一事件 C.等待的事件發(fā)生了 D.時間片用完.若P、V操作的信號量S初值為2,當(dāng)前值為-1,則表示有等待進程。
A.0個B.1個C.2個D.3個采用銀行家算法的目的是為了。
A.避免死鎖B.解除死鎖C.預(yù)防死鎖D.檢測死鎖文件系統(tǒng)為用戶提供了功能,使得用戶能透明地存儲訪問文件。
A.按名存取 B.密碼存取 C.路徑存取 D.命令調(diào)用數(shù)據(jù)傳送方式的作用是在外圍設(shè)備和內(nèi)存之間開辟直接的數(shù)據(jù)交換通道。
A.程序直接控制 B.DMA C.通道控制 D.中斷下列的進程狀態(tài)變化中,變化是不可能發(fā)生的。
A.運行->就緒B.運行->阻塞C.阻塞->運行D.阻塞->就緒用P、V操作管理臨界區(qū)時,信號量的初值應(yīng)定義為。
A.-1B.0C.1D.任意值在各種作業(yè)調(diào)度算法中,若所有作業(yè)同時到達,則平均等待時間最短的算法是。
A.先來先服務(wù)B.優(yōu)先數(shù)C.最高響應(yīng)比優(yōu)先D.短作業(yè)優(yōu)先既考慮作業(yè)等待時間,又考慮作業(yè)執(zhí)行時間的調(diào)度算法是。
A.響應(yīng)比高者優(yōu)先B.短作業(yè)優(yōu)先C.優(yōu)先級調(diào)度D.先來先服務(wù)在無快表的情況下,段頁式存儲器管理中,為獲得一條指令或一個數(shù)據(jù),都需要訪問內(nèi)存的次數(shù)是。
A.1次B.2次C.3次D.不一定幾次在有一級快表的情況下,采用頁式存儲器管理中,為獲得一條指令或一個數(shù)據(jù),要訪問內(nèi)存的次數(shù)是。
A.1次B.最多1次C.2次D.最多2次請求分頁系統(tǒng)中,LRU算法是指
A.最早進入內(nèi)存的頁先淘汰 B.近期最長時間以來沒被訪問的頁先淘汰
C.近期被訪問次數(shù)最少的頁先淘汰 D.以后再也不用的頁先淘汰在請求分頁系統(tǒng)中,為提高訪問的命中率,可以增加作業(yè)在內(nèi)存中的分配頁數(shù),如果對換出頁采用算法,有可能產(chǎn)生Belady現(xiàn)象。
A.LRU B.FIFO C.CLOCK D.LFU(最少使用)虛擬存儲器的最大容量。
A.為內(nèi)外存容量之和 B.由計算機的地址結(jié)構(gòu)決定
C.是任意的 D.由作業(yè)的地址空間決定OS采用虛擬存貯技術(shù)的目的是為了。
A.內(nèi)存擴充B.內(nèi)存保護C.內(nèi)存共享D.地址映射很好地解決了“零頭”問題的存儲管理方法是。
A.頁式存儲管理B.段式存儲管理C.多重分區(qū)管理D.可變式分區(qū)管理系統(tǒng)“抖動”現(xiàn)象的發(fā)生是由引起的。
A.置換算法選擇不當(dāng)B.交換的信息量過大C.內(nèi)存容量不足D.請求頁式管理方案分區(qū)管理中采用“最佳適應(yīng)”分配算法時,宜把空閑區(qū)按(
)次序登記在空閑區(qū)表中。
A.長度遞增B.長度遞減C.地址遞增D.地址遞減把作業(yè)地址空間中使用的邏輯地址變成內(nèi)存中物理地址的過程稱為。
A.重定位B.物理化C.邏輯化D.加載在請求分頁存儲管理中,若采用FIFO頁面淘汰算法,則當(dāng)分配的頁面數(shù)增加時,缺頁中斷的次數(shù)。
A.減少B.增加C.無影響D.可能增加也可能減少在一臺機器上能不能實現(xiàn)虛擬存儲器關(guān)鍵要看。
A.硬盤的容量大小B.內(nèi)存的容量的大小C.內(nèi)存和外存的大小D.機器的硬件和安裝什么操作系統(tǒng)虛擬存儲管理系統(tǒng)的基礎(chǔ)是程序的理論。
A.局部性B.全局性C.動態(tài)性D.虛擬性下述頁面淘汰算法會產(chǎn)生Belady現(xiàn)象。
A.先進先出B.最近最少使用C.最不經(jīng)常使用D.最佳根據(jù)文件的邏輯結(jié)構(gòu),文件可以分為。
A.字符串文件/頁面文件 B.記錄式文件/流式文件
C.索引文件/串聯(lián)文件 D.順序文件/索引文件原語是。
A.一條機器指令B.若干條機器指令組成
C.一條特定指令D.中途能打斷的指令磁帶上的文件一般只能。
A.順序存取B.隨機存取C.以字節(jié)為單位存取D.直接存取關(guān)于操作系統(tǒng)的敘述不正確的是。
A.“管理資源的程序” B.“管理用戶程序執(zhí)行的程序”
C.“能使系統(tǒng)資源提高效率的程序”D.“能方便用戶編程的程序”.操作系統(tǒng)的發(fā)展過程是。
A.設(shè)備驅(qū)動程序組成的原始操作系統(tǒng),管理程序,操作系統(tǒng)
B.原始操作系統(tǒng),操作系統(tǒng),管理程序
C.管理程序,原始操作系統(tǒng),操作系統(tǒng)
D.管理程序,操作系統(tǒng),原始操作系統(tǒng)用戶程序中的輸入,輸出操作實際上是由完成。
A.程序設(shè)計語言B.編譯系統(tǒng)C.操作系統(tǒng)D.標(biāo)準(zhǔn)庫程序關(guān)于設(shè)備獨立性的正確論述是。
A.設(shè)備獨立性是指I/O設(shè)備具有獨立執(zhí)行I/O功能的一種特性
B.設(shè)備獨立性是指用戶程序獨立于具體使用的物理設(shè)備的一種特性
C.設(shè)備獨立性是指能獨立實現(xiàn)設(shè)備共享的一種特性
D.設(shè)備獨立性是指設(shè)備的驅(qū)動程序獨立于具體使用的物理設(shè)備的一種特性計算機系統(tǒng)中判別是否有中斷事件發(fā)生應(yīng)是在。
A.進程切換時 B.執(zhí)行完一條指令后
C.執(zhí)行P操作后 D.由用戶態(tài)轉(zhuǎn)入核心態(tài)時在請求調(diào)頁或請求調(diào)段的虛擬存儲技術(shù)中,缺頁中斷或缺段中斷的發(fā)生應(yīng)是在。
A.一條指令的執(zhí)行中 B.執(zhí)行完一條指令后
C.執(zhí)行P操作后 D.由用戶態(tài)轉(zhuǎn)入核心態(tài)時在請求調(diào)頁的虛擬存儲技術(shù)中,缺頁中斷在一條指令執(zhí)行過程可能發(fā)生的次數(shù)是。
A.0次 B.1次 C.2次 D.不一定幾次在請求調(diào)段的虛擬存儲技術(shù)中,缺段中斷在一條指令執(zhí)行過程可能發(fā)生的次數(shù)是。
A.0次 B.1次 C.2次 D.不會超過2次在請求調(diào)頁的系統(tǒng)中,發(fā)現(xiàn)CPU的利用率較低,而硬盤中的對換區(qū)利用率很高,其他設(shè)備的利用率也不到5%。由此判定系統(tǒng)出現(xiàn)了異常。解決這種異常的最有效方法是。
A.更換一個大硬盤 B.更換一個快速的硬盤 C.更換快速的內(nèi)存 D.增加內(nèi)存容量在環(huán)保護機構(gòu)中,操作系統(tǒng)應(yīng)處于內(nèi)。
A.最高特權(quán)環(huán) B.次高特權(quán)環(huán)
C.中間特權(quán)環(huán) D.最低特權(quán)環(huán)一個程序可以訪問駐留在中的數(shù)據(jù)。
A.相同特權(quán)環(huán) B.較高特權(quán)環(huán)
C.較低特權(quán)環(huán) D.相同和較低特權(quán)環(huán) E.相同和較高特權(quán)環(huán)一個程序可以調(diào)用駐留在中的服務(wù)。
A.相同特權(quán)環(huán) B.較高特權(quán)環(huán)
C.較低特權(quán)環(huán) D.相同和較低特權(quán)環(huán) E.相同和較高特權(quán)環(huán)設(shè)計批處理多道系統(tǒng)時,首先要考慮的是。
A.靈活性和可適應(yīng)性 B.系統(tǒng)效率和吞吐量
C.交互性和響應(yīng)時間 D.實時性和可靠性.若當(dāng)前進程因時間片用完而讓出處理機時,該進程應(yīng)轉(zhuǎn)變?yōu)闋顟B(tài)。
A.就緒B.阻塞C.運行D.完成支持程序浮動的地址轉(zhuǎn)換機制是。
A.頁式地址轉(zhuǎn)換B.段式地址轉(zhuǎn)換C.靜態(tài)重定位D.動態(tài)重定位在可變分區(qū)存儲管理中,最優(yōu)適應(yīng)分配算法要求對空閑區(qū)表項按進行排列。
A.地址從大到小B.地址從小到大C.尺寸從大到小D.尺寸從小到大邏輯文件存放到存儲介質(zhì)上時,采用的組織形式是與有關(guān)的。
A.邏輯文件結(jié)構(gòu)B.存儲介質(zhì)特性C.主存儲器管理方式D.分配外設(shè)方式文件的保密是指防止文件被。
A.篡改B.破壞C.竊取D.刪除對磁盤進行移臂調(diào)度的目的是為了縮短時間。
A.尋道B.延遲C.傳送D.啟動一種既有利于短小作業(yè)又兼顧到長作業(yè)的作業(yè)調(diào)度算法是。
A.先來先服務(wù)B.輪轉(zhuǎn)C.最高響應(yīng)比優(yōu)先D.均衡調(diào)度作業(yè)調(diào)度程序是從處于狀態(tài)的作業(yè)中選取一個作業(yè)并把它裝入主存。
A.輸入B.收容C.執(zhí)行D.完成在單處理器的多進程系統(tǒng)中,進程什么時候占用處理器和能占用多長時間,取決于。
A.進程相應(yīng)的程序段的長度 B.進程總共需要運行時間多少
C.進程自身和進程調(diào)度策略 D.進程完成什么功能在多進程的并發(fā)系統(tǒng)中,肯定不會因競爭而產(chǎn)生死鎖。
A.打印機B.磁帶機C.磁盤D.CPU通常不采用方法來解除死鎖。
A.終止一個死鎖進程 B.終止所有死鎖進程
C.從死鎖進程處搶奪資源 D.從非死鎖進程處搶奪資源不是Unix系統(tǒng)的特色。
A.“交互的分時系統(tǒng)” B.“以全局變量為中心的模塊結(jié)構(gòu)”
C.“模塊之間調(diào)用關(guān)系簡明” D.“可以分成內(nèi)核和外殼”關(guān)于Unix的用戶標(biāo)識,是不正確的。
A.一為實際的UID,一為有效的SUID B.UID與SUID可能不同
C.SUID比UID更能反映用戶的真實身份 D.SUID表示用戶臨時具有執(zhí)行某個程序的權(quán)力二、多項選擇題(每小題2分,共10分)請將正確選項前的字母填在題后的括號內(nèi)。多選、少選、錯選均無分。OS中的處理機管理可歸結(jié)為對進程的管理,它包括。
A.進程控制B.進程同步C.進程通信D.進程調(diào)度E.進程死鎖下列關(guān)于子進程的說法正確的是。
A.子進程可以繼承父進程所擁有的資源
B.當(dāng)子進程被撤消時,從父進程那里獲得的資源歸還給系統(tǒng)
C.當(dāng)子進程被撤消時,從父進程那里獲得的資源歸還給父進程
D.在撤消父進程時,不一定必須同時撤消其所有的子進程
E.在撤消父進程時,也必須同時撤消其所有的子進程進程同步的主要任務(wù)有。
A.使并發(fā)執(zhí)行的諸進程之間能有效地共享資源
B.使并發(fā)執(zhí)行的諸進程之間能相互合作
C.使程序的執(zhí)行具有可再現(xiàn)性
D.使程序的執(zhí)行不具有可再現(xiàn)性
E.使并發(fā)執(zhí)行的諸進程不具有可再現(xiàn)性關(guān)于管程的說法正確的是。
A.管程是一種進程同步機制B.管程是操作系統(tǒng)的固有成分C.管程無創(chuàng)建和撤消D.管程被進程調(diào)用E.管程與進程一樣必須創(chuàng)建后才能生成下列說法正確的是。
A.交換主要是在進程或作業(yè)之間進行B.交換主要在同一個作業(yè)或同一個進程內(nèi)進行
C.覆蓋主要在同一個作業(yè)或同一個進程內(nèi)進行D覆蓋主要是在進程或作業(yè)之間進行
E.交換是一種存儲器擴充技術(shù),覆蓋也是一種存儲器擴充技術(shù)對于輔助存儲器,的提法是正確的。
A.“不是一種永久性的存儲設(shè)備” B.“能永久地保存信息”
C.“可被中央處理器直接訪問” D.“是CPU與主存之間的緩沖存貯器”
E.“是文件的主要存儲介質(zhì)”設(shè)備管理的目的是。
A.為用戶程序分配I/O設(shè)備B.為用戶分配I/O設(shè)備
C.提高CPU的利用率D.提高I/O設(shè)備的利用率E.為設(shè)備分配邏輯名稱存儲管理中的地址轉(zhuǎn)換僅需在CPU中設(shè)置一個控制寄存器的是管理。
A.單個分區(qū)B.多個固定分區(qū)C.頁式D.段式E.多個可變分區(qū)有關(guān)設(shè)備的管理中,是正確的。
A.“計算機系統(tǒng)為每臺設(shè)備確定一個絕對號”
B.“每臺設(shè)備都應(yīng)該有一個惟一的相對號”
C.“申請設(shè)備時指定絕對號可提高設(shè)備的使用率”
D.“申請設(shè)備時指定設(shè)備相對號使設(shè)備分配的靈活性強”
E.“啟動設(shè)備時應(yīng)指出設(shè)備的絕對號”在多進程的并發(fā)系統(tǒng)中,有關(guān)進程間的關(guān)系的正確說法是。
A.都是邏輯上無關(guān)的B.有些可能邏輯上無關(guān)的C.都是邏輯上有關(guān)的
D.有些可能邏輯上有關(guān)的E.它們之間都直接或間接發(fā)生關(guān)系文件控制塊FCB通常包含的信息有。
A.基本信息類B.存取控制信息類C.使用信息類D.結(jié)點信息E.目錄信息OS中常用的文件類型可以有多種方法,它們可以是。
A.按創(chuàng)建時間分類B.按用途分類C.文件中數(shù)據(jù)的形式分類
D.存取控制屬性分類E.文件大小分類UNIX系統(tǒng)中進程由三部分組成:進程控制塊,正文段和數(shù)據(jù)段。這意味著一個程序的正文與數(shù)據(jù)可以是分開的,這種分開的目的是為了。
A.可共享正文B.可共享數(shù)據(jù)C.可重入D.方便編程E.以上全部I/O控制方式隨著計算機技術(shù)的發(fā)展也在不斷發(fā)展,就當(dāng)前來說,I/O控制方式有。
A.程序I/O方式B.DMA控制方式C.中斷控制方式D.通道控制方式E.緩沖控制方式下列的進程狀態(tài)變化中,變化是可能發(fā)生的。
A.運行->就緒B.運行->阻塞C.阻塞->運行D.阻塞->就緒E.以上均可三、是非題(每小題1分,共10分。正確的打√錯誤的打×)并發(fā)性是指若干事件在同一時刻發(fā)生。 (×)并發(fā)是指兩個或多個事件在同一時間間隔內(nèi)發(fā)生。 (√)進程只能從執(zhí)行狀態(tài)轉(zhuǎn)為阻塞狀態(tài),一定不能從就緒狀態(tài)轉(zhuǎn)為阻塞狀態(tài)。 (√)處于阻塞狀態(tài)的進程,有可能自己醒過來然后進入就緒狀態(tài)。 (×)引入并發(fā)后可有效地提高系統(tǒng)資源的利用率和系統(tǒng)吞吐量,改善系統(tǒng)的性能。 (√)在一定時間內(nèi)物理機器上可以有兩個或兩個以上的程序同處于開始運行但尚未結(jié)束的狀態(tài),并且次序不是事先確定的。 (√)對臨界資源,應(yīng)采用互斥訪問方式來實現(xiàn)共享。 (√)臨界段是指進程中用于實現(xiàn)進程互斥的那段代碼。 (×)臨界資源必須是硬件資源,一次僅允許一個進程使用,各進程間應(yīng)采取互斥方式共享,否則易發(fā)生沖突。 (×)使用P,V操作后,可以防止系統(tǒng)出現(xiàn)死鎖。 (×)進程的互斥和同步的互相約束一般不會同時發(fā)生。 (√)信號量的初值不能是負(fù)的。 (√)線程是調(diào)度的基本單位,但不是資源分配的基本單位。 (√)線程是進程的一個實體,不擁有系統(tǒng)資源,只擁有從屬進程的全部資源,資源是分配給進程的。 (√)一個進程中的多個線程可并發(fā)執(zhí)行,線程切換快,系統(tǒng)開銷小。 (√)進程中的多個線程都在進程的地址空間內(nèi)活動。 (√)死鎖是指兩個或多個進程都處于互等狀態(tài)而無法繼續(xù)工作。 (√)系統(tǒng)處于不安全狀態(tài)必然導(dǎo)致系統(tǒng)死鎖。 (×)只要在系統(tǒng)分配資源前,先進行安全狀態(tài)檢查,使系統(tǒng)不進入不安全狀態(tài),則系統(tǒng)就會避免死鎖。 (√)預(yù)防死鎖就是在系統(tǒng)分配資源前,先進行安全狀態(tài)檢查,如果此次資源分配會使系統(tǒng)進入不安全狀態(tài),則不分配資源。 (×)聯(lián)機用戶接口是指用戶與操作系統(tǒng)之間的接口,它不是命令接口。 (×)覆蓋是一種存儲器擴充技術(shù),它要求在同一個作業(yè)或同一個進程內(nèi)進行。 (√)覆蓋是一種存儲器擴充技術(shù),主要是在進程或作業(yè)之間進行。 (×)靜態(tài)重定位技術(shù)不需要特殊的硬件支持。 (√)動靜態(tài)重定位技術(shù)需要硬件地址變換機構(gòu)的支持,即在系統(tǒng)中增加一個重定位寄存器,用他來裝入程序在內(nèi)存中的起始地址。 (√)靜態(tài)重定位分區(qū)分配可以通過“緊湊”的方法解決碎片問題。 (×)靜態(tài)分頁技術(shù)與請求分頁技術(shù)中所采用的頁表是完全相同的。 (×)在頁式虛存系統(tǒng)中,為了提高內(nèi)存利用率,用戶可以使用不同大小的頁面。 (×)在分配共享設(shè)備和獨占設(shè)備時,都可能引起死鎖。 (×)虛擬設(shè)備是指把一個物理設(shè)備變換成多個對應(yīng)的邏輯設(shè)備。 (√)交換是一種存儲器擴充技術(shù),它要求在同一個作業(yè)或同一個進程內(nèi)進行。 (×)順序文件適合于建立在順序存儲設(shè)備上,而不適合建立在磁盤上。 (√)若系統(tǒng)中存在一個循環(huán)等待的進程集合,則必定會死鎖。 (×)實時操作系統(tǒng)的響應(yīng)系數(shù)最小,設(shè)備利用率最低。 (√)常用的緩沖技術(shù)是解決慢速設(shè)備與快速CPU處理之間協(xié)調(diào)工作。 (√)多用戶操作系統(tǒng)一定是具有多道程序功能的操作系統(tǒng)。 (√)單用戶多任務(wù)的操作系統(tǒng)不需要進程調(diào)度。 (√)一個物理硬盤可以分成多個邏輯硬盤分區(qū)進行面向用戶文件系統(tǒng)的管理。 (√)作業(yè)同步面向用戶而進程同步面向計算機內(nèi)部資源管理和控制。 (√)虛擬設(shè)備是指用戶程序不必全部裝入內(nèi)存就可使用系統(tǒng)中的設(shè)備 (×)虛擬存儲器技術(shù)是指用戶程序不必全部裝入內(nèi)存就可執(zhí)行的技術(shù)。 (×)虛擬存儲器技術(shù)是指具有請求調(diào)入功能和置換功能,能從邏輯上對內(nèi)存容量進行擴充的一種存儲系統(tǒng)。 (√)四、填空題(每空1分,共10分)操作系統(tǒng)的主要功能有處理機管理功能,存儲器管理功能,設(shè)備管理功能,文件管理功能和為用戶提供接口的功能。目前的操作系統(tǒng)可分為五大類型,它們分別是:批處理操作系統(tǒng)、分時操作系統(tǒng)、實時操作系統(tǒng)、網(wǎng)絡(luò)操作系統(tǒng)和分布式操作系統(tǒng)。記錄型信號量的初始值為2,若當(dāng)前的值為-3,則表示當(dāng)前有3個進程被該信號量阻塞。若系統(tǒng)存儲器管理中采用靜態(tài)二級分頁技術(shù),則CPU執(zhí)行一次訪內(nèi)存操作至少要訪問主存3次。若系統(tǒng)存儲器管理中采用靜態(tài)一級分頁和快表技術(shù),則CPU讀取一個存儲單元至少需要訪問主存1次。最壞情況下需要訪問快表1次,主存2次。已知某計算機系統(tǒng)的頁面長度為1KB/頁,某進程的頁表如下
頁號 塊號
0 2
1 3
2 8
則邏輯地址為2500的一條指令的物理地址是8644。某雙面軟磁盤有效記錄區(qū)的外徑為12cm,內(nèi)徑為10cm,磁道密度為80道/cm。該磁盤共有160個柱面,320磁道。將該磁盤按每道18扇區(qū)格式化,每扇區(qū)512字節(jié),則其存儲容量為2880K字節(jié)。操作系統(tǒng)的主要設(shè)計目標(biāo)是方便用戶使用或界面友好和系統(tǒng)能高效工作或資源利用率高。當(dāng)一個進程完成了特定的任務(wù)后,就要撤消該進程,此時系統(tǒng)要收回這個進程所占的資源并取消該進程的進程控制塊(PCB)。單個分區(qū)存儲管理僅適用于個人計算機(單用戶)和專用計算機(單道,單作業(yè))系統(tǒng)。每個索引文件都必須有一張索引表,其中每個登記項用來指出一個邏輯記錄的存放位置(或指針)(或首地址)。根據(jù)信息交換的方式不同,通道可分為三種類型:字節(jié)多路通道、數(shù)組選擇通道和數(shù)組多路通道。實現(xiàn)SPOOLing系統(tǒng)時必須在磁盤上開辟出稱為輸入井和輸出井的專門區(qū)域,以存放作業(yè)的輸入信息和作業(yè)的執(zhí)行結(jié)果。SPOOLing系統(tǒng)的特點是提高了I/O速度,將獨占設(shè)備改造為共享設(shè)備,實現(xiàn)了虛擬設(shè)備的功能。一個理想的作業(yè)調(diào)度算法應(yīng)該是既能提高系統(tǒng)效率或吞吐量高___又能使進入系統(tǒng)的作業(yè)及時得到計算結(jié)果(或周轉(zhuǎn)時間短等)。死鎖的四個必要條件是互斥使用資源、占用并等待資源、不可搶奪資源和循環(huán)等待資源。FAT16的最大表項數(shù)是65536個,每個表項是2個字節(jié),如果每個簇中的盤塊數(shù)為64,由此得出FAT16可以管理的最大分區(qū)空間為216×64×512=2048MB=2GB。每個FAT12的表項為12位,因此,在FAT表中最多允許有4096個表項,如果采用以盤塊作為基本分配單位,每個盤塊(也稱扇區(qū))的大小一般是512字節(jié),那么,每個磁盤分區(qū)的容量為2MB(4096×512B)。如果一個物理磁盤支持4個邏輯磁盤分區(qū),則磁盤最大容量僅為8MB。NTFS(NewTechnologyFileSystem)具有許多新的特征:首先,它使用了64位磁盤地址,理論上可以支持2的64次方字節(jié)的磁盤分區(qū);其次,在NTFS中可以很好地支持長文件名,單個文件名限制在255個字符以內(nèi),全路徑名為32767個字符。文件的索引分配方法是:為每個文件分配一個索引塊(表),并將該文件的所有盤塊號都記錄在該索引塊中,再將該索引塊號填入該文件的目錄項。從當(dāng)前目錄開始的路徑名,稱為相對路徑名。從樹根開始的路徑名,稱為絕對路徑名。若利用一個m行n列的位示圖來管理空閑盤塊,則m×n等于磁盤的總塊數(shù)。位示圖的第i行、第j列表示的盤塊號等于n(i-1)+j。若某盤塊號為b,則對應(yīng)在位示圖上的行號為:i=(b-1)DIVn+1;列號為:j=(b-1)MODn+1。RAID的中文意思是廉價磁盤冗余陣列。五、簡答題(每小題5分,共20分)什么是段式管理?它與頁式管理相比有哪些優(yōu)缺點?
答:段式管理就是將程序按照內(nèi)容或過程(函數(shù))關(guān)系分成段,每段擁有自己的名字。一個用戶作業(yè)或進程所包含的段對應(yīng)于一個二維線性虛擬空間,也就是一個二維虛擬存儲器。段式管理程序以段為單位分配內(nèi)存,然后通過地址映射機構(gòu)把段式虛擬地址轉(zhuǎn)換成實際的內(nèi)存物理地址。分段由用戶設(shè)計劃分,每段對應(yīng)一個相應(yīng)的程序模塊,有完整的邏輯意義,便于段的共享,執(zhí)行時按需動態(tài)鏈接裝入,段長不等,可動態(tài)增長,有利于新數(shù)據(jù)增長。缺點是段的裝入要求有足夠大連續(xù)內(nèi)存空間。簡述頁式管理中有效地址到物理地址的變換過程(假設(shè)系統(tǒng)中只采用了一級頁表并配有塊表)。
答:將有效地址分為頁號P和頁內(nèi)地址W兩部分,頁內(nèi)地址W直接送地址寄存器的低位部分;頁號P送入“聯(lián)想存儲器”中的比較數(shù)寄存器,與緩存中的所有頁號進行比較,若有則直接讀出該頁所對應(yīng)的物理塊號送物理地址寄存器頁號字段。如未找到,再訪問內(nèi)存中的頁表,找到后把物理塊號送地址寄存器頁號字段;同時,重新修改快表(加入新的,滿時換出舊的再加入)。在外存盤塊的分配中,可采用隱式鏈接或顯式連接分配方式,試給出各自的特點。
答:在采用隱式鏈接分配方式時,在文件目錄的每個目錄項中,都須含有指向鏈接文件第一個盤塊和最后一個盤塊的指針,在每個盤塊中都含有一個指向下一個盤塊的指針。顯式連接把用于鏈接文件各物理塊的指針,顯式地存放在內(nèi)存的一張鏈接表中,在該表中,凡是屬于某一文件的第一個盤塊號,均作為文件地址被填入相應(yīng)文件的FCB的“物理地址”字段中。
它們優(yōu)點:都解決了連續(xù)分配的問題,實現(xiàn)了離散存儲;提高了外存利用率;無碎片問題;易于動態(tài)增長。
缺點:訪問速度較低;可靠性差。
顯式比隱式顯著地提高了檢索速度,而且大大減少了訪問磁盤的次數(shù),但需要增加文件分配表FAT。簡述死鎖的防止與死鎖的避免的區(qū)別。答:死鎖的防止是系統(tǒng)預(yù)先確定一些資源分配策略,進程按規(guī)定申請資源,系統(tǒng)按預(yù)先規(guī)定的策略進行分配,從而防止死鎖的發(fā)生。
而死鎖的避免是當(dāng)進程提出資源申請時系統(tǒng)測試資源分配,僅當(dāng)能確保系統(tǒng)安全時才把資源分配給進程,使系統(tǒng)一直處于安全狀態(tài)之中,從而避免死鎖。什么是脫機輸入輸出方式。
答:為了解決人機了矛盾及CPU和I/O設(shè)備之間速度不匹配的矛盾,事先將用戶程序和數(shù)據(jù)的紙帶裝入紙帶輸入機,在一臺外圍機的控制下,把紙帶上的數(shù)據(jù)輸入到磁帶上,當(dāng)CPU需要這些程序和數(shù)據(jù)時,再從磁帶上高速地調(diào)入內(nèi)存,這種技術(shù)稱為脫機輸入/輸出技術(shù)。比較進程與程序的區(qū)別。
答:進程是程序在一個數(shù)據(jù)集合上運行的過程,它是系統(tǒng)進行資源分配和調(diào)度的一個獨立單位。程序是指令的有序集合。進程與程序是完全不同的概念。主要區(qū)別是:
(1)程序是靜態(tài)概念,是永久性軟件資源;而進程是動態(tài)概念,是動態(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)概念,不存在這種異步特征。為實現(xiàn)進程互斥,所有的同步機制都應(yīng)遵循下述四條準(zhǔn)則是什么?
答:(1)空閑讓進:當(dāng)無進程處于臨界區(qū)時,表明臨界資源處于空閑狀態(tài),應(yīng)允許一個請求進入臨界區(qū)的進程立即進入自己的臨界區(qū),以有效地利用臨界資源。
(2)忙則等待:當(dāng)已有進程進入自己的臨界區(qū)時,表明該臨界資源正被訪問,因而其它所有試圖進入臨界區(qū)的進程必須等待,以保證對臨界資源的互斥訪問?;蛘哒f,任何兩個進程不能同時處于臨界區(qū)。
(3)有限等待:對要求訪問臨界資源的進程,應(yīng)保證該進程能在有限時間內(nèi)進入自己的臨界區(qū),以免陷入“死等”狀態(tài),即不得使進程在臨界區(qū)無休止地等待。
(4)讓權(quán)等待:當(dāng)進程不能進入自己的臨界區(qū)時,應(yīng)立即釋放處理機,以免進程陷入“忙等”。一個具有分時兼批處理功能的操作系統(tǒng)應(yīng)怎樣調(diào)度和管理作業(yè)?
答:
1)優(yōu)先接納終端作業(yè),僅當(dāng)終端作業(yè)數(shù)小于系統(tǒng)可以允許同時工作的作業(yè)數(shù)時,可以調(diào)度批處理作業(yè)。
2)允許終端作業(yè)和批處理作業(yè)混合同時執(zhí)行。
3)把終端作業(yè)的就緒進程排成一個就緒隊列,把批處理作業(yè)的就緒進程排入另外的就緒隊列中。
4)有終端作業(yè)進程就緒時,優(yōu)先讓其按“時間片輪轉(zhuǎn)”法先運行。沒有終端作業(yè)時再按確定算法選批處理作業(yè)就緒進程運行。簡述操作系統(tǒng)提供的服務(wù)功能。
答:處理用戶命令;讀/寫文件分配/回收資源
處理硬件/軟件出現(xiàn)的錯誤;及其它控制功能簡述什么是安全狀態(tài),什么是不安全狀態(tài)。
答:所謂安全狀態(tài),是指系統(tǒng)能按某種順序如<P1,P2,…,Pn>(稱<P1,P2,…,Pn>序列為安全序列)來為每個進程分配其所需資源,直至最大需求,使每個進程都可順序完成。若系統(tǒng)不存在這樣一個安全序列,則稱系統(tǒng)處于不安全狀態(tài)。什么是并發(fā)?OS為什么要引入并發(fā)?
答:并發(fā)是指兩個或多個事件在同一時間間隔內(nèi)發(fā)生。引入并發(fā)后可有效地提高系統(tǒng)資源的利用率和系統(tǒng)吞吐量,改善系統(tǒng)的性能。什么是死鎖?產(chǎn)生的原因是什么?如何解除死鎖?
答:死鎖(Deadlock),是指多個進程因競爭資源而造成的一種僵局,若無外力作用,這些進程都將水遠不能再向前推進。
死鎖產(chǎn)生的原因有兩個:
(1)競爭資源(根本原因)。
(2)進程推進順序非法(或不當(dāng))。
當(dāng)發(fā)現(xiàn)有進程死鎖時,應(yīng)立即把它們從死鎖狀態(tài)中解脫出來,常用的兩種方法:
(1)剝奪資源;
(2)撤消進程最簡單是撤消全部死鎖進程;目前用于處理死鎖的方法可歸結(jié)為哪幾種?各有那些優(yōu)缺點?
答:于處理死鎖的方法可歸結(jié)為4種,它們分別是:預(yù)防死鎖,避免死鎖,檢測死鎖,解除死鎖。
(1)預(yù)防死鎖:事先設(shè)置某些限制條件,去破壞產(chǎn)生死鎖的四個必要條件中的一個或幾個條件,來防止發(fā)生死鎖。優(yōu)點:容易實現(xiàn),已被廣泛使用;缺點:設(shè)置的限制條件往往太嚴(yán)格,有可能降低系統(tǒng)資源利用率和系統(tǒng)吞吐量。
(2)避免死鎖:在資源的動態(tài)分配過程中,用某種方法防止系統(tǒng)進入不安全狀態(tài),從而避免發(fā)生死鎖。這種方法只需在事先加以較弱的限制條件,便可獲得較高的資源利用率及系統(tǒng)吞吐量,但在實現(xiàn)上有一定的難度。
(3)檢測死鎖:允許系統(tǒng)在運行過程中發(fā)生死鎖,但系統(tǒng)可通過某種檢測機構(gòu),及時地檢測出死鎖的發(fā)生,并精確地確定與死鎖有關(guān)的進程和資源,然后再采取措施清除死鎖。
(4)解除死鎖:這是與檢測死鎖相配套的一種措施,用于將進程從死鎖狀態(tài)下解脫出來。死鎖的檢測和解除措施,有可能使系統(tǒng)獲得較好的資源利用率和系統(tǒng)吞吐量,但實現(xiàn)難度最大。中斷裝置的職能主要有三點:
答:
1)檢查是否有中斷事件發(fā)生。
2)若有中斷發(fā)生,保護好被中斷進程的斷點及現(xiàn)場信息,以便進程在適當(dāng)時候能恢復(fù)執(zhí)行。
3)啟動操作系統(tǒng)的中斷處理程序。簡述什么是覆蓋?什么是交換?覆蓋和交換的區(qū)別是什么?
答:將程序劃分為若干個功能上相對獨立的程序段,按照程序的邏輯結(jié)構(gòu)讓那些不會同時執(zhí)行的程序段共享同一塊內(nèi)存區(qū)的內(nèi)存擴充技術(shù)就是覆蓋。
交換是指先將內(nèi)存某部分的程序或數(shù)據(jù)寫入外存交換區(qū),再從外存交換區(qū)中調(diào)入指定的程序或數(shù)據(jù)到內(nèi)存中來,并讓其執(zhí)行的一種內(nèi)存擴充技術(shù)。
與覆蓋技術(shù)相比,交換不要求程序員給出程序段之間的覆蓋結(jié)構(gòu),而且,交換主要是在進程或作業(yè)之間進行,而覆蓋則主要在同一個作業(yè)或同一個進程內(nèi)進行。另外,覆蓋只能覆蓋那些與覆蓋程序段無關(guān)的程序段。有如下資源分配圖,其中箭頭由資源Rj指向進程Pi表示進程已分配到資源稱為分配邊,箭頭由Pi指向Rj表示進程請求資源稱為請求邊。請簡述死鎖定理,并用判斷系統(tǒng)此時的狀態(tài)是否為死鎖狀態(tài)。
答:在資源分配圖中,找出一個既不阻塞又非獨立的進程結(jié)點Pi,消去Pi所有的請求邊和分配邊,使之成為狐立的結(jié)點,Pi釋放資源后,繼續(xù)查找既不阻塞又非獨立的進程結(jié)點Pi+1,消去Pi+1,使之成為狐立的結(jié)點,…,進行一系列的簡化后,若消去圖中所有的邊,使所有的進程結(jié)點都成為孤立結(jié)點,則稱該圖是可完全簡化的,若不能通過任何過程使該圖完全簡化,則稱該圖是不可完全簡化的。當(dāng)且僅當(dāng)該圖是不可完全簡化的這一充分條件被稱為死鎖定理。
系統(tǒng)此時的狀態(tài)不為死鎖狀態(tài)。有如下資源分配圖,其中箭頭由資源Rj指向進程Pi表示進程已分配到資源,稱為分配邊,箭頭由Pi指向Rj表示進程請求資源,稱為請求邊。請指出系統(tǒng)是否死鎖。
答:圖a有死鎖;圖b無死鎖。根據(jù)信息交換的方式不同,通道可分為哪幾種類型?各類型的特點是什么?
答:通道可分為三種類型,它們分別是:字節(jié)多路通道、數(shù)組選擇通道和數(shù)組多路通道。
(1)字節(jié)多路通道以字節(jié)為單位傳輸信息,它可以分時地執(zhí)行多個通道程序。當(dāng)一個通道程序控制某臺設(shè)備傳送一個字節(jié)后,通道硬件就控制轉(zhuǎn)去執(zhí)行另一個通道程序,控制另一臺設(shè)備傳送信息。
(2)數(shù)組選擇通道是以塊為單位成批傳送數(shù)據(jù),即每次傳送一批數(shù)據(jù),選擇通道在一段時間內(nèi)只能執(zhí)行一個通道程序,只允許一臺設(shè)備進行數(shù)據(jù)傳輸,當(dāng)一臺設(shè)備數(shù)據(jù)傳輸完成后,再選擇與通道連接的另一臺設(shè)備,執(zhí)行它的相應(yīng)的通道程序。
(3)數(shù)組多路通道結(jié)合了選擇通道傳送速度高和字節(jié)多路通道能進行分時并行操作的優(yōu)點。它先為一臺設(shè)備執(zhí)行一條通道指令,然后自動轉(zhuǎn)接,為另一臺設(shè)備執(zhí)行一條通道指令。DMA方式與中斷方式的主要區(qū)別是什么?
答:1)中斷方式是每傳送一個字節(jié)之后發(fā)中斷請求,請求CPU進行中斷處理;DMA方式則是在所要求傳送的數(shù)據(jù)塊全部傳送結(jié)束時要求CPU進行中斷處理,大大減少了CPU進行中斷處理的次數(shù)
2)中斷方式的數(shù)據(jù)傳送是由CPU控制完成的;DMA方式則是在DMA控制器的控制下不經(jīng)過CPU控制完成的。通道控制方式與DMA方式的異同是什么?
答:(1)它們都是一種內(nèi)存和設(shè)備直接進行數(shù)據(jù)交換的方式,都能使CPU和外設(shè)并行工作。
(2)DMA方式是在外設(shè)和主存之間開辟直接的數(shù)據(jù)交換通路。使CPU不介入傳送時的操作,數(shù)據(jù)也不經(jīng)過CPU。通道是計算機系統(tǒng)中專門用于I/O的處理器,與DMA方式不同的是,在通道控制方式中,數(shù)據(jù)傳送方向、存放數(shù)據(jù)的內(nèi)存始址、傳送的數(shù)據(jù)塊長度均由一個專門負(fù)責(zé)輸入/輸出的硬件——通道來控制。另外,DMA方式每臺設(shè)備至少需要一個DMA控制器,而通道控制方式中,一個通道可控制多臺設(shè)備與內(nèi)存進行數(shù)據(jù)交換。DMA方式主要用于快速設(shè)備,通道控制方式可用于各類設(shè)備。,六、綜合題(每小題10分,共20分)設(shè)某作業(yè)占有7個頁面,如果在主存中只允許裝入4個工作頁面(即工作集為4),作業(yè)運行時,實際訪問頁面的順序是1,2,3,6,4,7,3,2,1,4,7,5,6,5,2,1。試用FIFO與LRU頁面調(diào)度算法,列出各自的頁面淘汰順序和缺頁中斷次數(shù),以及最后留駐主存4頁的順序。(假設(shè)開始的4個頁面已裝入主存)
答:
FIFO:
頁面淘汰順序:123647;缺頁中斷次數(shù):6次;最后留駐主存4頁的順序:2156
LRU:
頁面淘汰順序:1264732147;缺頁中斷次數(shù):10次;最后留駐主存4頁的順序:6521已知某系統(tǒng)頁長為4KB,每個頁表項為4B,采用多層分頁策略映射32位的用戶空間。若限定最高層頁表只能占1頁,則它可采用幾層分頁策略?
答:用戶空間為232B,而頁的大小為212B,故作業(yè)最多可有232/212=220個頁。其頁表大小為220*4B=222B。將222B的1級頁表再分成頁,可得222/212=210個頁,2級頁表的大小為210*4B=212B=4KB,4KB只占1頁(已經(jīng)滿足限定最高層頁表只占1頁),所以系統(tǒng)可采用2層分頁策略。已知某系統(tǒng)頁長為4KB,每個頁表項為4B,采用多層分頁策略映射40位的用戶空間。若限定最高層頁表只能占1頁,則它可采用幾層分頁策略?
答:用戶空間為240B,而頁的大小為212B,故作業(yè)最多可有240/212=228個頁。其頁表大小為228*4B=230B。將230B的1級頁表再分成頁,可得230/212=218個頁,2級頁表的大小為218*4B=220B。將220B的2級頁表再分成頁,可得220/212=28個頁,3級頁表的大小為28*4B=210B=1KB,1KB還不足1頁(已經(jīng)滿足限定最高層頁表只能占1頁),所以系統(tǒng)可采用3層分頁策略。實現(xiàn)虛擬設(shè)備的硬件條件是什么?操作系統(tǒng)應(yīng)設(shè)計哪些功能程序?
答:硬件條件是:配置大容量的磁盤,要有中斷裝置和通道
操作系統(tǒng)應(yīng)設(shè)計好“預(yù)輸入”程序,“井管理”程序,“緩輸出”程序。摒棄“環(huán)路等待”條件的方法是什么?
答:將所有的資源按類型進行線性排隊,并賦予不同的序號。所有進程對資源的請求必須嚴(yán)格按資源序號遞增的次序提出,這樣可以使資源分配圖中不可能出現(xiàn)環(huán)路。摒棄“不剝奪”條件的方法是什么?
答:對一個已經(jīng)保持某些資源的進程,再提出新的資源要求而不能立即得到滿足時,則釋放它已經(jīng)保持的所有資源,待以后需要時再重新申請。摒棄“請求和保持”條件的方法是什么?
答:所有進程要一次性地申請在整個運行過程所需的全部資源,若系統(tǒng)有足夠的資源分配給進程,便一次性地分配給該進程需要的所有資源,否則,若有一類資源不能滿足,也不分配。UNIX系統(tǒng)中,數(shù)據(jù)結(jié)構(gòu)磁盤索引節(jié)點(dinode)中有數(shù)據(jù)項di_nlink,活動索引節(jié)點(inode)中有數(shù)據(jù)項i_count而系統(tǒng)打開文件表(file)中有數(shù)據(jù)項f_count。簡述這三個數(shù)據(jù)結(jié)構(gòu)之間的聯(lián)系。并指出這三個數(shù)據(jù)項的作用。
答:nlink指出文件(或目錄)的連接數(shù)是(相對)靜態(tài)的
count則是活動的,即正在使用的計數(shù),即動態(tài)的
nlink方便使用不同目錄(尤其是“離”得較遠時)打開一文件
后即f_count為1,i_count增1;關(guān)閉時各減1
f_count為0時,系統(tǒng)打開文件表項為自由的
i_count為0時,內(nèi)存活動索引節(jié)點表項為自由的
di_nlink為0時,該文件被刪除,收回文件空間和
i_node空間利用記錄型信號量解決生產(chǎn)者——消費者問題。
varmutex,empty,full:semaphore:=1,n,0;
buffer:array[0,...,n-1]ofitem;
in,out:integer:=0,0;
begin
parbegin
producer:begin
repeat
…
produceraniteminnextp;
…
wait(empty);wait(mutex);
buffer(in):=nextp;
in:=(in+1)modn;
signal(mutex);signal(full);
untilfalse;
end
consumer:begin
repeat
wait(full);wait(mutex);
nextc:=buffer(out);
out:=(out+1)modn;
signal(mutex);signal(empty);
consumetheiteminnextc;
untilfalse;
end
parend
end利用AND信號量解決生產(chǎn)者——消費者問題。
varmutex,empty,full:semaphore:=1,n,0;
buffer:array[0,...,n-1]ofitem;
in,out:integer:=0,0;
begin
parbegin
producer:begin
repeat
…
produceraniteminnextp;
…
Swait(empty,mutex);
buffer(in):=nextp;
in:=(in+1)modn;
Ssignal(mutex,full);
untilfalse;
end
consumer:begin
repeat
wait(full,mutex);
nextc:=buffer(out);
out:=(out+1)modn;
signal(mutex,empty);
consumetheiteminnextc;
untilfalse;
end
parend
end。假定系統(tǒng)有三個并發(fā)進程read,move和print共享緩沖器B1和B2。進程read負(fù)責(zé)從輸入設(shè)備上讀信息,每讀出一個記錄后把它存放到緩沖器B1中。進程move從緩沖器B1中取出一記錄,加工后存入緩沖器B2。進程print將B2中的記錄取出打印輸出。緩沖器B1和B2每次只能存放一個記錄。要求三個進程協(xié)調(diào)完成任務(wù),使打印出來的與讀入的記錄的個數(shù),次序完全一樣。
請用PV(即wait,signal操作)操作,寫出它們的并發(fā)程序。
beginSR,SM1,SM2,SP:semaphore;
B1,B2:record;
SR:=1;SM1:=0;SM2:=1;SP:=0
cobegin
processread
X:record;
begin
R:(接收來自輸入設(shè)備上一個記錄)
X:=接收的一個記錄;
P(SR);
B1:=X;
V(SM1);
gotoR;
end;
Processmove
Y:record;
begin
M:P(SM1);
Y:=B1;
V(SR)
加工Y
P(SM2);
B2:=Y;
V(SP);
gotoM;
end;
Processprint
Z:record;
begin
P:P(SP);
Z:=B2;
V(SM2)
打印Z
gotoP;
end;
coend;
end;某條河上只有一個獨木橋,以便行人過河。現(xiàn)在河的兩邊都有人要過橋,若把過橋者看做一個進程。規(guī)定:為了保證過橋安全,每次只有一個人通過。請用P、V操作分別實現(xiàn)正確的管理。
//i表示過河的任意人
varmutex:semaphore:=1;//初始值為1
parbegin
process(i):begin
wait(mutex);
過河;
signal(mutex);
end
parend某條河上只有一個獨木橋,現(xiàn)在河的兩邊都有人要過橋,若把過橋者看做一個進程。規(guī)定:任意時刻同一方向只允許1人過橋,南側(cè)橋段和北側(cè)橋段較窄只能通過1人,橋中央一處寬敞,允許2個人通過或歇息。試用PV操作寫出南、北兩岸過橋的同步算法。
load用來控制橋上人數(shù),初值為2,表示橋上最多有2人;
north用來控制北段橋的使用,初值為1,對北段橋互斥;
south用來控制南段橋的使用,初值為1,對南段橋互斥。
varload,north,south:semaphore;
load=2;north=1;south=1;
GO_South(){
P(load);
P(north);
過北段橋;
到橋中間;
V(north);
P(south);
過南段橋;
到達南岸;
V(south);
V(load);
}
GO_North(){
P(load);
P(south);
過南段橋;
到橋中間
V(south);
P(north);
過北段橋;
到達北岸
V(north);
V(load);
}某寺廟,有小和尚、老和尚若干.廟內(nèi)有一水缸,由小和尚提水入缸,供老和尚飲用。水缸可容納30桶水,每次入水、取水僅為1桶,不可同時進行。試用信號燈和PV操作給出老和尚和小和尚的活動。
semaphoreempty=30;//表示缸中目前還能裝多少桶水,初始時能裝30桶水
semaphorefull=0;//表示缸中有多少桶水,初始時缸中沒有水
semaphoremutex_bigjar=1;//用于實現(xiàn)對缸的互斥操作
//小和尚進程
young_monk(){
while(1){
P(empty);//若果大水缸有空
P(mutex_bigjar);//水缸互斥
Putthewaterintothebigjar;//將一桶水裝入水缸
V(mutex_bigjar);//水缸互斥
V(full);//水缸中的水增加一桶
}
}
//老和尚進程
old_monk(){
while(){
P(full);//若果水缸有水
P(mutex_bigjar);//水缸互斥
Getwater;//從水缸中取水
V(mutex_bigjar);//水缸互斥
V(empty);//水缸中的水減少一桶
Drinkwater;//喝水
}
}某寺廟,有小和尚、老和尚若干.廟內(nèi)有一水缸,由小和尚提水入缸,供老和尚飲用。水缸可容納30桶水,每次入水、取水僅為1桶,不可同時進行。水取自同一井中,水井徑窄,每次只能容納一個水桶取水。試用信號燈和PV操作給出老和尚和小和尚的活動。
semaphoreempty=30;//表示缸中目前還能裝多少桶水,初始時能裝30桶水
semaphorefull=0;//表示缸中有多少桶水,初始時缸中沒有水
semaphoremutex_well=1;//用于實現(xiàn)對井的互斥操作
semaphoremutex_bigjar=1;//用于實現(xiàn)對缸的互斥操作
//小和尚進程
young_monk(){
while(1){
P(empty);//若果大水缸有空
P(mutex_well);//水井互斥
getwater; //取水
V(mutex_well);//水井互斥
Gotothetemple;//到水缸去
P(mutex_bigjar);//水缸互斥
Putthewaterintothebigjar;//將一桶水裝入水缸
V(mutex_bigjar);//水缸互斥
V(full);//水缸中的水增加一桶
}
}
//老和尚進程
old_monk(){
while(){
P(full);//若果水缸有水
P(mutex_bigjar);//水缸互斥
Getwater;//從水缸中取水
V(mutex_bigjar);//水缸互斥
V(empty);//水缸中的水減少一桶
Drinkwater;//喝水
}
}某寺廟,有小和尚、老和尚若干.廟內(nèi)有一水缸,由小和尚提水入缸,供老和尚飲用。水缸可容納30桶水,每次入水、取水僅為1桶,不可同時進行。水取自同一井中,水井徑窄,每次只能容納一個水桶取水。設(shè)水桶個數(shù)為5個,試用信號燈和PV操作給出老和尚和小和尚的活動。
semaphoreempty=30;//表示缸中目前還能裝多少桶水,初始時能裝30桶水
semaphorefull=0;//表示缸中有多少桶水,初始時缸中沒有水
semaphorebuckets=5;//表示有多少只空桶可用,初始時有5只桶可用
semaphoremutex_well=1;//用于實現(xiàn)對井的互斥操作
semaphoremutex_bigjar=1;//用于實現(xiàn)對缸的互斥操作
//小和尚進程
young_monk(){
while(1){
P(empty);//若果大水缸有空
P(buckets);//若果有水桶
Gotothewell;//到水井去
P(mutex_well
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公路勞動施工合同范本
- 出租機械合同范本
- 醫(yī)療設(shè)備簡易合同范本
- 2025年河南省安全員B證考試題庫及答案
- 借用公司資質(zhì)合同范本
- 勞務(wù)外包公司合同范本
- 南市區(qū)家電運輸合同范本
- 公司棉花訂購合同范本
- 勞務(wù)外包協(xié)議合同范本
- 勤工儉學(xué)合同范本
- 【重慶長安汽車公司績效管理現(xiàn)狀、問題及優(yōu)化對策(7600字論文)】
- 家鄉(xiāng)-延安課件
- 孔軸的極限偏差表
- 熱軋鋼板和鋼帶尺寸允許偏差
- 無人機導(dǎo)航與通信技術(shù)PPT完整全套教學(xué)課件
- BBC-商務(wù)英語會話
- 中等職業(yè)學(xué)校畢業(yè)生就業(yè)推薦表
- 鋼結(jié)構(gòu)設(shè)計原理全套PPT完整教學(xué)課件
- 2023年浙江首考讀后續(xù)寫真題講評課件 高三英語二輪復(fù)習(xí)寫作專項+
- 各期前列腺癌治療的指南推薦
- 《植物學(xué)教學(xué)資料》第2章細胞與組織2馬煒梁版
評論
0/150
提交評論