




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
《操作系統(tǒng)教程》習(xí)題答案
習(xí)題11.單項(xiàng)選擇題(1)大中小型計(jì)算機(jī)是以為中心的計(jì)算機(jī)系統(tǒng)。A、CPUB、存儲(chǔ)器C、系統(tǒng)總線D、通道(2)以下關(guān)于操作系統(tǒng)的說法正確的是。A、批處理系統(tǒng)是實(shí)現(xiàn)人機(jī)交互的系統(tǒng)B、批處理系統(tǒng)具有批處理功能,但不具有交互能力C、分時(shí)系統(tǒng)是實(shí)現(xiàn)自動(dòng)控制,無須人為干預(yù)的系統(tǒng)D、分時(shí)系統(tǒng)即具有分時(shí)交互能力,又具有批處理能力(3)操作系統(tǒng)的職能是管理軟硬件資源、合理地組織計(jì)算機(jī)工作流程和。A、為用戶提供良好的工作環(huán)境和接口B、對(duì)用戶的命令作出快速響應(yīng)C、作為服務(wù)機(jī)構(gòu)向其它站點(diǎn)提供優(yōu)質(zhì)服務(wù)D、防止有人以非法手段進(jìn)入系統(tǒng)(4)設(shè)計(jì)實(shí)時(shí)操作系統(tǒng)時(shí),首先應(yīng)考慮系統(tǒng)的。A、可靠性和靈活性B、實(shí)時(shí)性和可靠性C、優(yōu)良性和分配性D、靈活性和分配性(5)多道程序設(shè)計(jì)是指。A、在分布式系統(tǒng)中同一時(shí)刻運(yùn)行多個(gè)程序B、在一臺(tái)處理器上并行運(yùn)行多個(gè)程序C、在實(shí)時(shí)系統(tǒng)中并發(fā)運(yùn)行多個(gè)程序D、在一臺(tái)處理器上并發(fā)運(yùn)行多個(gè)程序(6)以下關(guān)于并發(fā)性和并行性的說法正確的是。A、并發(fā)性是指兩個(gè)及多個(gè)事件在同一時(shí)刻發(fā)生B、并發(fā)性是指兩個(gè)及多個(gè)事件在同一時(shí)間間隔內(nèi)發(fā)生C、并行性是指兩個(gè)及多個(gè)事件在同一時(shí)間間隔內(nèi)發(fā)生D、并發(fā)性是指進(jìn)程,并行性是指程序(1)B(2)B(3)A(4)B(5)D(6)B2.填空題(1)微機(jī)是以總線為紐帶構(gòu)成的計(jì)算機(jī)系統(tǒng)。(2)在批處理兼分時(shí)系統(tǒng)中,往往把由分時(shí)系統(tǒng)控制的作業(yè)稱為前臺(tái)作業(yè),把由批處理系統(tǒng)控制的作業(yè)稱為后臺(tái)作業(yè)。(3)在分時(shí)系統(tǒng)中,若時(shí)間片長度一定,則用戶數(shù)越多,系統(tǒng)響應(yīng)時(shí)間越慢。(4)分布式操作系統(tǒng)能使系統(tǒng)中若干臺(tái)計(jì)算機(jī)協(xié)同完成一個(gè)共同的任務(wù),分解問題成為子計(jì)算并使之在系統(tǒng)中各臺(tái)計(jì)算機(jī)上并行執(zhí)行,以充分利用各計(jì)算機(jī)的優(yōu)勢(shì)。(5)用戶通過網(wǎng)絡(luò)操作系統(tǒng)可以網(wǎng)絡(luò)通信、資源共享,從而大大擴(kuò)展了計(jì)算機(jī)的應(yīng)用范圍。3.簡(jiǎn)答題(1)什么是操作系統(tǒng)?現(xiàn)代操作系統(tǒng)的基本特征是什么?操作系統(tǒng)是直接控制和管理計(jì)算機(jī)系統(tǒng)中的硬件和軟件資源,合理地組織計(jì)算機(jī)工作流程,便于用戶使用的程序集合。操作系統(tǒng)的基本特征:并發(fā)性,共享性,虛擬性,異步性(2)什么是批處理系統(tǒng),衡量批處理系統(tǒng)好壞的主要指標(biāo)是什么?批處理系統(tǒng):批處理指用戶將一批作業(yè)提交給操作系統(tǒng)后就不再干預(yù),由操作系統(tǒng)控制它們自動(dòng)運(yùn)行。這種采用批量處理作業(yè)技術(shù)的操作系統(tǒng)稱為批處理系統(tǒng)。衡量批處理系統(tǒng)主要指標(biāo)是系統(tǒng)的吞吐率。(3)試述分時(shí)系統(tǒng)的原理及其特性。分時(shí)系統(tǒng)將多個(gè)用戶分享同一臺(tái)計(jì)算機(jī)。采用時(shí)間片輪轉(zhuǎn)方式處理服務(wù)請(qǐng)求,并通過交互方式在終端上顯示結(jié)果。特性:交互性同時(shí)性獨(dú)立性及時(shí)性(4)操作系統(tǒng)有哪幾大特征?它的最基本特征是什么?特征:并發(fā)性虛擬性共享性異步性最基本特征并發(fā)性(5)網(wǎng)絡(luò)操作系統(tǒng)與分布式操作系統(tǒng)的關(guān)鍵區(qū)別是什么?(1)分布性。分布式操作系統(tǒng)的處理和控制功能均為分布式的;而網(wǎng)絡(luò)操作系統(tǒng)雖具分布處理功能,但其控制功能卻是集中在某個(gè)或某些主機(jī)或網(wǎng)絡(luò)服務(wù)器中,即集中式控制方式。
(2)并行性。分布式操作系統(tǒng)具有任務(wù)分配功能,可將多個(gè)任務(wù)分配到多個(gè)處理單元上,使這些任務(wù)并行執(zhí)行,從而加速了任務(wù)的執(zhí)行;而網(wǎng)絡(luò)操作系統(tǒng)通常無任務(wù)分配功能,網(wǎng)絡(luò)中每個(gè)用戶的一個(gè)或多個(gè)任務(wù)通常都在本地計(jì)算機(jī)上處理。
(3)透明性。分布式操作系統(tǒng)通常能很好地隱藏系統(tǒng)內(nèi)部的實(shí)現(xiàn)細(xì)節(jié)。包括對(duì)象的物理位置、并發(fā)控制和系統(tǒng)故障等對(duì)用戶都是透明的。例如,當(dāng)用戶要訪問某個(gè)文件時(shí),只需提供文件名而無須知道(所要訪問的對(duì)象)它是駐留在那個(gè)站點(diǎn)上,即可對(duì)它進(jìn)行訪問,以即具有物理位置的透明性。網(wǎng)絡(luò)操作系統(tǒng)的透明性則主要指操作實(shí)現(xiàn)上的透明性。例如,當(dāng)用戶要訪問服務(wù)器上的文件時(shí),只需發(fā)出相應(yīng)的文件存取命令,而無需了解對(duì)該文件的存取是如何實(shí)現(xiàn)的。
(4)共享性。分布式操作系統(tǒng)支持系統(tǒng)中所有用戶對(duì)分布在各個(gè)站點(diǎn)上的軟硬件資源的共享和透明方式訪問。而網(wǎng)絡(luò)操作系統(tǒng)所提供的資源共享功能僅局限于主機(jī)或網(wǎng)絡(luò)服務(wù)器中資源,對(duì)于其它機(jī)器上的資源通常僅有使用該機(jī)的用戶獨(dú)占。
(5)健壯性。分布式操作系統(tǒng)由于處理和控制功能的分布性而具有較好的可用性和可靠性,即健壯性。而網(wǎng)絡(luò)操作系統(tǒng)由于控制功能的集中式特點(diǎn)而使系統(tǒng)重構(gòu)功能較弱,且具有潛在的不可靠性。4.綜合應(yīng)用題有3個(gè)程序A、B、C在系統(tǒng)中單獨(dú)處理占用的CPU時(shí)間和I/O設(shè)備時(shí)間如下表所示:程序ACPU20msIO230msCPU30msIO220msCPU30msIO120ms程序BIO230msCPU30msIO140msCPU30msIO120ms程序CIO120msCPU50msIO130msCPU20msIO230ms假定在具有2個(gè)CPU為X和Y的多機(jī)系統(tǒng)中,以多道程序設(shè)計(jì)方式,按如下條件執(zhí)行上述3個(gè)程序,條件如下:(1)X和Y運(yùn)算速度相同,整個(gè)系統(tǒng)可以同時(shí)執(zhí)行2個(gè)程序,并且在并行處理程序時(shí)速度也不下降。(2)X的優(yōu)先級(jí)比Y高,即當(dāng)X、Y均能執(zhí)行程序時(shí),由X去執(zhí)行。(3)當(dāng)多個(gè)程序同時(shí)請(qǐng)求CPU或I/O設(shè)備時(shí),按程序A、B、C的次序分配所請(qǐng)求的資源。(4)除非請(qǐng)求輸入輸出,否則執(zhí)行中的程序不會(huì)被打斷,也不會(huì)把控制轉(zhuǎn)給別的CPU。而且因輸入輸出而中斷的程序再重新執(zhí)行時(shí),不一定仍在同一CPU上執(zhí)行。(5)控制程序的介入時(shí)間可忽略不計(jì)。(6)程序A、B、C同時(shí)開始執(zhí)行。求:(1)程序A、B、C同時(shí)開始執(zhí)行到執(zhí)行完畢為止的時(shí)間。(2)X和Y的使用時(shí)間。程序運(yùn)行情況如下圖所示:I/O2I/O213014015017018011010090200306070單位:msCPUXCPUYI/O1程序A程序B程序C由上圖可以看出(1)A170msB150msC180ms(2)X的使用時(shí)間120msY的使用時(shí)間90ms題21.單項(xiàng)選擇題(1)用戶使用操作系統(tǒng)通常有3種手段,它們是終端命令、系統(tǒng)調(diào)用命令和。A、計(jì)算機(jī)高級(jí)指令B、作業(yè)控制語言C、宏命令D、匯編語言(2)系統(tǒng)調(diào)用的目的是。A、請(qǐng)求系統(tǒng)服務(wù)B、終止系統(tǒng)服務(wù)C、申請(qǐng)系統(tǒng)資源D、釋放系統(tǒng)資源(3)在批處理系統(tǒng)中,用戶使用對(duì)作業(yè)的各種可能的控制要求進(jìn)行控制。 A、命令驅(qū)動(dòng) B、訪管指令 C、系統(tǒng)調(diào)用 D、作業(yè)說明書(4)適合于交互式終端用戶來說明作業(yè)加工步驟的手段是。A、匯編語言B、高級(jí)語言C、作業(yè)控制語言D、系統(tǒng)功能調(diào)用E、操作控制命令(1)B(2)A(3)D(4)E2.填空題(1)操作系統(tǒng)代碼在核心態(tài)下運(yùn)行,用戶一般程序在用戶態(tài)下運(yùn)行。(2)當(dāng)用戶程序要調(diào)用系統(tǒng)服務(wù)時(shí),需要通過一條專門的指令來完成從用戶態(tài)到核心態(tài)的切換,這條指令稱為訪管指令。(3)操作系統(tǒng)為批處理用戶提供作業(yè)控制語言,為分時(shí)用戶提供聯(lián)機(jī)命令來說明作業(yè)加工步驟。(4)作業(yè)控制語言是由一些的語句組成的。(5)批處理控制方式也可以稱為脫機(jī)控制方式,交互式控制方式也可以稱為聯(lián)機(jī)控制方式。(6)在批處理系統(tǒng)中,用戶提交作業(yè)時(shí)必須同時(shí)提交用作業(yè)控制語言編寫的作業(yè)說明書來說明對(duì)作業(yè)的控制意圖。3.名詞解釋(1)作業(yè)控制級(jí)接口。用戶通過鍵盤命令或作業(yè)控制命令,對(duì)程序進(jìn)行控制(2)程序級(jí)接口。系統(tǒng)調(diào)用或稱應(yīng)用程序接口(3)用戶態(tài)。用戶程序工作的狀態(tài)(4)核心態(tài)。把系統(tǒng)程序工作的狀態(tài)(5)特權(quán)指令。只允許在核心態(tài)下使用的指令(6)訪管指令。用戶要使用I/O設(shè)備,必須在核心態(tài)下使用(7)系統(tǒng)調(diào)用。用戶在程序中調(diào)用操作系統(tǒng)所提示的一些子功能4.簡(jiǎn)答題(1)在用戶和操作系統(tǒng)之間,通常提供了哪幾種類型的接口?它們的主要功能是什么?控制級(jí)接口:用戶通過鍵盤命令或作業(yè)控制命令對(duì)程序進(jìn)行控制程序級(jí)接口:系統(tǒng)調(diào)用(2)什么是作業(yè)、作業(yè)步、作業(yè)流?作業(yè):用戶一次請(qǐng)求計(jì)算機(jī)系統(tǒng)為其完成任務(wù)所進(jìn)行工作的總和作業(yè)步:作業(yè)的每一步驟稱為作業(yè)步作業(yè)流:作業(yè)步控制流程(3)命令驅(qū)動(dòng)方式中命令的一般格式是什么?主要有哪幾種命令類型?一般格式:COMMANDarg1,arg2…….,argn[option1,option2,….,optionm]類型:1.系統(tǒng)訪問命令2.編輯和文件管理命令3.編譯,匯編和連續(xù)指令4.調(diào)試命令5.維護(hù)管理命令6.其它命令(4)什么是特權(quán)指令?為什么要把指令分為特權(quán)指令和非特權(quán)指令?特權(quán)指令:只允許在核心態(tài)下使用的指令稱為特權(quán)指令非特權(quán)指令:特權(quán)指令以外的指令,它們的執(zhí)行不影響其它用戶及系統(tǒng)(5)說明以下各條指令是特權(quán)指令還是非特權(quán)指令。1)啟動(dòng)打印機(jī);2)結(jié)束進(jìn)程;3)計(jì)算e的n次方;4)清內(nèi)存5)讀時(shí)鐘6)修改指令地址寄存器內(nèi)容。12456特權(quán)指令3非特權(quán)指令(6)系統(tǒng)調(diào)用分為哪幾類?它們各有什么作用?一部分功能是系統(tǒng)自身所需要的,另一部分功能是作為服務(wù)提供給用戶的(7)一個(gè)圖形窗口通常由哪幾部分組成?程序圖標(biāo),組圖標(biāo)和應(yīng)用程序項(xiàng)圖標(biāo)
習(xí)題31.單項(xiàng)選擇題(1)進(jìn)程創(chuàng)建原語的任務(wù)是。A、為進(jìn)程編制程序B、為進(jìn)程建立PCB表C、為進(jìn)程分配CPUD、為進(jìn)程分配所需的各種資源(2)進(jìn)程從執(zhí)行狀態(tài)變?yōu)樽枞麘B(tài)的原因可能是。A、I/O事件發(fā)生B、I/O事件完成 C、時(shí)間片到D、某個(gè)進(jìn)程被喚醒(3)進(jìn)程由執(zhí)行態(tài)變化到就緒態(tài)的可能原因是。 A、等待的事件發(fā)生B、高優(yōu)先級(jí)進(jìn)程到來 C、I/O完成D、等待某事件的發(fā)生(4)進(jìn)程在執(zhí)行過程中,其狀態(tài)總是在不停地發(fā)生變化,下面關(guān)于進(jìn)程狀態(tài)變化的說法正確的是。進(jìn)程一旦形成,首先進(jìn)入的是運(yùn)行狀態(tài)在分時(shí)系統(tǒng)中,一個(gè)正在運(yùn)行的進(jìn)程的時(shí)間片如果終結(jié),該進(jìn)程將轉(zhuǎn)入就緒狀態(tài)一個(gè)進(jìn)程必須經(jīng)過進(jìn)程的三個(gè)基本狀態(tài)才能結(jié)束三種進(jìn)程狀態(tài)是進(jìn)程運(yùn)行過程中的基本狀態(tài),進(jìn)程可能同時(shí)處于某幾種狀態(tài)中(5)進(jìn)程的上下文是執(zhí)行活動(dòng)全過程的靜態(tài)描述,它在時(shí)切換。系統(tǒng)調(diào)度新進(jìn)程占有CPU時(shí)進(jìn)程因等待某一事件的發(fā)生而由運(yùn)行態(tài)轉(zhuǎn)為阻塞態(tài)時(shí)進(jìn)程由阻塞態(tài)轉(zhuǎn)為就緒態(tài)時(shí)作業(yè)因完成而撤出時(shí)(6)以下進(jìn)程狀態(tài)的轉(zhuǎn)換中,是不可能的。A、運(yùn)行態(tài)就緒態(tài)B、運(yùn)行態(tài)阻塞態(tài)C、阻塞態(tài)運(yùn)行態(tài)D、阻塞態(tài)就緒態(tài)(7)同一程序運(yùn)行在不同的數(shù)據(jù)集上,創(chuàng)建了的進(jìn)程。 A、相同B、不同C、同步D、互斥(8)進(jìn)程調(diào)度是從中選擇一個(gè)進(jìn)程進(jìn)入處理器中運(yùn)行。 A、就緒隊(duì)列B、阻塞隊(duì)列C、提交隊(duì)列D、后備隊(duì)列(1)B(2)A(3)B(4)B(5)A(6)C(7)B(8)A2.填空題(1)一個(gè)進(jìn)程獲得了除CPU外的一切資源,則稱此進(jìn)程處于就緒態(tài)。(2)一個(gè)進(jìn)程由于等待某一事件的發(fā)生而暫時(shí)停止運(yùn)行,這時(shí)即使把CPU分配給進(jìn)程也無法運(yùn)行,則稱該進(jìn)程處于阻塞態(tài)。(3)在一個(gè)只有一個(gè)CPU的系統(tǒng)中,假如某時(shí)刻該系統(tǒng)中有10個(gè)進(jìn)程并發(fā)執(zhí)行,在略去調(diào)度時(shí)間所占用時(shí)間的前提下,則:1)這時(shí)刻系統(tǒng)中處于運(yùn)行態(tài)的進(jìn)程最多有1個(gè),最少有0個(gè)。2)這時(shí)刻系統(tǒng)中處于就緒態(tài)的進(jìn)程最多有9個(gè),最少有0個(gè)。3)這時(shí)刻系統(tǒng)中處于阻塞態(tài)的進(jìn)程最多有10個(gè),最少有0個(gè)。(4)操作系統(tǒng)對(duì)進(jìn)程的控制是根據(jù)PCB來進(jìn)行的,對(duì)進(jìn)程的管理是通過PCB來實(shí)現(xiàn)的。3.基本概念的解釋和辨析(1)進(jìn)程和程序a.進(jìn)程是動(dòng)態(tài)的,程序是靜態(tài)的b.進(jìn)程是暫時(shí)的,程序是永久的c.進(jìn)程與程序的組合結(jié)構(gòu)不同(2)進(jìn)程和作業(yè)一個(gè)正在執(zhí)行的進(jìn)程稱為作業(yè),作業(yè)可包含一個(gè)或多個(gè)進(jìn)程(3)進(jìn)程和線程a.地址空間資源:不同的進(jìn)程地址空間是相互獨(dú)立的,而統(tǒng)一進(jìn)程的各線程共享同一地址空間b.并發(fā)性:引入線程的操作系統(tǒng)中,不僅進(jìn)程之間可以并發(fā)執(zhí)行,而且一個(gè)進(jìn)程的多個(gè)線程之間亦可并發(fā)執(zhí)行c.通信關(guān)系:進(jìn)程間的通信必須使用操作系統(tǒng)提供的進(jìn)程間的tongxinjizhi,而統(tǒng)一進(jìn)程的各線程間可以通過直接讀寫進(jìn)程端來進(jìn)行通信d.切換速度:操作系統(tǒng)的進(jìn)程獨(dú)占自己的虛擬空間,調(diào)度進(jìn)程時(shí),系統(tǒng)必須交換地址空間,因而進(jìn)程切換時(shí)間長(4)原語和系統(tǒng)調(diào)用原語:把在核心態(tài)下執(zhí)行的某些具有特定功能的程序段稱為原語系統(tǒng)調(diào)用:內(nèi)核提供一系列具備預(yù)定功能的內(nèi)核函數(shù),通過一組稱為系統(tǒng)調(diào)用的借口呈現(xiàn)給用戶。(5)內(nèi)核和微內(nèi)核內(nèi)核:操作系統(tǒng)的這一常駐內(nèi)存部分稱為內(nèi)核微內(nèi)核:內(nèi)核的精簡(jiǎn)版本,在很小的內(nèi)存空間內(nèi)增加移植性,提供模塊化設(shè)計(jì),以使安裝用戶不同的接口。(6)用戶級(jí)線程和核心級(jí)線程用戶級(jí)線程的管理過程全由用戶程序完成,在這樣的系統(tǒng)中,操作系統(tǒng)核心只對(duì)進(jìn)程進(jìn)行管理核心級(jí)線程由操作系統(tǒng)內(nèi)核進(jìn)行管理。操作系統(tǒng)內(nèi)核為應(yīng)用程序提供相應(yīng)的系統(tǒng)調(diào)用和應(yīng)用程序接口API,供用戶程序創(chuàng)建執(zhí)行撤銷線程。4.綜合題(1)某系統(tǒng)的進(jìn)程狀態(tài)轉(zhuǎn)換圖如圖3.16所示,請(qǐng)說明:1)引起各種狀態(tài)轉(zhuǎn)換的典型原因有哪些?運(yùn)行態(tài)→就緒態(tài)時(shí)間片到或被更高優(yōu)先級(jí)的進(jìn)程搶占就緒態(tài)→運(yùn)行態(tài)被調(diào)度運(yùn)行態(tài)→阻塞態(tài)等待某一事件的發(fā)生而事件未發(fā)生阻塞態(tài)→就緒態(tài)等待的事件已發(fā)生43214321行圖3.16某系統(tǒng)進(jìn)程狀態(tài)轉(zhuǎn)換圖3)如圖3.16,說明是否會(huì)發(fā)生下述因果轉(zhuǎn)換:2→1會(huì),在搶占式調(diào)度的情況下,更高優(yōu)先級(jí)的進(jìn)程到達(dá)3→2會(huì),一個(gè)正在運(yùn)行的進(jìn)程因等待某一事件的發(fā)生而轉(zhuǎn)入阻塞態(tài),而就緒隊(duì)列中有進(jìn)程在等待運(yùn)行4→1不會(huì)(2)有一個(gè)單向鏈接的進(jìn)程PCB隊(duì)列,它的隊(duì)首由系統(tǒng)指針指出,隊(duì)尾進(jìn)程鏈接指針為0。分別畫出一個(gè)進(jìn)程從隊(duì)首入隊(duì)和隊(duì)尾入隊(duì)的流程圖。(3)掛起狀態(tài)和阻塞狀態(tài)有何區(qū)別?在具有掛起操作的系統(tǒng)中,進(jìn)程的狀態(tài)有哪些?如何變遷?被掛起進(jìn)程處于靜止?fàn)顟B(tài),不能參與競(jìng)爭(zhēng)CPU,直到被激活,但被掛起進(jìn)程可能并不缺少資源;而阻塞進(jìn)程是由于等待某一事件的發(fā)生,處于缺乏資源的狀態(tài)。(4)在創(chuàng)建一個(gè)進(jìn)程時(shí)需要完成的主要工作是什么?在撤消一個(gè)進(jìn)程時(shí)需要完成的主要工作又是什么?創(chuàng)建進(jìn)程的主要工作是為被創(chuàng)建進(jìn)程創(chuàng)建一個(gè)PCB,并填入相應(yīng)的初始值。并把該進(jìn)程插入就緒隊(duì)列。撤消該進(jìn)程的所有子孫進(jìn)程。在撤消的過程中,被撤消進(jìn)程的所有系統(tǒng)資源(內(nèi)存、外設(shè))應(yīng)全部釋放出來歸還給系統(tǒng),并將它們從所有隊(duì)列中移出。如果被撤消進(jìn)程正在處理器上運(yùn)行,則要調(diào)用進(jìn)程調(diào)度程序?qū)⑻幚砥鞣峙浣o其它進(jìn)程。(5)什么是可再入程序?其有何特性?能被多個(gè)程序同時(shí)調(diào)用的程序。它具有以下性質(zhì):它是純代碼的,即它在執(zhí)行過程中不改變自身代碼,通常由指令和常量等程序邏輯中的不變部分組成;調(diào)用它的各程序應(yīng)提供工作區(qū),用以存放隨著程序執(zhí)行將發(fā)生變化的部分,諸如程序中的數(shù)組、變量和通用存儲(chǔ)器內(nèi)的信息。(6)在使用線程的系統(tǒng)中,是每個(gè)線程有一個(gè)堆棧還是每個(gè)進(jìn)程有一個(gè)堆棧?說明原因。(7)線程通常有哪些狀態(tài)?為了管理線程,操作系統(tǒng)一般提供哪些原語?線程狀態(tài):就緒態(tài),運(yùn)行態(tài),阻塞態(tài)原語:派生,阻塞,激活
習(xí)題41.單項(xiàng)選擇題(1)要避免出現(xiàn)與時(shí)間有關(guān)的錯(cuò)誤,對(duì)若干進(jìn)程的相關(guān)臨界區(qū)的管理應(yīng)滿足以下除外的要求。一次最多讓一個(gè)進(jìn)程在臨界區(qū)中執(zhí)行任何一個(gè)進(jìn)入臨界區(qū)執(zhí)行的進(jìn)程必須在有限時(shí)間內(nèi)退出臨界區(qū)避免進(jìn)程進(jìn)入相關(guān)臨界區(qū)不能強(qiáng)迫一個(gè)進(jìn)程無限期地等待進(jìn)入它的臨界區(qū)(2)有三個(gè)進(jìn)程P1、P2、P3共享同一個(gè)程序段,而每次最多允許兩個(gè)進(jìn)程進(jìn)入該程序段,則信號(hào)量S的初值為。A、0B、1C、2D、3(3)在操作系統(tǒng)中wait、signal操作是一種。A、機(jī)器指令B、系統(tǒng)調(diào)用命令 C、作業(yè)控制命令D、低級(jí)進(jìn)程通信(4)用signal操作喚醒一個(gè)進(jìn)程時(shí),被喚醒進(jìn)程的狀態(tài)應(yīng)變成狀態(tài)。 A、等待B、運(yùn)行C、就緒D、完成(5)用信箱實(shí)現(xiàn)并發(fā)進(jìn)程間的通信需要兩個(gè)基本的通信原語,它們是。A、wait原語和signal原語B、send原語和receive原語 C、R(S)和W(S)D、以上都不是 (6)用來實(shí)現(xiàn)進(jìn)程同步與互斥的wait,signal操作,實(shí)際上是的過程。 A、一個(gè)可被中斷B、一個(gè)不可被中斷 C、兩個(gè)可被中斷D、兩個(gè)不可被中斷(1)C(2)C(3)D(4)C(5)B(6)D2.填空題(1)臨界資源是一次只允許一個(gè)進(jìn)程使用的資源,臨界區(qū)是訪問臨界資源的那段代碼。(2)信號(hào)量s>0時(shí),表示資源的空閑數(shù)量;當(dāng)s=0時(shí),表示資源已經(jīng)耗盡,但沒有進(jìn)程在等待;若s<0,則表示有|s|個(gè)進(jìn)程在等待。(3)設(shè)計(jì)進(jìn)程同步機(jī)制的準(zhǔn)則有空閑讓進(jìn)、忙則等待、有限等待和讓權(quán)等待。3.基本概念解釋和辨析(1)同步與互斥。同步:散布在不同進(jìn)程之間的若干程序片段,按規(guī)定的先后次序來運(yùn)行互斥:散布在不同進(jìn)程之間的若干程序片段,當(dāng)某個(gè)進(jìn)程運(yùn)行其中一個(gè)程序片段時(shí),其他進(jìn)程就不能運(yùn)行它們之中的任一程序片段,只能等到該進(jìn)程運(yùn)行完這個(gè)程序片段后才可運(yùn)行。(2)臨界資源與臨界區(qū)。臨界資源:臨界資源是一次僅允許一個(gè)進(jìn)程使用的共享資源臨界區(qū):每個(gè)進(jìn)程中訪問臨界資源的那段程序(3)高級(jí)通信與低級(jí)通信。低級(jí)通信:由于進(jìn)程互斥與同步交換的信息量較少,每次通信傳遞的信息量固定且效率較低高級(jí)通信:進(jìn)程之間以較高的效率傳送大量數(shù)據(jù)的通信方式(4)直接通信與間接通信。直接通信:需要通信中,需要通信的每個(gè)進(jìn)程必須直接指明通信的接收方式或發(fā)送方間接通信:消息和發(fā)送的信息通過信箱進(jìn)行。進(jìn)程可以把消息放置其中取走。4.論述題(1)什么是“忙等待”?如何克服“忙等待”?如果在單處理器系統(tǒng)中,一個(gè)進(jìn)程試圖進(jìn)入處于“忙”狀態(tài)的臨界區(qū),則該進(jìn)程只能不斷測(cè)試臨界區(qū)的狀態(tài),這就是“忙等待”。讓試圖進(jìn)入“忙”狀態(tài)的臨界區(qū)的進(jìn)程“睡眠”等待,由釋放資源的進(jìn)程將其喚醒,便可克服“忙等待”的缺點(diǎn)。(2)在解決進(jìn)程互斥時(shí),如果TS指令的執(zhí)行可以中斷,則會(huì)出現(xiàn)什么情況?而如果wait、signal的執(zhí)行可分割,又會(huì)出現(xiàn)什么情況?如果wait可被分割,則可能破壞“空閑讓進(jìn)”準(zhǔn)則。如s.value=1,進(jìn)程A執(zhí)行wait操作,進(jìn)行s.value--,s.value的值為0;如果此時(shí)被中斷,進(jìn)程B執(zhí)行wait操作,進(jìn)行s.value--,s.value的值為-1,則進(jìn)程B將被阻塞;此時(shí)進(jìn)程A恢復(fù)中斷,由于s.value的值為-1,也將被阻塞,從而破壞了“空閑讓進(jìn)”準(zhǔn)則。如果signal可被分割,也有可能破壞“空閑讓進(jìn)”準(zhǔn)則。如s.value=-1,進(jìn)程C在等待s資源,進(jìn)程A執(zhí)行signal操作,進(jìn)行s.value++,s.value的值為0;如果此時(shí)被中斷,進(jìn)程B執(zhí)行signal操作,進(jìn)行s.value++,s.value的值為1,進(jìn)程B不會(huì)喚醒進(jìn)程C;此時(shí)進(jìn)程A恢復(fù)中斷,由于s.value的值為1,也不會(huì)喚醒進(jìn)程C,從而破壞了“空閑讓進(jìn)”準(zhǔn)則。(3)使用parbegin改寫下面的表達(dá)式以獲得最大程度的并行性。(3*a*b+4)/(c+d)**(e-f)typedefFan_TypeDataType;Fan_Typex;Fan_TypeP1(){ return(3*a*b+4);}Fan_TypeP2(){ return(c+d);}Fan_TypeP3(){ return(e-f);}voidmain(){ Fan_Typea,b,c;parbegin(a=P1,b=P2,c=P3); xa/b**c;}(4)設(shè)有幾個(gè)進(jìn)程共享一互斥段,對(duì)于如下兩種情況:(1)每次只允許一個(gè)進(jìn)程進(jìn)入臨界區(qū);(2)最多允許m個(gè)進(jìn)程(m<n)同時(shí)進(jìn)入臨界區(qū)。所采用的信號(hào)量是否相同?信號(hào)量值的變化范圍如何?(1)信號(hào)量值的變化范圍為s.value<=1;(2)信號(hào)量值的變化范圍為s.value<=m;(5)下面是兩個(gè)并發(fā)執(zhí)行的進(jìn)程,它們能正確執(zhí)行嗎?若不能正確執(zhí)行,請(qǐng)舉例說明,并改正之(x是公共變量)。voidP1(){ inty,z; x=1; y=0; if(x>=1)y=y+1;z=y; } voidP2() { intt,u; x=0; t=0; if(x<1)t=t+z; u=t; } voidmain() { parbegin(P1(),P2()); }不能正確執(zhí)行。如進(jìn)程P1執(zhí)行過程中不被中斷,進(jìn)程運(yùn)行結(jié)束后x,y,z的值均為1;但若進(jìn)程P1執(zhí)行到y(tǒng)=0時(shí)被中斷,進(jìn)程P2執(zhí)行完畢后x的值為0,則P1恢復(fù)中斷后獲得的結(jié)果為x,y,z的值均為0,從而發(fā)生與時(shí)間有關(guān)的錯(cuò)誤。structsemaphores;s.value=1; voidP1(){ inty,z; wait(s); x=1; y=0; if(x>=1)y=y+1; z=y; signal(s); } voidP2() { intt,u; wait(s); x=0; t=0; if(x<1)t=t+z; u=t; signal(s); } voidmain() { parbegin(P1(),P2()); }(6)共享存儲(chǔ)區(qū)通信是如何實(shí)現(xiàn)的?(7)假設(shè)某系統(tǒng)未直接提供信號(hào)量機(jī)制,但提供了進(jìn)程通信工具。如果某程序希望使用關(guān)于信號(hào)量的wait、signal操作,那么該程序應(yīng)如何利用通信工具模擬信號(hào)量機(jī)制?要求說明如何用send/receive操作及消息表示wait/signal操作及信號(hào)量。5.應(yīng)用題(1)有三個(gè)并發(fā)進(jìn)程R、W1和W2,共享兩個(gè)各可存放一個(gè)數(shù)的緩沖區(qū)B1、B2。進(jìn)程R每次從輸入設(shè)備讀入一個(gè)數(shù),若讀入的是奇數(shù),則將它存入B1中,若讀入的是偶數(shù),將它存入B2中;當(dāng)B1中有數(shù),由進(jìn)程W1將其打印輸出;當(dāng)B2中有數(shù),進(jìn)程W2將其打印輸出。試編寫保證三者正確工作的程序。structsemaphoneB1_Empty,B1_Full,B2_Empty,B2_Full;B1_Empty.value=1;B1_Full.value=0;B2_Empty.value=1;B2_Full.value=0;voidR(){ inta; While(1){ readanumbera; if(a%2==1) { wait(B1_Empty);putainB1;signal(B1_Full); } else { wait(B2_Empty);putainB2;signal(B2_Full); } } } voidW1() { while(1) { wait(B1_Full); printanumberfromB1; signal(B1_Empty); } } voidW2() { while(1) { wait(B2_Full); printanumberfromB2; signal(B2_Empty); } } voidmain() { parbegin(R(),W1(),W2()); }(2)8個(gè)協(xié)作的任務(wù)A、B、C、D、E、F、G、H分別完成各自的工作。它們滿足下列條件:任務(wù)A必須領(lǐng)先于任務(wù)B、C和E;任務(wù)E和D必須領(lǐng)先于任務(wù)F;任務(wù)B和C必須領(lǐng)先與任務(wù)D;而任務(wù)F必須領(lǐng)先于任務(wù)G和H。試寫出并發(fā)程序,使得在任何情況下它們均能正確工作。(3)多個(gè)進(jìn)程共享一個(gè)文件,其中只讀文件的稱為讀者,只寫文件的稱為寫者。讀者可以同時(shí)讀,但寫者只能獨(dú)立寫。問:1)說明進(jìn)程間的制約關(guān)系,應(yīng)設(shè)置哪些信號(hào)量?2)用wait、signal操作寫出其同步程序。3)修改上述算法,使得它對(duì)寫者優(yōu)先,即一旦有寫者到達(dá),后續(xù)的讀者必須等待。而無論是否有讀者在讀文件。見教材“讀者-寫者問題”(4)桌上有一空盤,可放一只水果。爸爸可向盤中放蘋果,也可向盤中放桔子;兒子專等吃盤中的桔子;女兒專等吃盤中的蘋果。規(guī)定一次只能放一只水果,試寫出爸爸、兒子、女兒正確同步的程序。structsemaphoneplate,apple,orange;plate.value=1;apple.value=0;orange.value=0;voidfather(){ while(1){ prepareanappleororange; wait(plate); puttheappleororangeinplate; if(Apple)signal(apple);//如果放的是蘋果 elsesignal(orange);//如果放的是桔子} } voidson() { while(1) { wait(orange); getanorangefromtheplate; signal(plate); } } voiddaughter() { while(1) { wait(apple); getanapplefromtheplate; signal(plate); } } Voidmain() (5)三個(gè)進(jìn)程P1、P2、P3互斥使用一個(gè)包含N(N>0)個(gè)單元的緩沖區(qū)。P1每次用procuce()生成一個(gè)正整數(shù)并用put()送入緩沖區(qū)某一空單元中;P2每次用getodd()從該緩沖區(qū)中取出一個(gè)奇數(shù)并用countodd()統(tǒng)計(jì)奇數(shù)個(gè)數(shù);P3每次用geteven()從該緩沖區(qū)中取出一個(gè)偶數(shù)并用counteven()統(tǒng)計(jì)偶數(shù)個(gè)數(shù)。請(qǐng)用信號(hào)量機(jī)制實(shí)現(xiàn)這三個(gè)進(jìn)程的同步與互斥活動(dòng),并說明所定義的信號(hào)量的含義。要求用偽代碼描述(2009年全國碩士研究生入學(xué)考試題)。structsemaphonefull_odd,full_even,mutex,empty;full_odd.value=0;full_even.value=0;mutex.value=1;empty.value=N;voidP1(){ intX; while(1){ X=produce(); wait(empty); wait(mutex); put(); if(X%2==0)signal(full_even); elsesignal(full_odd); signal(mutex);} } voidP2() { wait(full_odd); wait(mutex); getodd(); countodd()=countodd()+1; signal(empty); signal(mutex); } voidP3() { wait(full_even); wait(mutex); geteven(); counteven()=counteven()+1; signal(empty); signal(mutex); } voidmain() { parbegin(P1(),P2(),P3()); }(6)放小球問題:一個(gè)箱子里只有白色和黑色兩種小球,且數(shù)量足夠多。現(xiàn)在需要從中取出一些小球放入一個(gè)袋子中。約定:1)一次只能放入一個(gè)小球;2)白球的數(shù)量至多只能比黑球少N個(gè),至多只能比黑球多M個(gè)(M,N為正整數(shù))。請(qǐng)用信號(hào)量機(jī)制實(shí)現(xiàn)進(jìn)程的同步與互斥。structsemaphonemutex1,mutex2;intblack=0,white=0;mutex1.value=1;mutex2.value=1;voidput(){ while(1) { wait(mutex1);getablackballorwhiteballfromthebox;signal(mutex1);wait(mutex2); if(Black)//如果取到的是黑球 if(black-white<N) { black++; puttheblackballinbag; } else//如果取到的是白球 if((white-black<M) { white++; putthewhiteballinbag; } signal(mutex2); }}voidmain(){ parbegin(put());}
習(xí)題51.單項(xiàng)選擇題(1)當(dāng)作業(yè)進(jìn)入完成狀態(tài)時(shí),操作系統(tǒng)。將刪除該作業(yè)并收回其所占資源,同時(shí)輸出結(jié)果將該作業(yè)的控制塊從當(dāng)前作業(yè)隊(duì)列中刪除,收回其所占資源,并輸出結(jié)果將收回該作業(yè)所占資源并輸出結(jié)果將輸出結(jié)果并刪除內(nèi)存中的作業(yè)(2)批處理作業(yè)是被成批存入,以等待作業(yè)調(diào)度選擇。 A、輸入井B、輸出井C、映象區(qū)D、內(nèi)存(3)一種即有利于短作業(yè)又兼顧長作業(yè)的作業(yè)調(diào)度算法是。A、最高響應(yīng)比優(yōu)先B、先來先服務(wù) C、短作業(yè)優(yōu)先D、均衡調(diào)度(4)在批處理系統(tǒng)中,周轉(zhuǎn)時(shí)間是。A、作業(yè)運(yùn)行時(shí)間B、作業(yè)等待時(shí)間和運(yùn)行時(shí)間之和 C、作業(yè)的相對(duì)等待時(shí)間D、作業(yè)被調(diào)度進(jìn)入內(nèi)存到運(yùn)行完畢的時(shí)間(5)在操作系統(tǒng)中,作業(yè)處于狀態(tài)時(shí),已處于進(jìn)程管理之下。 A、提交B、后備C、運(yùn)行D、完成 (6)在作業(yè)調(diào)度中,若采用優(yōu)先級(jí)調(diào)度算法,為了盡可能使處理器和外部設(shè)備并行工作,有如下三個(gè)作業(yè):J1以計(jì)算為主,J2計(jì)算和輸入輸出兼顧,J3以輸入輸出為主,則它們的優(yōu)先級(jí)從高到低的排列順序是。 A、J1,J2,J3B、J2,J3,J1C、J2,J3,J1D、J3,J1,J2 (7)一個(gè)作業(yè)被成功調(diào)度后,系統(tǒng)為其創(chuàng)建相應(yīng)的進(jìn)程,該進(jìn)程的初始狀態(tài)是。 A、執(zhí)行態(tài)B、阻塞態(tài)C、就緒態(tài)D、等待訪問設(shè)備態(tài)(1)B(2)A(3)A(4)B(5)B2.填空題(1)作業(yè)調(diào)度是從處于后備狀態(tài)的隊(duì)列中選取適當(dāng)?shù)淖鳂I(yè)投入運(yùn)行。從作業(yè)提交給系統(tǒng)到作業(yè)完成的時(shí)間間隔叫做周轉(zhuǎn)時(shí)間。等待時(shí)間是指作業(yè)從進(jìn)入后備隊(duì)列到被調(diào)到程序中的時(shí)間間隔。假定把下列四個(gè)作業(yè)同時(shí)提交系統(tǒng)并進(jìn)入后備隊(duì)列,當(dāng)使用短作業(yè)優(yōu)先調(diào)度算法時(shí),單道環(huán)境下,四個(gè)作業(yè)的平均等待時(shí)間是4.25小時(shí),平均周轉(zhuǎn)時(shí)間是8.75小時(shí);當(dāng)使用高優(yōu)先數(shù)優(yōu)先的調(diào)度算法時(shí),作業(yè)的平均等待時(shí)間是5.75小時(shí),平均周轉(zhuǎn)時(shí)間是10.25小時(shí)。作業(yè)所需運(yùn)行時(shí)間(小時(shí))優(yōu)先數(shù)124259381437 (2)在一個(gè)具有分時(shí)兼批處理的系統(tǒng)中,總是優(yōu)先調(diào)度分時(shí)作業(yè)。 3.簡(jiǎn)答題(1)什么是分層次調(diào)度?在分時(shí)系統(tǒng)中有作業(yè)調(diào)度的概念嗎?如果沒有,為什么?分層次調(diào)度:為了提高進(jìn)程的利用率,在有些操作系統(tǒng)中把一部分在內(nèi)存中處于就緒狀態(tài)或阻塞狀態(tài)而在短時(shí)期內(nèi)又得不到執(zhí)行的進(jìn)程換出內(nèi)存,以讓其他作業(yè)的進(jìn)程競(jìng)爭(zhēng)處理器。一般地,按調(diào)度的層次,可將調(diào)度分為3級(jí):高級(jí)調(diào)度、中級(jí)調(diào)度、低級(jí)調(diào)度(2)作業(yè)調(diào)度和進(jìn)程調(diào)度的主要功能分別是什么?作業(yè)調(diào)度:主要任務(wù)是從作業(yè)后備隊(duì)列中選擇作業(yè)進(jìn)入內(nèi)存進(jìn)程調(diào)度:決定就緒隊(duì)列中哪個(gè)進(jìn)程將獲得處理機(jī)并實(shí)際執(zhí)行將處理機(jī)分配給該進(jìn)程的操作(3)作業(yè)調(diào)度的性能評(píng)價(jià)標(biāo)準(zhǔn)有哪些?這些性能評(píng)價(jià)標(biāo)準(zhǔn)在任何情況下都能反映調(diào)度策略的優(yōu)劣嗎?調(diào)度性能評(píng)價(jià)的標(biāo)準(zhǔn)有:平均周轉(zhuǎn)時(shí)間、和平均響應(yīng)時(shí)間響應(yīng)時(shí)間:從提交第一個(gè)請(qǐng)求到產(chǎn)生第一個(gè)響應(yīng)所用的時(shí)間周轉(zhuǎn)時(shí)間:從作業(yè)提交到作業(yè)完成的時(shí)間間隔其平均值不能完全反映所有的策略有劣(4)為什么說多級(jí)反饋隊(duì)列調(diào)度算法能較好地滿足各類用戶的需要?(5)假設(shè)就緒隊(duì)列中有10個(gè)進(jìn)程,系統(tǒng)將時(shí)間片設(shè)為200ms,CPU進(jìn)行進(jìn)程切換要花費(fèi)10ms,試問系統(tǒng)開銷所占的比率約為多少?(6)在批處理系統(tǒng)、分時(shí)系統(tǒng)和實(shí)時(shí)系統(tǒng)中一般常采用哪種調(diào)度算法?批處理系統(tǒng):FCFS先來先服務(wù)、最短作業(yè)優(yōu)先、最短剩余時(shí)間優(yōu)先、響應(yīng)比最高者優(yōu)先分時(shí)系統(tǒng):輪轉(zhuǎn)調(diào)度、優(yōu)先級(jí)調(diào)度、多級(jí)隊(duì)列調(diào)度、彩票調(diào)度實(shí)時(shí)系統(tǒng):?jiǎn)伪嚷收{(diào)度、限期調(diào)度、最少裕度法(7)若在后備作業(yè)隊(duì)列中等待運(yùn)行的同時(shí)有三個(gè)作業(yè)1、2、3,已知它們各自的運(yùn)行時(shí)間為a、b、c,且滿足關(guān)系a<b<c,試證明采用短作業(yè)優(yōu)先調(diào)度算法能獲得最小的平均周轉(zhuǎn)時(shí)間。(8)簡(jiǎn)述UNIXSystemV中進(jìn)程調(diào)度算法的特點(diǎn)。采用動(dòng)態(tài)優(yōu)先數(shù)調(diào)度策略,優(yōu)先數(shù)越大優(yōu)先級(jí)越低。調(diào)度程序從內(nèi)存就緒隊(duì)列中選取優(yōu)先數(shù)最小的進(jìn)程作為上行進(jìn)程3.應(yīng)用題(1)考慮5個(gè)進(jìn)程P1、P2、P3、P4、P5,它們的創(chuàng)建時(shí)間、運(yùn)行時(shí)間及優(yōu)先數(shù)如下表所示。規(guī)定進(jìn)程的優(yōu)先數(shù)越小,優(yōu)先級(jí)越高。試描述在采用下述幾種調(diào)度算法時(shí)各個(gè)進(jìn)程運(yùn)行過程,并計(jì)算采用每種算法時(shí)的進(jìn)程平均周轉(zhuǎn)時(shí)間。假設(shè)忽略進(jìn)程的調(diào)度時(shí)間。1)先來先服務(wù)調(diào)度算法;2)時(shí)間片輪轉(zhuǎn)調(diào)度算法(時(shí)間片為1ms);3)非剝奪式優(yōu)先級(jí)調(diào)度算法;4)剝奪式優(yōu)先級(jí)調(diào)度算法。進(jìn)程創(chuàng)建時(shí)間運(yùn)行時(shí)間(ms)優(yōu)先數(shù)P1033P2265P3441P4652P58241)先來先服務(wù)調(diào)度算法作業(yè)號(hào)進(jìn)入時(shí)間運(yùn)行時(shí)間(ms)開始執(zhí)行時(shí)間完成時(shí)間周轉(zhuǎn)時(shí)間P103033P226397P3449139P465131812P582182012平均周轉(zhuǎn)時(shí)間T=(3+7+9+12+12)/5=8.6ms平均帶權(quán)周轉(zhuǎn)時(shí)間W=(3/3+7/6+9/4+12/5+12/2)/5=2.562)時(shí)間片輪轉(zhuǎn)調(diào)度算法當(dāng)時(shí)間片q=1時(shí),列出下表,找出運(yùn)行序列:時(shí)刻運(yùn)行進(jìn)程排隊(duì)進(jìn)程時(shí)刻運(yùn)行進(jìn)程排隊(duì)進(jìn)程0~1P110~11P5P4P3P21~2P111~12P4P3P2P52~3P2P112~13P3P2P5P43~4P1P213~14P2P5P4P34~5P2P314~15P5P4P3P25~6P3P215~16P4P3P26~7P2P4P316~17P3P2P47~8P4P3P217~18P2P48~9P3P2P5P418~19P49~10P2P5P4P319~20P4作業(yè)號(hào)進(jìn)入時(shí)間運(yùn)行時(shí)間完成時(shí)間周轉(zhuǎn)時(shí)間P10344P2261816P3441713P4652014P582157平均周轉(zhuǎn)時(shí)間T=(4+16+13+14+7)/5=10.8ms平均帶權(quán)周轉(zhuǎn)時(shí)間W=(4/3+16/6+13/4+14/5+7/2)/5=2.153)非剝奪式優(yōu)先級(jí)調(diào)度算法作業(yè)號(hào)進(jìn)入時(shí)間運(yùn)行時(shí)間優(yōu)先數(shù)完成時(shí)間周轉(zhuǎn)時(shí)間P103333P226597P3441139P46521812P58242012平均周轉(zhuǎn)時(shí)間T=(3+7+9+12+12)/5=8.6ms平均帶權(quán)周轉(zhuǎn)時(shí)間W=(3/3+7/6+9/4+12/5+12/2)/5=2.5620151382015138430P1P2P3P4P5作業(yè)號(hào)進(jìn)入時(shí)間運(yùn)行時(shí)間優(yōu)先數(shù)完成時(shí)間周轉(zhuǎn)時(shí)間P103333P22652018P344184P4652137P5824157平均周轉(zhuǎn)時(shí)間T=(3+18+4+7+7)/5=7.8ms平均帶權(quán)周轉(zhuǎn)時(shí)間W=(3/3+18/6+4/4+7/5+7/2)/5=1.989.有一個(gè)具有兩道作業(yè)的批處理系統(tǒng),作業(yè)調(diào)度采用短作業(yè)優(yōu)先的調(diào)度算法,進(jìn)程調(diào)度采用以優(yōu)先數(shù)為基礎(chǔ)的剝奪式調(diào)度算法。下表所示為作業(yè)序列,作業(yè)優(yōu)先數(shù)即為進(jìn)程優(yōu)先數(shù),優(yōu)先數(shù)越小優(yōu)先級(jí)越高。進(jìn)程到達(dá)時(shí)間估計(jì)運(yùn)行時(shí)間優(yōu)先數(shù)A10:0040分5B10:2030分3C10:3050分4D10:5020分6(1)列出所有作業(yè)進(jìn)入內(nèi)存時(shí)間及結(jié)束時(shí)間。(2)計(jì)算平均周轉(zhuǎn)時(shí)間。
習(xí)題61.單項(xiàng)選擇題(1)以下關(guān)于死鎖的必要條件的敘述中錯(cuò)誤的是。A、只要具備了死鎖的必要條件,就一定發(fā)生死鎖現(xiàn)象B、解決死鎖問題可以從死鎖的必要條件出發(fā)C、一旦出現(xiàn)死鎖,處于死鎖狀態(tài)的進(jìn)程一定同時(shí)具備死鎖的必要條件D、死鎖的四個(gè)必要條件之間不是完全獨(dú)立的,但也不是等價(jià)的(2)以下關(guān)于死鎖檢測(cè)的敘述中錯(cuò)誤的是。A、只要檢測(cè)出死鎖(尚未解除),則再申請(qǐng)?jiān)擃愘Y源的進(jìn)程一定會(huì)卷入死鎖B、只要檢測(cè)出死鎖(尚未解除),則使用該類資源的所有進(jìn)程一定卷入了死鎖C、死鎖檢測(cè)方法對(duì)系統(tǒng)資源的分配不加限制,只要有剩余資源就可以分配D、死鎖檢測(cè)中系統(tǒng)需要反復(fù)檢測(cè)各進(jìn)程資源申請(qǐng)和分配情況(3)以下關(guān)于死鎖問題的說法中正確的是。A、死鎖問題是無法解決的,但可以避免B、死鎖的預(yù)防是通過破壞進(jìn)程進(jìn)入不安全狀態(tài)來實(shí)現(xiàn)的C、通過避免死鎖四個(gè)必要條件中的任何一個(gè)就可以實(shí)現(xiàn)死鎖避免D、死鎖的檢測(cè)和解除是配合使用的,當(dāng)系統(tǒng)檢測(cè)到出現(xiàn)死鎖時(shí),就通過死鎖解除方法解除死鎖(4)以下關(guān)于系統(tǒng)的安全狀態(tài)的描述中正確的是。A、系統(tǒng)處于不安全狀態(tài)一定會(huì)發(fā)生死鎖B、系統(tǒng)處于不安全狀態(tài)可能會(huì)發(fā)生死鎖C、系統(tǒng)處于安全狀態(tài)時(shí)也可能會(huì)發(fā)生死鎖D、不安全狀態(tài)是死鎖狀態(tài)的一個(gè)特例 (5)資源的靜態(tài)分配算法在解決死鎖問題中用于。 A、死鎖預(yù)防B、死鎖避免C、死鎖檢測(cè)D、死鎖解除 (6)有3個(gè)進(jìn)程共享7個(gè)同類資源,為使系統(tǒng)不會(huì)發(fā)生死鎖,每個(gè)進(jìn)程最多可以申請(qǐng)個(gè)資源。 A、1B、2C、3D、4(1)A(2)B(3)D(4)B(5)A2.填空題(1)解決死鎖的方法可以有多種,其中死鎖的預(yù)防是通過破壞死鎖的必要條件之一來實(shí)現(xiàn)的,死鎖的避免是通過防止系統(tǒng)進(jìn)入不安全狀態(tài)來實(shí)現(xiàn)的。(2)死鎖的避免,就是通過保持系統(tǒng)處于安全狀態(tài)來避免死鎖,所以每當(dāng)有進(jìn)程提出資源分配請(qǐng)求時(shí),系統(tǒng)應(yīng)分析各進(jìn)程已占資源數(shù)、尚需資源數(shù)和系統(tǒng)中可以分配的剩余資源數(shù),然后決定是否為當(dāng)前的申請(qǐng)者分配資源。(3)死鎖檢測(cè)要解決兩個(gè)問題,一是判斷系統(tǒng)是否出現(xiàn)了死鎖,二是當(dāng)有死鎖發(fā)生時(shí)怎樣去解除死鎖。(4)為了避免死鎖,可以采用銀行家算法進(jìn)行資源安全分配。(5)系統(tǒng)出現(xiàn)死鎖,不僅與設(shè)備分配策略有關(guān),而且與進(jìn)程執(zhí)行的相對(duì)速度有關(guān)。(6)當(dāng)檢測(cè)到系統(tǒng)發(fā)生死鎖時(shí),可采用解除所有死鎖進(jìn)程、逐個(gè)撤銷死鎖進(jìn)程和搶占死鎖進(jìn)程的資源供其它進(jìn)程使用來解除死鎖。3.簡(jiǎn)答題(1)何謂死鎖?給出只涉及一個(gè)進(jìn)程的死鎖例子。兩個(gè)或兩個(gè)以上的進(jìn)程無限期地等待永遠(yuǎn)不可能發(fā)生的事件,則稱這些進(jìn)程處于死鎖。列:系統(tǒng)資源不足(2)死鎖預(yù)防和死鎖避免。死鎖預(yù)防:破壞達(dá)成死鎖的必要條件。1破壞互斥條件。2破壞不剝奪條件。3破壞請(qǐng)求與保持條件。4破壞環(huán)路條件死鎖避免:1系統(tǒng)處于安全狀態(tài)。2銀行家算法避免死鎖。(3)為什么說采用有序資源分配法不會(huì)產(chǎn)生死鎖?各進(jìn)程使用不同的資源,即使一個(gè)進(jìn)程有誤也不會(huì)影響其他進(jìn)程使用資源所以不會(huì)發(fā)生死鎖(4)安全狀態(tài)和不安全狀態(tài)。安全狀態(tài):系統(tǒng)按順序?yàn)槊總€(gè)進(jìn)程分配所需資源,直到滿足每個(gè)進(jìn)程對(duì)資源的最大需求,使每個(gè)進(jìn)程都可以順利完成。不安全狀態(tài):系統(tǒng)無法找到安全序列,則系統(tǒng)處于不安全狀態(tài)4.應(yīng)用題(1)假設(shè)系統(tǒng)由相同類型的m個(gè)資源組成,有n個(gè)進(jìn)程,每個(gè)進(jìn)程至少請(qǐng)求一個(gè)資源。證明:當(dāng)n個(gè)進(jìn)程最多需要的資源之和小于m+n時(shí),該系統(tǒng)無死鎖?!痉治觥吭O(shè)ai為第i個(gè)進(jìn)程對(duì)資源的最大需求數(shù),如果每個(gè)進(jìn)程均獲得了最大需求數(shù)減1個(gè)資源,顯然,此時(shí)系統(tǒng)只要還有1個(gè)資源,就不會(huì)發(fā)生死鎖?!咀C明】根據(jù)以上分析,有:(a1-1)+(a2-1)+…+(ai-1)…+(an-1)≤m-1即a1+a2+…+ai…+an≤m+n-1亦即a1+a2+…+ai…+an<m+n命題得證(2)考慮下列資源分配策略:對(duì)資源的申請(qǐng)和釋放可以在任何時(shí)候進(jìn)行。如果一個(gè)進(jìn)程提出資源請(qǐng)求時(shí)得不到滿足,若此時(shí)無由于等待資源而被阻塞的進(jìn)程,則自己就被阻塞;若此時(shí)已有等待資源而被阻塞的進(jìn)程,則檢查所有由于等待資源而被阻塞的進(jìn)程,如果它們有申請(qǐng)進(jìn)程所需要的資源,則將這些資源取出分配給申請(qǐng)進(jìn)程。1)這種分配策略會(huì)導(dǎo)致死鎖嗎?如果會(huì),請(qǐng)舉一個(gè)例子;如果不會(huì),請(qǐng)說明產(chǎn)生死鎖的哪一個(gè)必要條件不成立?2)這種分配方式會(huì)導(dǎo)致某些進(jìn)程的無限等待嗎?為什么?1)不會(huì),因?yàn)橘Y源集中在了最后一個(gè)申請(qǐng)?jiān)撡Y源而陷入等待的進(jìn)程,條件成熟時(shí),最后一個(gè)進(jìn)程能夠完成工作,釋放資源給其它進(jìn)程。它破壞了“不可剝奪條件”。2)由于后來進(jìn)程總要?jiǎng)儕Z先到的而處于阻塞狀態(tài)進(jìn)程的資源,因此,先到的進(jìn)程可能由于長期得不到資源而處于無限期等待狀態(tài)。(3)某系統(tǒng)有同類資源m個(gè),被n個(gè)進(jìn)程共享,請(qǐng)分別討論當(dāng)m>n和m≤n時(shí)每個(gè)進(jìn)程最多可以請(qǐng)求多少個(gè)這類資源,才能使系統(tǒng)一定不會(huì)發(fā)生死鎖?當(dāng)m>n時(shí),每個(gè)進(jìn)程最多可以請(qǐng)示該類資源數(shù)為INT(m/n)+1當(dāng)m≤n時(shí),每個(gè)進(jìn)程最多可以請(qǐng)示該類資源數(shù)為1(4)某系統(tǒng)有R1、R2、和R3共3類資源,在T0時(shí)刻P1、P2、P3和P4這4個(gè)進(jìn)程對(duì)資源的占用和需求情況見表6-6,此時(shí)系統(tǒng)的可用資源向量為(2,1,2)。最大資源需求量已分配資源數(shù)量R1R2R3R1R2R3P1322100P2613411P3314211P4422002問題:1)將系統(tǒng)中各類資源總數(shù)和此刻各進(jìn)程對(duì)資源的需求數(shù)目用向量或矩陣表示出來;2)如果此時(shí)P1和P2均發(fā)出資源請(qǐng)求向量Request(1,0,1),為了保證系統(tǒng)的安全性,應(yīng)該如何分配資源給這兩個(gè)進(jìn)程?說明你所采用策略的原因。3)如果(2)中兩個(gè)請(qǐng)求立即得到滿足后,系統(tǒng)此刻是否處于死鎖狀態(tài)?1)系統(tǒng)中各類資源總數(shù)向量為(9,3,6)需求矩陣為2)當(dāng)P1和P2均發(fā)出資源請(qǐng)求向量Request(1,0,1)時(shí),應(yīng)把資源分配給P2,因?yàn)榇藭r(shí)如果把資源分配給P1,則需求矩陣為:而系統(tǒng)可用資源向量為(1,1,1),顯然,系統(tǒng)資源已不足以幫助任何一個(gè)進(jìn)程完成任務(wù),系統(tǒng)將進(jìn)入不安全狀態(tài)。而把資源分配給P2后,需求矩陣為:而系統(tǒng)可用資源向量為(1,1,1),顯然,存在安全序列<P2,P1,P4,P3>,系統(tǒng)仍然處于安全狀態(tài)。 3)如果(2)中兩個(gè)請(qǐng)求立即得到滿足后,系統(tǒng)此刻處于不安全狀態(tài),但并不是死鎖狀態(tài)。
習(xí)題71.單項(xiàng)選擇題(1)要把以“0”為參考地址的裝配模塊裝入到以550為起始地址的存儲(chǔ)空間,若采用靜態(tài)重定位,則原程序中的指令“LOAD1455”應(yīng)改為A、LOAD11005B、LOAD1550C、LOAD195D、LOAD1455(2)在動(dòng)態(tài)重定位中,重定位寄存器中裝入的是。A、目標(biāo)模塊裝入的實(shí)際起始地址B、目標(biāo)模塊的相對(duì)基地址C、實(shí)際起始地址加上相對(duì)地址D、實(shí)際起始地址減去目標(biāo)模塊的相對(duì)基地址(3)、在固定分區(qū)存儲(chǔ)管理中,裝入內(nèi)存的所有作業(yè)的相對(duì)地址空間總和內(nèi)存中除操作系統(tǒng)之外的所有空間。A、可以大于B、一定小于C、一般小于D、以上說法都不對(duì)(4)在可變分區(qū)分配方案中,某一作業(yè)完成后,系統(tǒng)將回收其主存空間,并與相鄰空閑區(qū)合并,引起空閑區(qū)數(shù)減一的是。A、無上鄰接空閑區(qū),也無下鄰接空閑區(qū)B、無上鄰接空閑區(qū),但有下鄰接空閑區(qū)C、有上鄰接空閑區(qū),但無下鄰接空閑區(qū)D、有上鄰接空閑區(qū),也有下鄰接空閑區(qū)(5)可變分區(qū)存儲(chǔ)管理中的移動(dòng)技術(shù)可以。A、縮短訪問周期B、增加主存容量C、集中空閑區(qū)D、加速地址轉(zhuǎn)換(6)采用分頁式存儲(chǔ)管理使處理器執(zhí)行指令的速度。A、有時(shí)提高有時(shí)降低B、降低C、不受影響D、提高(7)在分段式存儲(chǔ)管理中,。A、以段為單位分配內(nèi)存,每段是一個(gè)連續(xù)存儲(chǔ)區(qū)B、段與段之間必定連續(xù)C、段與段之間必定不連續(xù)D、每段是等長的(8)段頁式存儲(chǔ)管理中,邏輯地址的格式一般為。A、段號(hào)段內(nèi)地址B、頁號(hào)段號(hào)段內(nèi)地址C、段號(hào)頁號(hào)頁內(nèi)地址D、頁號(hào)頁內(nèi)地址(1)A(2)D(3)C(4)D(5)C(6)B(7)A2.填空題(1)為了有效地管理計(jì)算機(jī)的內(nèi)存資源,存儲(chǔ)管理應(yīng)具備存儲(chǔ)分配、地址映射、存儲(chǔ)保護(hù)和內(nèi)存擴(kuò)充四大功能。(2)可以把存儲(chǔ)管理方式分為連續(xù)分配方式、離散分配方式和虛擬存儲(chǔ)管理等三種。(3)為了適應(yīng)最佳適應(yīng)算法,空閑分區(qū)表中的空閑分區(qū)要按空閑區(qū)大小的升序進(jìn)行排序;而為了適應(yīng)最壞適應(yīng)算法,空閑分區(qū)表中的空閑分區(qū)要按空閑區(qū)大小的降序進(jìn)行排序。(4)頁式存儲(chǔ)管理中,頁式虛擬地址與內(nèi)存物理地址的映射是由頁表和硬件地址轉(zhuǎn)換機(jī)構(gòu)來完成的。(5)段頁式存儲(chǔ)管理中,虛擬空間的最小單位是頁而不是段。內(nèi)存可以等分成若干個(gè)塊,且每個(gè)段所擁有的程序和數(shù)據(jù)在內(nèi)存中可以分開存放。3.名詞解釋:(1)邏輯地址空間;只一個(gè)源程序在編譯或連接裝配后指令和數(shù)據(jù)所用的所有的相對(duì)地址空閑(2)存儲(chǔ)空間;通過硬件和軟件的綜合來擴(kuò)大用戶可存儲(chǔ)空間(3)地址重定位;一個(gè)邏輯地址空間的程序裝入到物理地址空間時(shí),由于2個(gè)空間不一致,需要進(jìn)行地址變換,或稱地址映射,既地址重定位(4)靜態(tài)重定位;是在程序執(zhí)行之前進(jìn)行重定位(根據(jù)裝配模塊將要裝入內(nèi)存起始地址,直接修改裝配模塊中的有關(guān)地址的指令)(5)動(dòng)態(tài)重定位。是在程序執(zhí)行期間,每次存儲(chǔ)訪問之前進(jìn)行的。是硬件重定位寄存器。重定位寄存器的內(nèi)容是程序裝入內(nèi)存區(qū)的起始地址減去目標(biāo)模塊的相對(duì)基地址4.簡(jiǎn)答題(1).存儲(chǔ)管理研究的主要課題是什么?常用的實(shí)存儲(chǔ)管理技術(shù)和虛擬存儲(chǔ)管理技術(shù)(2)請(qǐng)總結(jié)各種存儲(chǔ)管理方式下的重定位的地址轉(zhuǎn)換方法。靜態(tài)重定位和動(dòng)態(tài)重定位(3)可變分區(qū)存儲(chǔ)管理中的內(nèi)存分配有哪些算法?試比較其優(yōu)缺點(diǎn)。1421.最先適應(yīng)分配算法3.最佳適應(yīng)分配算法4.最壞適應(yīng)分配算法1.方法優(yōu)點(diǎn)是優(yōu)先利用內(nèi)存中低址部分的空閑分區(qū),高址部分的空閑分區(qū)很少被利用,從而保留了高址部分的大空閑區(qū),為以后到達(dá)的大作業(yè)分配大的內(nèi)存空間創(chuàng)造了條件。缺點(diǎn)是低址部分不斷被劃分,致使留下許多難以利用的,很小的空閑分區(qū)3.方法優(yōu)點(diǎn)是第一次找到的滿足要求的空閑分區(qū),必然是最佳的。缺點(diǎn)是內(nèi)存利用率是不高4.方法優(yōu)點(diǎn)是在分配后剩余的空閑分區(qū)可能比較大,仍能滿足一般作業(yè)的要求,可供以后使用,從而最大程度地減少系統(tǒng)中不可利用的碎片。缺點(diǎn)是是系統(tǒng)中的空閑分區(qū)比較均勻地減少,工作一段時(shí)間后就不能滿足對(duì)較大空閑分區(qū)的分配要求了。(4)可變分區(qū)的分區(qū)回收有幾種情況?試說明之。1431.回收區(qū)既不與F1相鄰,也不與F2相鄰,在回收區(qū)建立新表,填寫回收區(qū)的始地址和大小,并根據(jù)其起始址與大小,插入到空閑分區(qū)表的適當(dāng)位置。2.回收區(qū)只與插入點(diǎn)的前一個(gè)空閑分區(qū)F1相鄰時(shí),此時(shí)將兩個(gè)分區(qū)合并不回收新表項(xiàng)3.與F2相鄰4.F1,F(xiàn)2都相鄰(5)簡(jiǎn)述分頁存儲(chǔ)管理的基本原理。147用戶地址被劃分為若干大小的相等區(qū)域稱為頁面,而內(nèi)存空間也相應(yīng)劃分成若干個(gè)物理塊,頁和塊的大小相等,將用戶程序離散地分配到內(nèi)存中的任意一塊中,從而實(shí)現(xiàn)內(nèi)存的離散分配。(6)請(qǐng)畫出分頁情況下的地址變換過程,并說明頁面尺寸為什么一定要是2的冪?(7)試比較分頁與分段存儲(chǔ)管理的優(yōu)缺點(diǎn)。147分頁存儲(chǔ)管理是從提高內(nèi)存利用率的角度出發(fā)而形成的,沒有考慮用戶需求。分段存儲(chǔ)管理是為滿足用戶要求而形成一種存儲(chǔ)管理方式(8)某作業(yè)大小為8A5H字節(jié),從內(nèi)存53FH處開始裝載,當(dāng)作業(yè)的相應(yīng)進(jìn)程在CPU上運(yùn)行時(shí):1)若采用上、下界寄存器保護(hù),寄存器的值各為多少?如何進(jìn)行保護(hù)?2)若采用基址、限長寄存器保護(hù),寄存器的值各為多少:如何進(jìn)行保護(hù)?答:1)上界寄存器:53FH;下界寄存器:DE4H。小于上界寄存器,大于下界寄存器的訪問請(qǐng)求為非法。2)基址寄存器:53FH;限長寄存器:8A5H。小于基址寄存器,大于基址寄存器+限長寄存器的訪問請(qǐng)求為非法。(9)試說明在分頁存儲(chǔ)管理系統(tǒng)中,地址變換過程可能會(huì)因?yàn)槟男┰蚨a(chǎn)生中斷?1)越界中斷2)缺頁中斷(10)在分頁存儲(chǔ)管理系統(tǒng)中,某進(jìn)程的頁表如下(表中數(shù)據(jù)為十進(jìn)制):若頁面大小為2KB,試將虛地址0A3BH和6E1CH變換為物理地址。頁號(hào)物理塊號(hào)01017212364155116872(1)將虛地址0A3BH轉(zhuǎn)換成二進(jìn)制,并從第11位(頁大小為2KB=211B),高位部分為頁號(hào),低位部分為頁內(nèi)地址:0000101000111011得頁號(hào)為1,查頁表知對(duì)應(yīng)的物理塊號(hào)為7,則物理地址為:0011101000111011即虛地址0A3BH變換為物理地址后為3A3BH。(2)將虛地址6E1CH轉(zhuǎn)換成二進(jìn)制,并從第11位(頁大小為2KB=211B),高位部分為頁號(hào),低位部分為頁內(nèi)地址:0110111000011100得頁號(hào)為13,查頁表,該進(jìn)程沒有第13頁,產(chǎn)生越界中斷。(11)某分段存儲(chǔ)管理中采用如下段表:段號(hào)段的長度(字節(jié))內(nèi)存起始地址0380951205252105330036608604501800試回答:1)將虛地址(0,260),(2,200),(4,42)變換為物理地址。2)存取內(nèi)存中的一條指令或數(shù)據(jù)至少要訪問幾次內(nèi)存?1)①虛地址(0,260),查段表知第0段的長度為380,地址合法,物理地址為95+260=355。②虛地址(2,200),查段表知第2段的長度為105,段內(nèi)地址200>段長105,地址非法,產(chǎn)生越界中斷。③虛地址(4,42),查段表知第4段長度為50,地址合法,物理地址為1800+42=1842。 2)存取內(nèi)存中的一條指令或數(shù)據(jù)至少要2次訪問內(nèi)存。(12)比較下述幾種存儲(chǔ)映象技術(shù)的優(yōu)缺點(diǎn):1)直接映象;2)相關(guān)映象;3)直接和相關(guān)相結(jié)合的映象。見教材
習(xí)題8 1.單項(xiàng)選擇題(1)虛擬存儲(chǔ)器是。A、可提高計(jì)算機(jī)運(yùn)算速度的設(shè)備B、容量擴(kuò)大了的主存C、實(shí)際上不存在的存儲(chǔ)器D、可以容納總和容量超過主存容量的多個(gè)作業(yè)同時(shí)運(yùn)行的一個(gè)地址空間(2)在快表(聯(lián)想存儲(chǔ)器)中的頁,其信息。A、一定在內(nèi)存中B、一定在外存中C、在外存和內(nèi)存中D、以上說法都不對(duì)(3)在請(qǐng)求分頁系統(tǒng)中,LRU算法是指。A、近期被訪問次數(shù)最少的頁先淘汰B、以后再也不用的頁先淘汰C、最早進(jìn)入內(nèi)存的頁先淘汰D、近期最長時(shí)間以來沒被訪問的頁先淘汰(4)在請(qǐng)求分頁式存儲(chǔ)管理中,采用FIFO淘汰算法,若分配的物理塊數(shù)增加,則缺頁中斷次數(shù)。A、一定增加B、一定減少C、可能增加也可能減少D、不變(5)在請(qǐng)求分頁式存儲(chǔ)管理機(jī)制的頁表中有若干個(gè)表示頁表換進(jìn)、換出的信息位,其中用在轉(zhuǎn)換出內(nèi)存時(shí)是否寫盤的依據(jù)的是。A、狀態(tài)位PB、訪問字段AC、修改位MD、外存地址(6)能夠?qū)崿F(xiàn)虛擬存儲(chǔ)管理的存儲(chǔ)管理方式是。 A、可變分區(qū)存儲(chǔ)管理B、固定分區(qū)存儲(chǔ)管理 C、分頁式存儲(chǔ)管理D、單一連續(xù)分區(qū)存儲(chǔ)管理(7)在請(qǐng)求分頁式存儲(chǔ)管理方式中,能使用戶程序大大超過內(nèi)存的實(shí)際容量。虛存的實(shí)現(xiàn)實(shí)際上是利用為用戶構(gòu)建一個(gè)虛擬空間。 A、內(nèi)存B、外存C、聯(lián)想存儲(chǔ)器D、頁表(1)D(2)A(3)D(4)C(5)C(6)C(7)B2.填空題(1)實(shí)現(xiàn)虛擬存儲(chǔ)后,從系統(tǒng)角度看,擴(kuò)充了內(nèi)存,從用戶角度看,用戶可以在超出用戶作業(yè)空間的存儲(chǔ)空間中編寫程序,大大方便了用戶。(2)在請(qǐng)求分頁式存儲(chǔ)管理中,當(dāng)查找的頁不在內(nèi)存,要產(chǎn)生缺頁中斷。(3)在提供虛擬存儲(chǔ)管理的系統(tǒng)中,用戶的邏輯地址空間主要受系統(tǒng)的尋址能力、外存容量的限制。(4)頁面置換算法的好壞將直接影響系統(tǒng)的性能,不適當(dāng)?shù)闹脫Q算法可能導(dǎo)致進(jìn)程發(fā)生抖動(dòng)。2.名詞解釋:(1)虛擬存儲(chǔ)器;指僅把進(jìn)程的一部分裝入內(nèi)存便可運(yùn)行的存儲(chǔ)器系統(tǒng),是具有請(qǐng)求調(diào)入功能和置換功能,從邏輯上對(duì)內(nèi)存容量進(jìn)行擴(kuò)充的一種存儲(chǔ)器系統(tǒng)(2)時(shí)間局限性;如果某條指令被執(zhí)行,則在不久的將來,其附近的存儲(chǔ)單元也可能被訪問,不久的將來,該數(shù)據(jù)的數(shù)據(jù)可能再次被訪問。主要原因:程序中存在著大量的循環(huán)操作(3)空間局限性;一旦程序訪問了某個(gè)存儲(chǔ)單元,則在不久的將來,其附近的存儲(chǔ)單元也可能被訪問,既程序在一段時(shí)間內(nèi)所訪問的地址,可能集中在一定的范圍內(nèi)。產(chǎn)生空間局限性的主要原因是程序的順序執(zhí)行(4)抖動(dòng);如果選用了一個(gè)不合適的調(diào)度算法,就會(huì)出現(xiàn)這樣的現(xiàn)象:剛被淘汰了的頁面又立即要用,又要把它調(diào)入進(jìn)來,而調(diào)入不久又被調(diào)出,調(diào)出不久再次被調(diào)入,如此反復(fù),使得調(diào)度非常頻繁,以至于大部分時(shí)間都花費(fèi)在來回調(diào)度上。這種現(xiàn)象叫“抖動(dòng)”。(5)工作集。進(jìn)程在某個(gè)時(shí)間段里實(shí)際要訪問的頁面集合。進(jìn)程要有效的運(yùn)行,工作集必須在內(nèi)存中3.簡(jiǎn)答題(1)什么是虛擬存儲(chǔ)器,為什么要引入虛擬存儲(chǔ)器的概念?指僅把進(jìn)程的一部分裝入內(nèi)存便可運(yùn)行的存儲(chǔ)器系統(tǒng),是具有請(qǐng)求調(diào)入功能和置換功能,從邏輯上對(duì)內(nèi)存容量進(jìn)行擴(kuò)充的一種存儲(chǔ)器系統(tǒng)原因:是一種性能非常優(yōu)越的存儲(chǔ)管理技術(shù),目前已被廣泛使用各種計(jì)算機(jī)系統(tǒng)中(2)虛擬存儲(chǔ)器的最大容量由什么決定?存儲(chǔ)器的大容量決定(3)什么是局部性原理?程序在執(zhí)行時(shí)將呈現(xiàn)局部性規(guī)律,即在一段時(shí)間內(nèi),程序額執(zhí)行僅限于某個(gè)部分(4)在請(qǐng)求分頁系統(tǒng)中,頁表應(yīng)包括哪些數(shù)據(jù)項(xiàng)?每項(xiàng)的作用是什么?狀態(tài)位P:用于指示該頁是否調(diào)入內(nèi)存,0表示該頁已在內(nèi)存,1表示該頁不在內(nèi)存,供程序訪問時(shí)參考訪問字段A:用于記錄該頁在一段時(shí)間內(nèi)被訪問的次數(shù),或最近已有多長時(shí)間未被訪問,供置換算法選擇頁面時(shí)參考修改位M:用于記錄該頁在調(diào)入內(nèi)存后是否被修改過,由于內(nèi)存中的每一頁都在外存上保留一個(gè)副本,因此,若未被修改,在置換該頁時(shí)就不需將該頁寫回到磁盤上,以減少系統(tǒng)的開銷和啟動(dòng)磁盤的次數(shù);若已被修改,則必須將該頁重寫回磁盤上,以保證磁盤上所保留的始終是最新的副本外存地址:用于指出該頁在外存上的地址,通常是物理塊號(hào),供調(diào)入該頁時(shí)使用(5)在請(qǐng)求分頁系統(tǒng)中,常采用哪幾種頁面置換算法?(OPT)最佳置換算法(FIFO)先進(jìn)先出置換算法(LRU)最近最久未使用置換算法(NRU)最近未使用置換算法Clock置換算法(6)在請(qǐng)求分段系統(tǒng)中,段表應(yīng)包括哪些數(shù)據(jù)項(xiàng)?每項(xiàng)的作用是什么?存取方式:用于標(biāo)識(shí)本段的存取屬性,存取屬性包括只執(zhí)行,只讀還是讀/寫訪問字段:用于記錄該段在一段時(shí)間內(nèi)被訪問的次數(shù),或最近已有多長時(shí)間未被訪問,供置換算法選擇段時(shí)參考修改位:表示該段在調(diào)入內(nèi)存后是否被修改過,由于內(nèi)存中的每一段都在外存上保留一個(gè)副本,因此,若未被修改,則必須將該段重寫回磁盤上,以保證磁盤上所保留的始終是最新的副本。存在位:說明本段是否已調(diào)入內(nèi)存增補(bǔ)位:用于表示本段在運(yùn)行過程中,是否進(jìn)行過動(dòng)態(tài)增長外存地址:用于指出該段在外存上的起始地址,通常是起始物理號(hào),供調(diào)入該段時(shí)使用(7)采用可變分區(qū)方式管理內(nèi)存時(shí),能實(shí)現(xiàn)虛擬存儲(chǔ)器嗎?不可以,因?yàn)榭勺兎謪^(qū)每次必須將作業(yè)完整調(diào)入并連續(xù)存放,這不適合虛擬存儲(chǔ)的要求。同時(shí),可變分區(qū)的硬件地址轉(zhuǎn)換機(jī)構(gòu)把絕對(duì)地址超出限定范圍時(shí)作地址錯(cuò)處理,而不是產(chǎn)生“缺分區(qū)中斷”。(8)在頁面置換算法中,LRU和NRU哪個(gè)更常用?為什么?NRU更常用,因?yàn)長RU在理論上是可以實(shí)現(xiàn)的,但代價(jià)太高,為了實(shí)現(xiàn)LRU,需要在內(nèi)存維持一個(gè)包含所有頁的鏈表,最近使用的頁面在表頭,最久未使用的頁面在表尾,而每次訪問頁面時(shí)都需要對(duì)鏈表進(jìn)行更新,而且在鏈表中找到所需的頁,并將它移動(dòng)到表頭是一個(gè)非常費(fèi)時(shí)的操作,即使使用硬件實(shí)現(xiàn)也是一樣的。4.應(yīng)用題某進(jìn)程的頁面訪問序列為:1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6,假定分給該進(jìn)程4個(gè)物理塊,計(jì)算在采用下列置換算法時(shí)的缺頁中斷次數(shù)和缺頁中斷率。(1)LRU;(2)FIFO;(3)OPT。(1)LRU置換算法頁面訪問序列1234215621237632123612342156212376321236123421562123763212312342156612376331211342155612276661++++--++---+++--+---缺頁中斷次數(shù)=10缺頁中斷率=10/20=50%(2)FIFO置換算法頁面訪問序列1234215621237632123612344456211376621133123334562213776221112223456621337662211123455621137766++++--++++-+++-++-+-缺頁中斷次數(shù)=14缺頁中斷率=14/20=70%(3)OPT置換算法頁面訪問序列1234215621237632123612221222123663222366111211123633233363333333336222666622244456611177771111++++--++----+---+---缺頁中斷次數(shù)=8缺頁中斷率=8/20=40%
習(xí)題91.選擇題(1)以下關(guān)于I/O設(shè)備的中斷控制方式說法正確的是。A、CPU對(duì)I/O設(shè)備直接進(jìn)行控制,采取忙等待方式B、僅在傳送一個(gè)或多個(gè)數(shù)據(jù)塊的開始和結(jié)束時(shí),才需CPU干預(yù)C、CPU委托專用的I/O處理機(jī)來實(shí)現(xiàn)I/O設(shè)備與內(nèi)存之間的信息交換D、在傳輸過程中,CPU與I/O設(shè)備處于并行工作狀態(tài),只是當(dāng)傳輸結(jié)束時(shí),才由控制器向CPU發(fā)送中斷信號(hào)(2)通道是一種。A、保存I/O信息的部件B、傳輸信息的電子線路C、通用處理機(jī)D、專用處理機(jī)(3)CPU對(duì)通道的請(qǐng)求形式是。A、自陷B、通道命令C、中斷D、轉(zhuǎn)移命令(4)緩沖有硬件緩沖和軟件緩沖之分,硬件緩沖使用專用的寄存器作為緩沖器。軟件緩沖使用作為緩沖區(qū)。A、在內(nèi)存中劃出的單元B、專用的寄存器C、在外存中劃出的單元D、高速緩沖區(qū)(5)以下不是I/O控制中DMA控制方式的特點(diǎn)的是。A、進(jìn)行成批的數(shù)據(jù)傳送交換B、用專門的I/O處理機(jī)C、傳送開始和結(jié)束時(shí)需要CPU干預(yù)D、采用盜竊總線控制權(quán)方式(6)使用戶編制的程序與實(shí)際使用的物理設(shè)備無關(guān)是由功能實(shí)現(xiàn)的。A、設(shè)備分配B、設(shè)備驅(qū)動(dòng)C、虛擬設(shè)備D、設(shè)備獨(dú)立性(7)SPOOLing技術(shù)利用了。A、外設(shè)概念B、虛擬設(shè)備概念C、磁帶概念D、存儲(chǔ)概念(8)磁盤輸入輸出操作中,需要做的工作可以不包括。A、移動(dòng)移動(dòng)臂使磁頭移動(dòng)到指定的柱面B、確定磁盤的容量C、旋轉(zhuǎn)磁盤使指定的扇區(qū)處于磁頭位置下D、讓指定的磁頭讀寫信息,完成信息傳送操作(9)執(zhí)行一次磁盤輸入輸出操作所花費(fèi)的時(shí)間包括。A、尋道時(shí)間、延遲時(shí)間、傳送時(shí)間和等待時(shí)間B、尋道時(shí)間、等待時(shí)間、傳送時(shí)間C、等待時(shí)間、尋道時(shí)間、延遲時(shí)間和讀寫時(shí)間D、尋道時(shí)間、延遲時(shí)間、傳送時(shí)間(10)在磁盤調(diào)度算法中,算法可能導(dǎo)致某些訪問請(qǐng)求長時(shí)間得不到服務(wù),從而造成饑餓現(xiàn)象。A、FCFSB、SSTFC、SCAND、CSCAN(11)如果有多個(gè)中斷同時(shí)發(fā)生,系統(tǒng)將根據(jù)中斷優(yōu)先級(jí)響應(yīng)優(yōu)先級(jí)最高的中斷請(qǐng)求。若要調(diào)整中斷事件的響應(yīng)次序,可以利用。A、中斷向量B、中斷嵌套C、中斷響應(yīng)D、中斷屏蔽(1)D(2)D(3)B(4)A(5)B(6)D(7)B(8)B(9)D(10)B(11)D2.填空題(1)I/O設(shè)備按傳輸速率分類,可分為低速設(shè)備、中速設(shè)備和高速設(shè)備等三種;按信息交換的單位分類,可分為字符設(shè)備和塊設(shè)備。按資源分配的角度分類,可分為獨(dú)占設(shè)備、共享設(shè)備和虛擬設(shè)備。(2)緩沖區(qū)管理是為了緩和CPU與I/O設(shè)備間速度不匹配的矛盾、減少中斷CPU的次數(shù),放寬對(duì)中斷響應(yīng)的要求、提高CPU、通道和I/O設(shè)備之間的并行性的矛盾。(3)按照信息交換的方式,一個(gè)系統(tǒng)中可設(shè)立三種類型的通道,即字節(jié)多路通道、數(shù)組選擇通道和數(shù)組多路通道。 (4)設(shè)備獨(dú)立性也稱設(shè)備無關(guān)性,其基本思想是:用戶程序不直接使用物理設(shè)備名,而只能使用邏輯設(shè)備名;系統(tǒng)在實(shí)際執(zhí)行時(shí),將邏輯設(shè)備名轉(zhuǎn)換為物理設(shè)備名。 (5)、打印機(jī)雖然是獨(dú)享設(shè)備,但是通過SPOOLing技術(shù),可以將它改造為一臺(tái)可供多個(gè)用戶共享的設(shè)備。3.簡(jiǎn)答題(1)有幾種I/O控制方式?各有什么特點(diǎn)?程序I/O方式:無中斷機(jī)構(gòu),主機(jī)對(duì)I/O設(shè)備的控制采用程序I/O方式中斷驅(qū)動(dòng)I/O方式:中斷驅(qū)動(dòng)I/O方式是處理器給模塊發(fā)送I/O指令,然后繼續(xù)做其他一些有用的工作,當(dāng)I/O模塊準(zhǔn)備好與處理器交換數(shù)據(jù)時(shí),便中斷處理器并請(qǐng)求服務(wù)直接存儲(chǔ)器存取方式:I/O通道方式:(2)什么是通道?通道、CPU、內(nèi)存和外設(shè)之間的工作關(guān)系如何?I/O通道是一種特殊的處理器,專門負(fù)責(zé)輸入、輸出。通道的簡(jiǎn)歷雖然提供了CPU、通道和I/O設(shè)備間并行操作的可能性,但是往往由于通道數(shù)量不足而使并行程度受到限制,緩沖的引入可減少占用通道的時(shí)間,從而顯著提高CPU、通道、I/O設(shè)備間的并行操作程度。(3)什么是緩沖?為什么要引入緩沖?為了協(xié)調(diào)吞吐速度相差很大的設(shè)備之間數(shù)據(jù)傳送的工作原因:緩和CPU與I/O設(shè)備間速度不匹配的矛盾、減少中斷CPU的次數(shù),放寬對(duì)中斷響應(yīng)的要求、提高CPU、通道和I/O設(shè)備之間的并行性(4)在某系統(tǒng)中,從磁盤將一塊數(shù)據(jù)輸入到緩沖區(qū)需要花費(fèi)的時(shí)間為T,CPU對(duì)一塊數(shù)據(jù)進(jìn)行處理的時(shí)間為C,將緩沖區(qū)的數(shù)據(jù)傳送到用戶區(qū)所花的時(shí)間為M,那么在單緩沖和雙緩沖情況下,系統(tǒng)處理大量數(shù)據(jù)時(shí),一塊數(shù)據(jù)的處理時(shí)間為多少?(5)簡(jiǎn)述緩沖池的組成及工作原理。緩沖池油多個(gè)大小相等的緩沖區(qū)組成,與環(huán)形緩沖不同的是池中的每個(gè)緩沖區(qū)可提供多個(gè)進(jìn)程共享,且既能用于輸入,也能用于輸出。緩沖隊(duì)列:空緩沖隊(duì)列emq、輸入隊(duì)列inq、輸出隊(duì)列outq工作緩沖區(qū):收容輸入工作緩沖區(qū)hin、提取輸入工作緩沖區(qū)sin、收容輸出工作緩沖區(qū)hout、提取輸出工作緩沖區(qū)sout(6)為什么要引入SPOOLing系統(tǒng)?簡(jiǎn)述SPOOLing系統(tǒng)的組成及工作原理??梢蕴岣咴O(shè)備利用率并縮短單個(gè)程序的響應(yīng)時(shí)間組成:輸入井和輸出井、輸入緩沖區(qū)和輸出緩沖區(qū)、輸入進(jìn)程SPi和輸出進(jìn)程SPo原理:操作系統(tǒng)初啟后激活SPOOLing輸入程序使它處于捕獲輸入請(qǐng)求的狀態(tài),一旦有輸入請(qǐng)求消息,SPOOLing輸入程序利息得到執(zhí)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)業(yè)灌溉用水2025年高效節(jié)水技術(shù)與農(nóng)業(yè)水資源保護(hù)實(shí)踐報(bào)告
- 2023屆山東省德州市高三下學(xué)期三模英語 無答案
- 火災(zāi)事故應(yīng)急救援預(yù)案
- 壓鑄基本概念壓鑄模具設(shè)計(jì)2
- 2025年零售行業(yè)私域流量運(yùn)營創(chuàng)新案例分享報(bào)告
- 跨境支付與結(jié)算服務(wù)行業(yè)跨境出海項(xiàng)目商業(yè)計(jì)劃書
- 物流智能貨架行業(yè)跨境出海項(xiàng)目商業(yè)計(jì)劃書
- 高速接口SerDes收發(fā)器企業(yè)制定與實(shí)施新質(zhì)生產(chǎn)力項(xiàng)目商業(yè)計(jì)劃書
- 某年度油罐計(jì)量系統(tǒng)產(chǎn)業(yè)分析報(bào)告
- 共享經(jīng)濟(jì)AI應(yīng)用行業(yè)深度調(diào)研及發(fā)展項(xiàng)目商業(yè)計(jì)劃書
- 汽車租賃公司汽車租賃管理制度匯編
- 脊髓損傷康復(fù)講義
- 布草洗滌服務(wù)方案完整版
- 氣體安全知識(shí)培訓(xùn)(72張)課件
- 國際慕課學(xué)習(xí)者使用手冊(cè)
- 共線向量與共面向量全面版課件
- JJG(晉) 22-2021 車用甲醇燃料加注機(jī)檢定規(guī)程
- 湘美版小學(xué)四年級(jí)美術(shù)下冊(cè)知識(shí)點(diǎn)
- 大連市住宅小區(qū)物業(yè)收費(fèi)等級(jí)標(biāo)準(zhǔn)
- 包裝自動(dòng)線課程設(shè)計(jì)含全套資料
- 長輸管道施工
評(píng)論
0/150
提交評(píng)論