




已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
習(xí)題二參考答案(P43)2-1什么是核態(tài)?什么是用戶態(tài)?答:核態(tài)是指系統(tǒng)程序執(zhí)行時,機器所處的狀態(tài)。用戶態(tài)是指用戶程序執(zhí)行時,機器所處的狀態(tài)。2-2為什么必須區(qū)分二態(tài)?系統(tǒng)如何區(qū)分出二態(tài)?答:二態(tài)是指核態(tài)(系統(tǒng)程序執(zhí)行時處理機所處的狀態(tài))和用戶態(tài)(用戶程序執(zhí)行時處理機所處的狀態(tài))。操作系統(tǒng)是計算機系統(tǒng)中最重要的系統(tǒng)軟件,為了能正確地進行管理和控制,其本身是不能被破壞的。為此,系統(tǒng)應(yīng)能建立一個保護環(huán)境,因此系統(tǒng)必須區(qū)分處理機的工作狀態(tài)。系統(tǒng)中有兩類程序在運行,它們的任務(wù)是不同的,系統(tǒng)程序是管理和控制者,用戶程序是被管理和被控制的對象,因此應(yīng)將它們運行時處理機的工作狀態(tài)區(qū)分出來,即系統(tǒng)必須區(qū)分二態(tài)。系2-5按中斷的功能來分,中斷有哪幾種類型?答:按中斷的功能來分,中斷有如下五種類型:I/O中斷外中斷硬件故障中斷程序性中斷訪管中斷2-8什么是程序狀態(tài)字?在微機中它一般由哪兩個部分組成?答:程序狀態(tài)字是指反映程序執(zhí)行時機器所處的現(xiàn)行狀態(tài)的代碼。在微機中它一般由指令計數(shù)器(PC)和處理機狀態(tài)寄存器(PS)。2-9什么是向量中斷?什么是中斷向量?答:向量中斷是指當(dāng)中斷發(fā)生時,由中斷源自己引導(dǎo)處理機進入中斷服務(wù)程序的中斷過程。中斷向量就是存儲該類型中斷服務(wù)例行程序的入口地址和處理器狀態(tài)字的存儲單元。2-12什么是操作系統(tǒng)虛擬機?答:操作系統(tǒng)是最基本的系統(tǒng)軟件,它是硬件功能的第一層擴充。配置了操作系統(tǒng)的計算機稱為操作系統(tǒng)虛擬機。擴充了的計算機除了可以使用原來裸機提供的各種基本硬件指令,還可以使用操作系統(tǒng)增加的許多其它指令。習(xí)題三參考答案(P54)3-1用戶與操作系統(tǒng)的接口是什么?一個分時系統(tǒng)提供什么接口?一個批處理系統(tǒng)又提供什么接口?答:用戶與操作系統(tǒng)的接口是指操作系統(tǒng)提供給用戶與計算機打交道的外部機制。一個分時系統(tǒng)提供的接口有系統(tǒng)功能調(diào)用和鍵盤操作命令。一個批處理系統(tǒng)提供的接口有系統(tǒng)功能調(diào)用和作業(yè)控制語言。3-2計算機對用戶算題任務(wù)的加工過程一般分哪幾個作業(yè)步?各作業(yè)步之間的關(guān)系如何?用自己的上機體會說明。答:計算機對用戶算題任務(wù)的加工過程一般分四個作業(yè)步:編輯、編譯、連接和運行。各作業(yè)步之間的關(guān)系如下:前一個作業(yè)步的結(jié)果是下一個作業(yè)步的操作對象;一個作業(yè)步的成功完成依賴于上一個作業(yè)步的成功完成。3-3什么是系統(tǒng)調(diào)用?對操作系統(tǒng)的服務(wù)請求與一般的子程序調(diào)用有什么區(qū)別?答:系統(tǒng)調(diào)用是操作系統(tǒng)提供給編程人員的惟一接口。編程人員利用系統(tǒng)調(diào)用,在源程序一級動態(tài)請求和釋放系統(tǒng)資源,調(diào)用系統(tǒng)中已有的系統(tǒng)功能來完成那些與機器硬件部分相關(guān)的工作以及控制程序的執(zhí)行速度等。因此,系統(tǒng)調(diào)用像一個黑箱子那樣,對用戶屏蔽了操作系統(tǒng)的具體動作而只提供有關(guān)的功能。系統(tǒng)調(diào)用與一般過程調(diào)用的主要區(qū)別如下:系統(tǒng)調(diào)用程序是在核心態(tài)執(zhí)行,調(diào)用它們需要一個類似于硬件中斷處理的中斷處理機制來提供系統(tǒng)服務(wù)。(也可按上課時講的三個方面來闡述)3-5簡述系統(tǒng)調(diào)用的執(zhí)行過程。答:系統(tǒng)調(diào)用命令的具體格式因系統(tǒng)而異,但由用戶程序進入系統(tǒng)調(diào)用的步驟及執(zhí)行過程大體相同:首先,將系統(tǒng)調(diào)用命令所需的參數(shù)(如功能號)或參數(shù)區(qū)首址裝入指定寄存器;然后,在用戶程序中適當(dāng)?shù)奈恢冒才乓粭l調(diào)用系統(tǒng)功能指令。至于系統(tǒng)調(diào)用命令的功能號,有的系統(tǒng)直接在調(diào)用指令中給出,有的系統(tǒng)則把它作為系統(tǒng)調(diào)用命令的參數(shù),在調(diào)用時放入指定寄存器。當(dāng)用戶程序執(zhí)行到調(diào)用系統(tǒng)功能的指令時,就轉(zhuǎn)到系統(tǒng)調(diào)用的處理程序執(zhí)行。其過程如下:(1)為執(zhí)行系統(tǒng)調(diào)用命令做準備,即將用戶程序的“現(xiàn)場”保存起來,同時把系統(tǒng)調(diào)用命令的編號等參數(shù)放入約定的存儲單元。(2)根據(jù)系統(tǒng)調(diào)用命令的編號查找系統(tǒng)調(diào)用入口表,找到相應(yīng)系統(tǒng)功能調(diào)用子程序的入口地址,然后轉(zhuǎn)到該子程序執(zhí)行。當(dāng)系統(tǒng)調(diào)用命令執(zhí)行完畢,相應(yīng)的結(jié)果通常返回給參數(shù),這些參數(shù)放在約定的存儲單元里。(3)系統(tǒng)調(diào)用命令執(zhí)行完畢后的處理,包括恢復(fù)用戶程序執(zhí)行的“現(xiàn)場”信息,同時把系統(tǒng)調(diào)用命令的返回參數(shù)或參數(shù)區(qū)首址放入指定的寄存器中,以供用戶程序使用。習(xí)題四參考答案(P97)4-3什么是進程?進程與程序的主要區(qū)別是什么?答:進程,即是一個具有一定獨立功能的程序關(guān)于某個數(shù)據(jù)集合的一次活動。進程與程序的主要區(qū)別是:(1)程序是指令的有序集合,是一個靜態(tài)概念,其本身沒有任何運行的含義,進程是程序在處理機上的一次執(zhí)行過程,是一個動態(tài)概念。(2)程序作為軟件資料可長期保存,而進程是有生命期的,因創(chuàng)建而產(chǎn)生、因調(diào)度而執(zhí)行、因得不到資源而暫停、因撤消而消亡。(3)程序是記錄在介質(zhì)上指令的有序集合,而進程則由程序、數(shù)據(jù)和進程控制塊3部分組成。(4)進程與程序之間無一一對應(yīng)關(guān)系。不同的進程可以包含同一程序,同一程序在執(zhí)行中也可以產(chǎn)生多個進程。(5)進程是一個獨立的運行單位,也是系統(tǒng)進行資源分配和調(diào)度的獨立單位。而程序無此概念。4-6進程有哪幾個基本狀態(tài)?試畫出進程狀態(tài)變遷圖,并標明發(fā)生變遷的可能原因。答:進程有三個基本狀態(tài):運行狀態(tài)、就緒狀態(tài)和等待狀態(tài)(又稱阻塞、掛起、睡眠)。(a)解:Main()ints12=0,s13=0,s14=0;cobeginP1;P2;P3;P4;coendP1()p1execute;V(s12);V(s13);V(s14);P2()P(s12);p2execute;P3()P(s13);p3execute;P4()P(s14);p4execute;(b)略解:Main()intsa=1,sb=0;/sa表示緩沖區(qū)S是否為空,sb表示是否為滿。intta=1,tb=0;/ta表示緩沖區(qū)T是否為空,tb表示是否為滿。Cobeginget;copy;put;coendGet()while(1)P(sa);inputdata6tobufferS;V(sb);Copy()while(1)P(sb);copydatafrombufferS;V(sa);P(ta);inputcopy-datatobufferT;V(tb);Put()while(1)P(tb);outputdatatobufferS;V(ta);4-12什么是進程的互斥與同步?同步和互斥這兩個概念有什么聯(lián)系和區(qū)別?答:在操作系統(tǒng)中,當(dāng)一個進程進入臨界區(qū)使用臨界資源時,另一個進程必須等待,當(dāng)占用臨界資源的進程退出臨界區(qū)后,另一進程才被允許去訪問此臨界資源。我們稱進程之間的這種相互制約關(guān)系為互斥。進程同步是指多個相關(guān)進程在執(zhí)行次序上的協(xié)調(diào)。這些進程相互合作,在一些關(guān)鍵點上可能需要互相等待或互通消息。4-13在一個實時系統(tǒng)中,有兩個進程p和q,它們是循環(huán)運行的。循環(huán)進程p每隔1秒鐘由脈沖寄存器(REG)獲得輸入,并把它累計到一個整型變量(W)中,同時清除脈沖寄存器。循環(huán)進程q則每隔1小時輸出這個整形變量的內(nèi)容并把它復(fù)位。系統(tǒng)提供標準的I/O過程input和output,并提供系統(tǒng)調(diào)用命令delay(seconds)。試擬定出這兩個進程并發(fā)活動的程序描述。解:設(shè)置一個互斥信號量mutex用來實現(xiàn)進程p和q對共享變量W的互斥使用。Main()intmutex=1;intW=0;cobeginp;q;coendp()while(1)delay(1);P(mutex);W=W+input(REG);V(mutex);REG=0;q()while(1)delay(3600);P(mutex);output(W);W=0;V(mutex);4-18什么是線程?線程和進程有什么區(qū)別?答:線程有時也稱為輕量級進程,它是比進程更小的活動單位,它是進程中的一個執(zhí)行路徑。一個進程可以有多個執(zhí)行路徑即線程。線程和進程的主要區(qū)別如下:(1)線程是進程的一個組成部分。一個進程可以有多個線程,而且至少有一個可執(zhí)行的線程。(2)進程是資源分配的基本單位,它擁有自己的地址空間和各種資源。線程是處理機調(diào)度的基本單位,它只能和其他線程共享進程的資源,而本身并不具有任何資源。(3)進程的多個線程都在進程的地址空間內(nèi)活動。這樣,在以線程為單位進行處理機調(diào)度和切換時,由于不發(fā)生資源變化特別是地址空間的變化,因此切換時間較短。而以進程為單位進行處理機調(diào)度和切換時,由于涉及到資源轉(zhuǎn)移及現(xiàn)場保護等問題,將導(dǎo)致切換時間變長和資源利用率降低。(4)線程和進程一樣,都有自己的狀態(tài)和相應(yīng)的同步機制。但是,由于線程沒有自己單獨的程序和數(shù)據(jù)空間,因而不能像進程的程序和數(shù)據(jù)那樣交換到外存去。(5)進程的調(diào)度和控制大多由操作系統(tǒng)的內(nèi)核完成,而線程的控制既可以由操作系統(tǒng)內(nèi)核完成,也可以由用戶控制完成。習(xí)題六參考答案(P132)6-2某系統(tǒng)進程調(diào)度狀態(tài)變遷圖如圖6.5所示(設(shè)調(diào)度方式為非剝奪方式),請說明:(1)什么原因?qū)⒁鸢l(fā)生變遷2、變遷3、變遷4?(2)當(dāng)觀察系統(tǒng)中所有進程時,能夠看到某一進程產(chǎn)生的一次狀態(tài)變遷能引起另一進程作一次狀態(tài)變遷,在什么情況下,一個進程的變遷3能立即引起另一個進程發(fā)生變遷1?(3)下述因果變遷是否可能發(fā)生?如果可能的話,在什么情況下發(fā)生?(a)3-1;(b)3-2;(c)2-1(2)正在運行的進程因等待某事件的發(fā)生而變?yōu)榈却隣顟B(tài)的變遷3,在就緒隊列非空時會立即引起一個就緒進程被調(diào)度執(zhí)行的變遷1。(3)a.3-1的因果變遷可能發(fā)生正在運行的進程因等待某事件的發(fā)生而變?yōu)榈却隣顟B(tài)的變遷3,在就緒隊列非空時必然引起一個就緒進程被調(diào)度執(zhí)行的變遷1。b.3-2的因果變遷不可能發(fā)生。c.2-1的因果變遷必然發(fā)生正運行的進程因時間片到變?yōu)榫途w狀態(tài)的變遷2,必然引起一個就緒進程被調(diào)度執(zhí)行的變遷1。6-3若題2中所采用的調(diào)度為可剝奪式,請回答題2中提出的問題:(1)什么原因?qū)⒁鸢l(fā)生變遷2、變遷3、變遷4?(2)當(dāng)觀察系統(tǒng)中所有進程時,能夠看到某一進程產(chǎn)生的一次狀態(tài)變遷能引起另一進程作一次狀態(tài)變遷,在什么情況下,一個進程的變遷3能立即引起另一個進程發(fā)生變遷1?(3)下述因果變遷是否可能發(fā)生?如果可能的話,在什么情況下發(fā)生?(a)3-1;(b)3-2;(c)2-1解答:(1)當(dāng)運行進程在分得的時間片內(nèi)未完成,時間片到將發(fā)生變遷2;或者新創(chuàng)建一個進程或一個等待進程變成就緒,它具有比當(dāng)前進程更高的優(yōu)先級,也將發(fā)生變遷2。當(dāng)運行進程在執(zhí)行過程中,需要等待某事件的發(fā)生才能繼續(xù)向下執(zhí)行,此時會發(fā)生變遷3。當(dāng)?shù)却M程等待的事件發(fā)生了,將會發(fā)生變遷4。(2)正在運行的進程因等待某事件的發(fā)生而變?yōu)榈却隣顟B(tài)的變遷3,在就緒隊列非空時會立即引起一個就緒進程被調(diào)度執(zhí)行的變遷1。(3)a.3-1的因果變遷可能發(fā)生正在運行的進程因等待某事件的發(fā)生而變?yōu)榈却隣顟B(tài)的變遷3,在就緒隊列非空時必然引起一個就緒進程被調(diào)度執(zhí)行的變遷1。b.3-2的因果變遷不可能發(fā)生。c.2-1的因果變遷必然發(fā)生正運行的進程因時間片到變?yōu)榫途w狀態(tài)的變遷2,必然引起一個就緒進程被調(diào)度執(zhí)行的變遷1?;蛘咝聞?chuàng)建一個進程或一個等待進程變成就緒,它具有比當(dāng)前進程更高的優(yōu)先級發(fā)生的變遷2,必然引起調(diào)度一個具有更高優(yōu)先級就緒進程執(zhí)行的變遷1。6-4某系統(tǒng)的進程狀態(tài)變遷圖如圖6.6所示(設(shè)該系統(tǒng)的進程調(diào)度方式為非剝奪式),請說明:(1)一個進程發(fā)生變遷3的原因是什么?發(fā)生變遷2、變遷4的原因又是什么?(2)下述因果變遷是否會發(fā)生,如果有可能的話,在什么情況下發(fā)生?(a)2-1;(b)3-2;(c)4-5;(d)4-2;(e)3-5(3)根據(jù)此狀態(tài)變遷圖敘述該系統(tǒng)的調(diào)度策略、調(diào)度效果。解答:(1)當(dāng)運行進程在執(zhí)行過程中,需要等待某事件的發(fā)生才能繼續(xù)向下執(zhí)行,此時會發(fā)生變遷3。當(dāng)運行進程在分得的時間片(100ms或500ms)內(nèi)未完成,時間片100ms或時間片500ms到將發(fā)生變遷2。當(dāng)?shù)却M程等待的事件發(fā)生了,將會發(fā)生變遷4。(2)a.2-1的因果變遷可能發(fā)生當(dāng)運行進程在分得的時間片(100ms或500ms)內(nèi)未完成,時間片100ms或時間片500ms到發(fā)生的變遷2,在高優(yōu)先就緒隊列為空時,必然引起低優(yōu)先就緒隊列中的一個就緒進程被調(diào)度執(zhí)行的變遷1。b.3-2的因果變遷不可能發(fā)生c.4-5的因果變遷可能發(fā)生在高優(yōu)先就緒隊列采用優(yōu)先級調(diào)度算法時,當(dāng)一進程從等待狀態(tài)變?yōu)榫途w狀態(tài)的變遷4,在該進程的優(yōu)先級最高且系統(tǒng)采用搶占式調(diào)度時,就會引起該進程被調(diào)度執(zhí)行的變遷5。或者在當(dāng)前運行進程是原低優(yōu)先就緒隊列中的一個進程且高優(yōu)先就緒隊列為空時,若系統(tǒng)采用可搶占方式,則當(dāng)一進程從等待狀態(tài)變?yōu)榫途w狀態(tài)的變遷4,就會引起該進程被調(diào)度執(zhí)行的變遷5。d.3-2的因果變遷不可能發(fā)生e.3-5的因果變遷可能發(fā)生正在運行的進程因等待某事件的發(fā)生而變?yōu)榈却隣顟B(tài)的變遷3,在高優(yōu)先就緒隊列非空時必然引起一個就緒進程被調(diào)度執(zhí)行的變遷5。(3)調(diào)度策略:首先調(diào)度高就緒隊列中的進程(一般由I/O型進程或短進程組成)投入運行(給高優(yōu)先就緒隊列中的進程分配的時間片大小為100ms),只有當(dāng)高就緒隊列中的所有進程全部運行完畢或因等待某事件發(fā)生處于阻塞狀態(tài),高就緒隊列中沒有進程可運行時,才調(diào)度低優(yōu)先就緒隊列中的進程(一般由計算型進程或長進程組成)(給低優(yōu)先就緒隊列中的進程分配的時間片大小為500ms)。若一個運行進程時間片(100ms或500ms)到還未完成就進入低優(yōu)先就緒隊列。若某進程在運行期間因等待某事件發(fā)生而進入阻塞隊列,則當(dāng)其所等待事件完成后,它將進入高優(yōu)先就緒隊列。調(diào)度效果:這種算法優(yōu)先照顧了I/O量大的進程或短進程。6-7在單道批處理系統(tǒng)中,有下列三個作業(yè)用先來先服務(wù)調(diào)度算法和最短作業(yè)調(diào)度算法進行調(diào)度,哪一種算法調(diào)度性能好些?請完成表6.5中未填寫的各項。答:用首次適應(yīng)法首先把120KB的空白區(qū)分配50KB的空間給作業(yè)1,分割后還剩70KB的空白區(qū),再將其分配給作業(yè)2,剩下10KB的空白區(qū)。起始地址為250KB的空白區(qū)(78KB)可以滿足作業(yè)3的需求,分割后還剩8KB的空白區(qū)。因此首次適應(yīng)法可以吞吐此作業(yè)序列。用最佳適應(yīng)法,則先分配78KB的空白區(qū)給作業(yè)1,還剩28KB的空白區(qū),不能滿足作業(yè)2的需求,因此分配120KB的空白區(qū)給作業(yè)2,還剩60KB的空白區(qū)。此時系統(tǒng)中有大小為28KB和60KB的兩個空白區(qū),它們均不能滿足作業(yè)3的需求。因此最佳適應(yīng)法不能吞吐此作業(yè)序列。7-8已知主存有256KB容量,其中OS占用低址20KB,可以有這樣一個作業(yè)序列:作業(yè)1要求80KB作業(yè)2要求16KB作業(yè)3要求140KB作業(yè)1完成作業(yè)3完成作業(yè)4要求80KB作業(yè)5要求120KB試用首次適應(yīng)算法和最佳適應(yīng)算法分別處理上述作業(yè)序列(在存儲分配時,從空白區(qū)高址處分割作為已分配區(qū)),并完成以下各步:(1)畫出作業(yè)1、2、3進入主存后,主存的分配情況。(2)作業(yè)1、3完成后,畫出主存分配情況。(3)畫出兩種算法中空白區(qū)的分區(qū)描述器信息(假定分區(qū)描述器所需占用的字節(jié)數(shù)已包含在作業(yè)所要求的主存容量中)及空白區(qū)鏈接情況。(4)哪種算法對該作業(yè)序列而言是合適的?答:(1)作業(yè)1、2、3進入主存后,主存的分配情況如下圖所示:若采用最佳適應(yīng)法,則應(yīng)先將起始地址為176KB的空白區(qū)(大小為80KB)分配給作業(yè)4。此時系統(tǒng)中還有一個空白區(qū),即起始地址為19KB,大小為140KB的空白區(qū),它可以滿足作業(yè)5的需求(120KB)。因此最佳適應(yīng)法對該作業(yè)序列是合適的。7-10已知主存容量為64KB,某一作業(yè)A的地址空間如圖7.40所示,它的4個頁面(頁面大小為1KB)0、1、2、3被分配到主存的2、4、6、7塊中,要求并回答(1)畫出作業(yè)A的頁面映射表。(2)當(dāng)200號單元處有一條指令“movr1,3500”執(zhí)行時,如何進行正確的地址變換,以使3500處的內(nèi)容12345裝入r1中?。(2)因為每頁大小為1KB=102
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《保育員工作課件》幼兒園
- 【基于SLP方法的S智慧商貿(mào)物流園平面布局設(shè)計12000字】
- 山東物流工程考試題庫及答案
- 三級考試題庫及答案
- 人保財險考試題庫及答案
- 澳洲管理學(xué)考試題及答案
- pta大一考試題目及答案
- 2025年陽泉盂縣社區(qū)專職招聘考試筆試試題(含答案)
- 2025年兒童社會性發(fā)展的支持與促進知識測評考試卷及答案
- 2025年產(chǎn)品設(shè)計與市場營銷考試試題及答案
- 2025年4月自考03346項目管理試題
- 艾梅乙反歧視培訓(xùn)課件
- 《海水工廠化養(yǎng)殖尾水處理技術(shù)規(guī)范》標準及編制說明
- 灌陽地質(zhì)概況學(xué)習(xí)教案
- 門式腳手架專項施工方案完成
- 黃土高原典型生態(tài)區(qū)基礎(chǔ)數(shù)據(jù)庫技術(shù)規(guī)范
- 第6章_懸移質(zhì)泥沙運動2014
- 湘美版美術(shù)四年級下冊教案-12.色彩取樣1
- (完整版)印章及文件管理指南
- 工作簡報模板
- 避難硐室使用說明書
評論
0/150
提交評論