計算機操作系統(第3版)課后習題答案(完整版)_第1頁
計算機操作系統(第3版)課后習題答案(完整版)_第2頁
已閱讀5頁,還剩44頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

計算機操作系統(3版)課后習題答案(完整版)第?章答:(1)(2)(3)(4)開放性2.OS的作?可表現在哪?個???答:(1)OS作為?戶與計算機硬件系統之間的接?(2)OS作為計算機系統資源的管理者(3)OS實現了對計算機資源的抽象OS實現了對計算機資源的抽象?答:OS?先在裸機上覆蓋?層I/O設備管理軟件,實現了對計算機硬件操作的第?層次抽象;在第?層軟件上再覆蓋?件管理軟件,實現了對硬件資源操作的第?層次抽象。OS通答:主要動?來源于四個??的社會需求與技術發展:(1)不斷提?計算機資源的利?率;(2)?便?戶;答:脫機I/O是指事先將裝有?戶程序和數據的紙帶或卡?裝?紙帶輸?機或卡?機,在外圍機的控制下,把紙帶或卡?上的數據或程序輸?到磁帶上。該?式下的輸?輸出由外圍機控制完成,是在脫離主機的情況下進?的。?聯機I/O?式是指程序和數據的輸?輸出都是在主機的直接控制下進?的。6.試說明推動分時系統形成和發展的主要動?是什么?答:推動分時系統形成和發展的主要動?是更好地滿??戶的需要。主要表現在:CPU答:關鍵問題是當?戶在??的終端上鍵?命令時,系統應能及時接收并及時處理該命令,在?戶能接受的時延內將結果返回給?戶。解決?法:針對及時接收問題,可以在系統中設置多路卡,使主機能同時接收?戶從各個終答:實時操作系統是指系統能及時響應外部事件的請求,在規定的時間內完成對該事件的處理,并控制所有實時任務協調?致地運?。引?實時OS是為了滿?應?的需求,更好地滿?實時控制領域和實時信息處理領域的需要。答:硬實時任務是指系統必須滿?任務對截?時間的要求,否則可能出現難以預測的結果。舉例來說,運載?箭的控制等。軟實時任務是指它的截?時間并不嚴格,偶爾錯過了任務的截?時間,對系統產?的影響不?。舉例:?頁內容的更新、?車售票系統。10.在8位微機和16位微機中,占據了統治地位的是什么操作系統?答:單?戶單任務操作系統,其中最具代表性的是CP/M和MS-DOS.11.試列出WindowsOS中五個主要版本,并說明它們分別較之前?個版本有何改進。答:MicrosoftWindows1.0是微軟公司在個?電腦上開發圖形界?的?次嘗試。Windows95是混合的16位/32位系統,第?個?持32位。帶來了更強?、更穩定、更實?的桌?圖形?戶界?,結束了桌?操作系統間的競爭。Windows98是微軟公司的混合16位/32位Windows操作系統,改良了硬件標準的?持,?新了內存管理,是多進程操作系統。WindowsXP是基于Windows2000的產品,擁有新?戶圖形界??神Luna。簡化了?戶安全特性,整合了防?墻。WindowsVistaWindowsAero全新界?風格、加強的搜尋功能(WindowsIndexingService)、新媒體創作?具以及重新設計的?絡、?頻、輸出(打印)和顯??系統。。12.試從交互性、及時性以及可靠性??,將分時系統與實時系統進??較。答:(1)及時性:實時信息處理系統對實時性的要求與分時系統類似,都是以?所能接受(2)交互性:實時信息處理系統具有交互性,但?與系統的交互僅限于訪問系統中某(3)可靠性:分時系統也要求系統可靠,但相?之下,實時系統則要求系統具有?度的可靠性。因為任何差錯都可能帶來巨?的經濟損失,甚?是災難性后果,所以在實時系統中,往往都采取了多級容錯措施保障系統的安全性及數據的安全性。13.OS有哪??特征?其最基本的特征是什么?答:并發性、共享性、虛擬性和異步性四個基本特征;最基本的特征是并發性。14.處理機管理有哪些主要功能?它們的主要任務是什么?答:處理機管理的主要功能是:進程管理、進程同步、進程通信和處理機調度;結束進程,控制進程在運?過程中的狀態轉換。進程同步:為多個進程(含線程)的運? 進?協調。通信:?來實現在相互合作的進程之間的信息交換。處理機調度:(1)作業調度。從后備隊?按照?定的算法,選出若?個作業,為他們分配運?所需的資源(?選是分配內存)。答:內存管理的主要功能有:內存分配、內存保護、地址映射和內存擴充。內存分配:為每道程序分配內存。內存保護:確保每道?戶程序都只在??的內存空間運?,彼ft互不?擾。地址映射:將地址空間的邏輯地址轉換為內存空間與對應的物理地址。內存擴充:?于實現請求調?功能,置換功能等。16.設備管理有哪些主要功能?其主要任務是什么?答:主要功能有:緩沖管理、設備分配和設備處理以及虛擬設備等。主要任務:完成?戶提出的I/O請求,為?戶分配I/O設備;提?CPU和I/O設備的利?率;提?I/O速度;以及?便?戶使?I/O設備.17.?件管理有哪些主要功能?其主要任務是什么?答:?件管理主要功能:?件存儲空間的管理、?錄管理、?件的讀/寫管理和保護。?件管理的主要任務:管理?戶?件和系統?件,?便?戶使?,保證?件安全性。18.是什么原因使操作系統具有異步性特征?OS設計時,各模塊間的接?規定很難滿?在模塊完成后對接?的實際需求。②在OS設計階段,設計者必須做出?系列的決定,每?個決定必須建?在上?個決定的基礎上。但模塊化結構設計的各模塊設計齊頭并進,?法尋找可靠的順序,造成各種決定的?序性,使程序設計?員很難做到設計中的每?步決定都建?在可靠的基礎上,因ft模塊接?法被稱為“?序模塊法”。(2)解決途徑:將模塊接?法的決定順序?序變有序,引?有序分層法。20.在微內核OS中,為什么要采?客戶/服務器模式?答:C/S模式具有獨特的優點:⑴數據的分布處理和存儲。⑵便于集中管理。⑶靈活性和可擴充性。⑷易于改編應?軟件。21.試描述什么是微內核OS。答:1)?夠?的內核2)基于客戶/服務器模式3)應?機制與策略分離原理4)采??向對象技術。答:在基于微內核結構的OS中,采??向對象的程序設汁技術。23.何謂微內核技術?在微內核中通常提供了哪些功能?(即?戶模式)中去運?,?留下?個答:1)提?了系統的可擴展性2)增強了系統的可靠性3)可移植性4)提供了對分布式系統的?持5)融?了?向對象技術第?章什么是前趨圖?為什么要引?前趨圖?答:前趨圖(PrecedenceGraph)是?個有向?循環圖,記為DAG(DirectedAcyclicGraph),?于描述進程之間執?的前后關系。畫出下?四條語句的前趨圖:S1=a:=x+y;S2=b:=z+1;S3=c:=a–b;S4=w:=c+1;答:其前趨圖為:什么程序并發執?會產?間斷性特征?答:程序并發執?時,多個程序共享系統中的各種資源,因?這些資源的狀態由多個程序改變,致使程序運?失去了封閉性,也會導致其失去可再現性。5.在操作系統中為什么要引?進程概念?它會產?什么樣的影響?答:為了使程序在多道程序環境下能并發執?,并對并發執?的程序加以控制和描述,在操作系統中引?了進程概念。影響:使程序的并發執?得以實?。答:(1)動態性是進程最基本的特性,表現為由創建?產?,由調度?執?,因得不到資源?暫停執?,由撤銷?消亡。進程有?定的?命期,?程序只是?組有序的指令集合,是靜態實體。(2)并發性是進程的重要特征,同時也是OS的重要特征。引?進程的?的正是為了使其程序能和其它進程的程序并發執?,?程序是不能并發執?的。(3)獨?性是指進程實體是?個能獨?運?的基本單位,也是系統中獨?獲得資源和獨?調度的基本單位。對于未建?任何進程的程序,不能作為獨?單位參加運?。7.試說明PCB的作?,為什么說PCB是進程存在的惟?標志?答:PCB答:(1)就緒狀態→執?狀態:進程分配到CPU資源(2)執?狀態→就緒狀態:時間??完(3)執?狀態→阻塞狀態:I/O請求(4)阻塞狀態→就緒狀態:I/O完成答:引?掛起狀態處于五種不同的需要:終端?戶需要,?進程需要,操作系統需要,對換北京?油化?學院信息?程學院計算機系5/48《計算機操作系統》習題參考答案余有明與計07和計G09的同學們編著5/48需要和負荷調節需要。處于掛起狀態的進程不能接收處理機調度。10.在進?進程切換時,所要保存的處理機狀態信息有哪些?答:進?進程切換時,所要保存的處理機狀態信息有:(3)進程狀態信息(4)過程和系統調?參數及調?地址信息。11.試說明引起進程創建的主要事件。答:引起進程創建的主要事件有:?戶登錄、作業調度、提供服務、應?請求。12.試說明引起進程被撤銷的主要事件。(越界錯誤、保護錯、?法指令、特權指令錯、運?超時、等待超時、算術運算錯、I/O故障)、外界?預(操作員或操作系統?預、?進程請求、?進程終?)。13.在創建?個進程時所要完成的主要?作是什么?答:(1)OS發現請求創建新進程事件后,調?進程創建原語Creat();(2)申請空?PCB;(5)將新進程插?就緒隊列.(1)根據被終?進程標識符,從PCB集中檢索出進程PCB,讀出該進程狀態。(2)若被終?進程處于執?狀態,?即終?該進程的執?,置調度標志真,指?該進程被終?后重新調度。(3)若該進程還有?進程,應將所有?孫進程終?,以防它們成為不可控進程。(4)將被終?進程擁有的全部資源,歸還給?進程,或歸還給系統。(5)將被終?進程PCB從所在隊列或列表中移出,等待其它程序搜集信息。15.試說明引起進程阻塞或被喚醒的主要事件是什么?答:a;b;c;d答:間接相互制約關系。舉例:有兩進程AB,如果A?臺打印機分配給了進程B,則進程ABA直接相互制約關系。舉例:有輸?進程A通過單緩沖向進程B提供數據。當緩沖空時,計算進程因不能獲得所需數據?阻塞,當進程AB;反之,當緩沖區已滿時,進程A因沒有緩沖區放數據?阻塞,進程B將緩沖區數據取?后便喚醒A。答:為了實現多個進程對臨界資源的互斥訪問,必須在臨界區前?增加?段?于檢查欲訪問的臨界資源是否正被訪問的代碼,如果未被訪問,該進程便可進?臨界區對資源進?訪問,并設置正被訪問標志,如果正被訪問,則本進程不能進?臨界區,實現這?功能的代碼為"進?區"代碼;在退出臨界區后,必須執?"退出區"代碼,?于恢復未被訪問標志,使其它進程能再訪問ft臨界資源。同步機構應遵循哪些基本準則?為什么?答:同步機構應遵循的基本準則是:空閑讓進、忙則等待、有限等待、讓權等待原因:為實現進程互斥進???的臨界區。試從物理概念上說明記錄型信號量waitsignal。答:wait(S):當S.value>0時,表??前系統中這類資源還有可?的。執??次wait操ft描述為S.value:=S.value-1;當S.value<0時,表?該類資源已分配完畢,進程應調?block原語?我阻塞,放棄處理機,并插?到信號量鏈表S.L中。signal(S):執??次signal操作,意味著釋放?個單位的可?資源,使系統中可供分配的該類資源數增加?個,故執?S.value:=S.value+1操作。若加1后S.value≤0,則表?在該信號量鏈表中,仍有等待該資源的進程被阻塞,因ft應調?wakeup原語,將S.L鏈表中的第?個等待進程喚醒。20.你認為整型信號量機制是否完全遵循了同步機構的四條準則?答:整型信號量機制不完全遵循同步機制的四條準則,它不滿?“讓權等待”準則。21.如何利?信號量機制來實現多個進程對臨界資源的互斥訪問?并舉例說明之。答:為使多個進程互斥訪問某臨界資源,只需為該資源設置?互斥信號量mutex,并設其初值為1,然后將各進程訪問該資源的臨界區CS置于wait(mutex)和signal(mutex)操作之間即可。這樣,每個欲訪問該臨界資源的進程在進?臨界區之前,都要先對mutex執?wait操作,若該資源ft刻未被訪問,本次wait操作必然成功,進程便可進???的臨界區,這時若再有其他進程也欲進???的臨界區,ft時由于對mutexwait操作定會失敗,因?該進程阻塞,從?保證了該臨界資源能被互斥訪問。當訪問臨界資源的進程退出臨界區后,應對mutex執?signalVarmutex:semaphore:=1;beginparbeginprocess1:beginrepeatwait(mutex);criticalsectionsignal(mutex);remaindersectionuntilfalse;endprocess2:beginrepeatwait(mutex);criticalsectionsignal(mutex);remaindersectionuntilfalse;endparend22.試寫出相應的程序來描述圖2-17所?的前驅圖。答:(a)Varabcdefghsemaphore:=00,000000;beginparbeginbeginS1;signal(a);signal(b);end;beginwait(a);S2;signal?;signal(d);end;beginwait(b);S3;signal(e);end;beginwait?;S4;signal(f);end;beginwait(d);S5;signal(g);end;beginwait(e);S6;signal(h);end;beginwait(f);wait(g);wait(h);S7;end;parendend(b)Vara,b,c,d,e,f,g,h,i,j;semaphore:=0,0,0,0,0,0,0,0,0,0;beginparbeginbeginS1;signal(a);signal(b);end;beginwait(a);S2;signal?;signal(d);end;beginwait(b);S3;signal(e);signal(f);end;beginwait?;S4;signal(g);end;beginwait(d);S5;signal(h);end;beginwait(e);S6;signal(i);end;beginwait(f);S7;signal(j);end;beginwait(g);wait(h);wait(i);wait(j);S8;end;parendendsignal(full)或signal(empty),對執?結果有何影響?答:如果缺少signal(full),那么表明從第?個?產者進程開始就沒有改變信號量full值,即使緩沖池產品已滿,但full值還是0,這樣消費者進程執?wait(full)時認為緩沖池是空?取不到產品,消費者進程?直處于等待狀態。如果缺少signal(empty),在?產者進程向n個緩沖區投滿產品后消費者進程才開始從那么每當消費者進程取??個產品empty值并不改變,直到緩沖池取空了,empty0,即使?前緩沖池有n或者將signal(mutex)與signal(full)互換位置,結果如何?答:將wait(full)和wait(mutex)互換位置后,可能引起死鎖。考慮系統中緩沖區全滿時,若??產者進程先執?了wait(mutex)操作并獲得成功,則當再執?wait(empty)操作時,signal(empty)來喚醒??,在ft之前,它不可能執?signal(mutex)操作,從?使試圖通過執?wait(mutex)操作?進???的臨界區的其他?產者和所有消費者進程全部進?阻塞狀態,這樣容易引起系統死鎖。互換位置后只是影響進程對臨界資源的釋放次序,?不會引起系統死鎖,因ft可以互換位置。W,當W=1時表?關鎖,當W=0時表?鎖已打開。試寫出開鎖和關鎖的原語,并利?他們實現互斥。答:整型信號量:lock(W)whileW=1dono-opW:=1;unlock(W):W:=0;記錄型信號量:lock(W):W:=W+1;if(W>1)thenblock(W,L)unlock(W):W:=W-1;if(W>0thenwakeup(WL)例?:VarW:semaphore:=0;beginrepeatlock(W);criticalsectionunlock(W);remaindersectionuntilfalse;end答:producer:beginrepeat…produceraniteminnextp;wait(mutex);wait(full);signal(mutex);untilfalse;endconsumer:beginrepeatwait(mutex);nextc:=buffer(out);out:=out+1;signal(mutex);consumeriteminnextc;untilfalse;endchopstick:array[0,…,4ofsemaphore;所有信號量均被初始化為1,第i位哲學家的活動可描述為:RepeatWait(chopstick[i]);Wait(.chopstick[(i+1)mod5]);…Ea.t…Signal(chopstick[i]);Signal(chopstick[(i+1)mod5])Ea.t;…Think;Untilfalse;答:Varmutex,empty,full:semaphore:=1,1,0;gather:beginrepeat……gatherdatainnextp;wait(empty);wait(mutex);buffer:=nextp;signal(mutex);signal(full);untilfalse;endcompute:beginrepeat……wait(full);wait(mutex);nextc:=buffer;signal(mutex);signal(empty);computedatainnextc;untilfalse;endVarempty,full:semaphore:=1,0;gather:beginrepeat……gatherdatainnextp;wait(empty);buffer:=nextp;signal(full);untilfalse;endcompute:beginrepeat……wait(full);nextc:=buffer;signal(empty);computedatainnextc;untilfalse;end答:管程由四部分組成:①管程的名稱;②局部于管程內部的共享數據結構說明;③對該數據結構進?操作的?組過程;④對局部于管程內部的共享數據設置初始值的語句;當?個進程調?了管程,在管程中時被阻塞或掛起,直到阻塞或掛起的原因解除,?在ft期間,如果該進程不釋放管程,則其它進程?法進?管程,被迫長時間地等待。為了解決這個問題,引?了條件變量condition。30.如何利?管程來解決?產者與消費者問題?答:?先建??個管程,命名為ProclucerConsumer,包括兩個過程:(1)Put(item)過程。?產者利?該過程將???產的產品放到緩沖池,?整型變量countcount≥ncount≤0時,表?緩沖池中已?可取的產品,消費者應等待。PC管程可描述如下:typeproducer-consumer=monitorVarin,out,count:integer;buffer:array[0,…,n-1]ofitem;notfull,notempty:condition;procedureentrydot(item)beginifcount>=nthennotfull.wait;buffer(in):=nextp;in:=(in+1)modn;count:=count+1;ifnotempty.queuethennotempty.signal;endprocedureentryget(item)beginifcount<=0thennotfull.wait;nextc:=buffer(out);out:=(out+1)modn;count:=count-1;ifnotfull.quenethennotfull.signal;endbeginin:=out:=0;count:=0end在利?管程解決?產者?消費者問題時,其中的?產者和消費者可描述為:producer:beginpepeatproduceanineminnestpPC.put(item);untilfalse;endconsumer:beginrepeatPC.get(item);consumetheiteminenxtc;untilfalse;endAND信號量寫出?產者?消費者問題的解法。答:為解決并?帶來的死鎖問題,在wait操作中引?AND條件,其基本思想是將進程在整個運?過程中所需要的所有臨界資源,?次性地全部分配給進程,?完后?次性釋放。解決?產者-消費者問題可描述如下:varmutex,empty,full:semaphore:=1,n,0;buffer:array[0,…,n-1]ofitem;in,out:integer:=0,0;beginparbeginproducer:beginrepeat…produceaniteminnextp;…wait(s1,s2,s3,…,sn)//s1,s2,…,sn為執??產者進程除empty外其余的條件wait(mutex);buffer(in):=nextp;in:=(in+1)modn;signal(mutex);signal(full);signal(s1,s2,s3,…,sn);untilfalse;endconsumer:beginrepeatwait(full);wait(k1,k2,k3,…,kn);//k1,k2,…,kn為執?消費者進程除full外其余的條件wait(mutex);nextc:=buffer(out);out:=(out+1)modn;signal(mutex);signal(empty);signal(k1,k2,k3,…,kn);consumetheiteminnextc;untilfalse;endparendend32.什么是信號量集?試利?信號量集寫出讀者?寫者問題的解法。答:對AND信號量加以擴充,形成的信號量集合的讀寫機制。解法:VarRNinteger;L,mx:semaphore:=RN,1;beginparbeginreader:beginrepeatSwait(L,1,1);Swait(mx,1,1);…performreadoperation;…Ssignal(L,1);untilfalseendwriter:beginrepeatSwait(mx,1,1;L,RN,0);performwriteoperation;Ssignal(mx,1);untilfalseendparendend33.試?較進程間的低級與?級通信?具。答:?戶?低級通信?具實現進程通信很不?便,效率低,通信對?戶不透明,所有操作都必須由程序員來實現,??級通信?具彌補了這些缺陷,?戶直接利?操作系統提供的?組通信命令,?效地傳送?量的數據。34.當前有哪?種?級通信機制?答:共享存儲器系統、消息傳遞系統以及管道通信系統。35.消息隊列通信機制有哪???的功能?答:(1)構成消息(2)發送消息(3)接收梢息(4)互斥與同步。36.為什么要在OS中引?線程?OS具的利?率。進程是分配資源的基本單位,?線程則是系統調度的基本單位。37.試說明線程具有哪些屬性?答:(1)輕型實體(2)獨?調度和分派的基本單位(3)可并發執?(4)共享進程資源。38.試從調度性,并發性,擁有資源及系統開銷??對進程和線程進??較。答:(1)調度性。線程在OS中作為調度和分派的基本單位,進程只作為資源擁有的基本單位。(2)并發性。進程可以并發執?,?個進程的多個線程也可并發執?。(3)擁有資源。進程始終是擁有資源的基本單位,線程只擁有運?時必不可少的資源,本?基本不擁有系統資源,但可以訪問?屬進程的資源。(4)系統開銷。操作系統在創建、撤消和切換進程時付出的開銷顯著?于線程。39.為了在多線程OS中實現進程之間的同步與通信,通常提供了哪?種同步機制?答:(1)私?信號量。當某線程需利?信號量實現同?進程中各線程之間的同步時,可調?創建信號量的命令來創建?個私?信號量,其數據結構存放在應?程序的地址空間中。(2)公?信號量。公?信號量是為實現不同進程間或不同進程中各線程之間的同步?設置的。其數據結構是存放在受保護的系統存儲區中,由OS為它分配空間并進?管理。41.何謂?戶級線程和內核?持線程?答:(1)?戶級線程:僅存在于?戶空間中的線程,?須內核?持。這種線程的創建、撤銷、(2)內核?持線程:在內核?持下運?的線程。?論是?戶進程中的線程,還是系統線程中的線程,其創建、撤銷和切換等都是依靠內核,在內核空間中實現的。在內核空間?還答:系統在創建新進程時,分配?個任務數據區PTDA,其中包括若?個線程控制塊TCB空間。創建?個線程分配?個TCB,有關信息寫?TCB,為之分配必要的資源。當PTDA中的TCB?完,?進程?有新線程時,只要所創建的線程數?未超過系統允許值,系統可在為之分配新的TCB;在撤銷?個線程時,也應回收線程的所有資源和TCB。第三章第三章處理機調度與死鎖答:?級調度的主要任務是根據某種算法,把外存上處于后備隊列中的那些作業調?內存。低級調度是保存處理機的現場信息,按某種算法先取進程,再把處理器分配給進程。2.何謂作業、作業步和作業流?作業步是指每個作業運?期間都必須經過若?個相對獨?相互關聯的順序加?的步驟。3.在什么情況下需要使?作業控制塊JCB?其中包含了哪些內容?答:每當作業進?系統時,系統便為每個作業建??個作業控制塊JCB,根據作業類型將它插?到相應的后備隊列中。JCB包含的內容通常有:1)作業標識2)?戶名稱3)?戶賬戶4)作業類型(CPU繁忙型、I/O芳名型、批量型、終端型)5)作業狀態6)調度信息(優先級、作業已運?)7)資源要求8)進?系統時間9)開始處理時間10)作業完成時間11)作業退出時間12)資源使?情況等4.在作業調度中應如何確定接納多少個作業和接納哪些作業?5.試說明低級調度的主要功能。答:(1)保存處理機的現場信息(2)按某種算法選取進程(3)把處理機分配給進程。6.在搶占調度?式中,搶占的原則是什么?答:搶占的原則有:時間?原則、優先權原則、短作業優先權原則等。7.在選擇調度?式和調度算法時,應遵循的準則是什么?答:(2)?向系統的準則:系統吞吐量?、處理機利?率好、各類資源的平衡利?。答:批處理系統的調度算法:短作業優先、優先權、?響應?優先、多級反饋隊列調度算法。分時系統的調度算法:時間?輪轉法。實時系統的調度算法:最早截?時間優先即EDF、最低松弛度優先即LLF算法。9.何謂靜態和動態優先級?確定靜態優先級的依據是什么?答:靜態優先級是指在創建進程時確定且在進程的整個運?期間保持不變的優先級。10.試?較FCFS和SPF兩種進程調度算法。答:相同點:兩種調度算法都可以?于作業調度和進程調度。不同點:FCFS調度算法每次都從后備隊列中選擇?個或多個最先進?該隊列的作業,將它們調?內存、分配資源、創建進程、插?到就緒算法每次調度都從后備隊列中選擇?個或若?個估計運?時間最短的作業,調?內存中運?。該算法有利于短作業/進程,不利于長作業/進程。11.在時間?輪轉法中,應如何確定時間?的???/松弛程度的任務優先級調度算法,通常的優先級調度算法不能滿?實時系統的調度實時性要求?不適?。13.為什么說多級反饋隊列調度算法能較好地滿?各???戶的需求?答:(1)終端型作業?戶提交的作業?多屬于較?的交互型作業,系統只要使這些作業在第?隊列規定的時間?內完成,終端作業?戶就會感到滿?。(2)短批處理作業?戶,開始時像終端型作業?樣,如果在第?隊列中執??個時間?段即可完成,便可獲得與終端作業?樣的響應時間。對于稍長作業,通常只需在第?和第三隊列各執??時間?即可完成,其周轉時間仍然較短。14.為什么在實時系統中,要求系統(尤其是CPU)具有較強的處理能??15.按照調度?式可將實時調度算法分為哪?種?16.什么是最早截?時間優先調度算法?舉例說明。舉例:?搶占式調度?式?于?周期實時任務。圖3-9是將該算法?于?搶占調度?式之例。該例中具有四個?周期任務,它們先后到達。系統?先調度任務1執?,在任務1執?期間,任務2、3?先后到達。由于任務3的開始截?時間早于任務2,故系統在任務1后將調度任務2的,故在任務3執?完后,系統?調度任務4執?,最后才調度任務2執?。圖3-9EDF算法?于?搶占調度的調度?式ms時必須完成,?它本?所需的運?時間就有100ms,因ft,調度程序必須在100ms之前調度執?,該任務的緊急程度(松弛程度)為100ms。?如,另?任務在400ms時必須完成,它本?需要運?150ms,則其松弛程度為250ms。18.何謂死鎖?產?死鎖的原因和必要條件是什么?答:死鎖是指多個進程在運?過程中因爭奪資源?造成的?種僵局,當進程處于這種僵持狀態時,若?外?作?,它們都將?法再向前推進。產?死鎖的原因為競爭資源和進程間推進順序?法。其必要條件是:互斥條件、請求和保持條件、不剝奪條件、環路等待條件。避免死鎖使資源的利?率最?。答:(1)擯棄“請求和保持”條件,就是如果系統有?夠資源,便?次性把進程需要的所有資源分配給它;(2)擯棄“不剝奪”條件,就是已經擁有資源的進程,當它提出新資源請求?不能?即滿?時,必須釋放它已保持的所有資源,待以后需要時再重新申請;(3)擯棄“環路等待”條件,就是將所有資源按類型排序標號,所有進程對資源的請求必須嚴格按序號遞增的次序提出。發出請求向量由Request(0,2,0)改為Request(0,1,0),問系統可否將資源分配給它?(ft答案有點問題,需重新考慮)答:(1)可以。銀?家算法各種資源數量分別為10、5、7,在T0時刻的資源分配如圖所?:(2)具體分析如下:①Requst0(0,1,0)<=Need0(7,4,3);②Requst0(0,1,0)<=Available(2,3,0);系統先假定可為P0分配資源,并修改Available0,Allocation0和Need0向量,由ft形成的資源變化情況如下圖所?:(3)P0請求資源:P0發出請求向量Requst0(0,1,0),系統按銀?家算法進?檢查:①Requst0(0,1,0)<=Need0(7,4,3);②Requst0(0,1,0)<=Available(2,3,0);③系統暫時先假定可為P0分配資源,并修改 據,如下圖所?綜上所述系統可以將資源分配給它。22.銀?家算法中出現以下資源分配,試問(1)該狀態是否安全?(2)若進程P2提出Request(1,2,2,2)后,系統能否將資源分配給它?試問:(1)該狀態是否安全?后,系統能否將資源分配給它?(參考答案有錯)(1)安全,因為存在安全序列{P0,P3,P4,P1,P2}(2)系統能分配資源,分析如下。①Request(1,2,2,2)<=Need2(2,3,5,6);②Request(1,2,2,2)<=Available2(1,3,5,4)改成Available2(1,6,2,2);③系統先假定可為P2分配資源,并修改Available2,Allocation2和Need2向量,由ft形成的資源變化情況如下圖所?:④再利?安全性算法檢查ft時系統是否安全。如下圖由ft進?的安全性檢查得知,可以找到?個安全序列{P2,P0,P1,P3,P4}。第四章1.為什么要配置層次式存儲器?答:設置多個存儲器可以使存儲器兩端的硬件能并??作;采?多級存儲系統,特別是CacheCPU中寄存器數量??緩解對存儲器壓?。2.可采?哪?種?式將程序裝?內存?它們分別適?于何種場合?答:(1)絕對裝??式,只適?于單道程序環境。(2)可重定位裝??式,適?于多道程序環境。(3)動態運?時裝??式,?于多道程序環境;不允許程序運?時在內存中移位置。3.何謂靜態鏈接?何謂裝?時動態鏈接和運?時的動態鏈接?P120答:靜態鏈接是指在程序運?前,先將各?標模塊及它們所需的庫函數,鏈接成?個完整的裝配模塊,以后不再拆開的鏈接?式。裝?時動態鏈接是指將?戶源程序編譯后得到的?組?標模塊,在裝?內存時采?邊裝?邊鏈接的鏈接?式。運?時動態鏈接是指對某些?標模塊的鏈接,是在程序執?中需要該?標模塊時,才對它進?的鏈接。4.在進?程序鏈接時,應完成哪些?作?Module。主要?作是修改程序內的相對地址和修改?標程序中的外部調?標號。5.在動態分區分配?式中,應如何將各空閑分區鏈接成空閑分區鏈?答:在程序執?過程中,每當訪問指令或數據時,將要訪問的程序或數據的邏輯地址轉換成物理地址,引?了動態重定位;具體實現?法是在系統中增加?個重定位寄存器,?來裝?程序在內存中的起始地址,答:在采??次適應算法回收內存時可能出現4種情況:(3)回收區前后均鄰空閑區。將三個分區合并,修改前鄰空閑區??為三者之和。x的塊的伙伴系統地址,試寫出的通?表達式。答:當時,;當時,9.分區存儲管理中常?那些分配策略??較它們的優缺點。答:分區存儲管理中的常?分配策略:?次適應算法、循環?次適應算法、最佳適應算法、最壞適應算法。10.在系統中引?對換后可帶來哪些好處?答:交換技術將暫不需要的作業移到外存,讓出內存空間以調?其它作業,交換到外存的作業也可以被再次調?。?的是解決內存緊張問題,帶來的好處是進?步提?了內存利?率和系統吞吐量。11.為實現對換,系統應具備哪???的功能?答:系統應具備三??功能:對換空間管理,進程換出,進程換?。12.在以進程為單位進?對換時,每次是否都將整個進程換出?為什么?(1)從結構上講,進程由程序段、數據段和進程控制塊組成的,其中進程控制塊總有部分或全部常駐內存,不被換出。(2)程序段和數據段可能正被若?進程共享,ft時它們也不能換出。13.為實現分頁存儲管理,需要哪些硬件的?持?答:動態重定位技術、虛擬存儲技術、多道程序設計技術。?便編程。?戶通常把??的作業按照邏輯關系劃分為若?段,每段都從0編址,并有??名字和長度。因ft,希望要訪問的邏輯地址是由段名和段內偏移量決定。信息共享。在實現對程序和數據的共享時,是以信息邏輯單位為基礎。分頁系統中的頁是存放信息的物理單位,?完整意義,不便于共享;段是信息的邏輯單位。為了實現段的共享,希望存儲管理能與?戶程序分段的組織?式相適應。信息保護。對信息的邏輯單位進?保護,分段能更有效?便地實現信息保護功能。動態增長。在實際應?中,有些段特別是數據段,在使?過程中會不斷增長,事先??法確切知道增長多少。分段存儲管理?式能較好解決這個問題。動態鏈接。運?時先將主程序對應的?標程序裝?內存并啟動運?,運?過程中?需要調?某段時,才將該段調?內存鏈接。所以動態鏈接也要求以段作為管理單位。15.在具有快表的段頁式存儲管理?式中,如何實現地址變換?答:在CPU給出有效地址后,由地址變換機構?動將頁號P送??速緩沖寄存器,并將ftft頁表項存?快表。但若寄存器已滿,則OS必須找到合適的頁表項換出。16.為什么說為什么說分段系統?分頁系統更易于實現信息的共享和保護?答:分頁系統的每個頁?是分散存儲的,為了實現信息共享和保護,頁?之間需要??對應,為ft需要建??量的頁表項;?分段系統的每個段都從0編址,并采??段連續的地址空間,在實現共享和保護時,只需為要共享和保護的程序設置?個段表項,將其中的基址與內存地址??對應就能夠實現。17.分段和分頁存儲管理有何區別?答:(1)頁是信息的物理單位,分頁是為了實現離散分配?式,以消減內存的外部零頭,提?內存利?率。段則是信息的邏輯單位,它含有?組相對完整的信息。(2)頁的??固定且由系統決定,由系統把邏輯地址劃分為頁號和頁內地址兩部分,是由機械硬件實現的,因?在系統中只能有?種??的的頁?;?段的長度卻不固定,決定于?戶所編寫的程序,通常由編譯程序在對原程序進?編譯時,根據信息的性質來劃分。(3)分頁的作業地址空間是?維的,?分段作業地址空間則是?維的。18.試全??較連續分配和離散分配?式.答:(1)連續分配是指為?個?戶程序分配?個連續的地址空間,包括單?和分區兩種分配?(2)離散分配?式分為分頁、分段和段頁式存儲管理。分頁式存儲管理旨在提?內存利?率,分段式存儲管理旨在滿??戶(程序員)的需要,段頁式存儲管理則將兩者結合起來,具答:虛擬存儲器有多次性、對換性、虛擬性三?特征。最本質的特征是虛擬性。20.實現虛擬存儲器需要哪些硬件?持?答:(1)請求分頁(段)的頁(段)表機制(2)缺頁(段)中斷機構(3)地址變換機構21.實現虛擬存儲器需要哪?個關鍵技術?答:(1)在分頁請求系統中是在分頁的基礎上,增加了請求調頁功能和頁?置換功能所形成的頁式虛擬存儲系統。允許只裝?少數頁?的程序(及數據),便啟動運?。(2)在請求分段系統中是在分段系統的基礎上,增加了請求調段及分段置換功能后形成的??所有段)的?戶程序和數據,即可啟動運?。22.在請求分頁系統中,頁表應包括哪些數據項?每項的作?是什么?答:頁表應包括:頁號、物理塊號、狀態位P、訪問字段A、修改位M和外存地址。其中狀態位PA考;修改位M表?該頁在調?內存后是否被修改過;外存地址?于指出該頁在外存上的地址,通常是物理塊號,供調?該頁時使?。23.在請求分頁系統中,應從何處將所需頁?調?內存?(1)系統擁有?夠對換區空間時,可以全部從對換區調?所需頁?,提?調頁速度。在進程運?前將與該進程有關的?件從?件區拷貝到對換區。(2)系統缺少?夠對換區空間時,不被修改的?件直接從?件區調?;當換出這些頁?時,未被修改的不必換出,再調?時,仍從?件區直接調?。對于可能修改的,在換出時便調到對換區,以后需要時再從對換區調?。(3)UNIX?式。未運?頁?從?件區調?。曾經運?過但被換出頁?,下次從對換區調?。UNIX系統允許頁?共享,某進程請求的頁?有可能已調?內存,直接使?不再調?。24.在請求分頁系統中,常采?哪?種頁?置換算法?(LRU)置換算法,Clock置換算法,最少使?置換算法,頁?緩沖算法等。25.在請求分頁系統中,通常采?哪種頁?分配?式?為什么?答:固定分配?式是基于進程的類型(交互型)或根據程序員、系統管理員的建議,為每個進程分配固定頁數的內存空間,整個運?期間不再改變;采?可變分配?式有全局置換和局部置換兩種,前者易于實現,后者效率?。26.在?個請求分頁系統中,采?LRU432,14354,321,5,當分配給該作業的物理塊數M分別為3和4答:當分配給該作業的物理塊數M為3時,缺頁7次,缺頁率:7/12=0.583;當分配給該作業的物理塊數M為4時,缺頁4次,缺頁率:4/12=0.333.-------以上解答出錯。正確解法見下?:答:當分配給該作業的物理塊數M為3時,缺頁9次,缺頁率:9/12=3/4;當分配給該作業的物理塊數M為4時,缺頁10次,缺頁率:10/12=5/6.27.實現LRU算法所需的硬件?持是什么?答:需要寄存器和棧等硬件?持。寄存器?于記錄某進程在內存中各頁的使?情況,棧?于保存當前使?的各個頁?的頁?號。28.試說明改進型Clock置換算法的基本原理.答:因為修改過的頁?在換出時付出的開銷?未被修改過的頁??,在改進型Clock算法中,既考慮頁?的使?情況,還要增加置換代價的因素;在選擇頁?作為淘汰頁?時,把同時滿?未使?過和未被修改作為?選淘汰頁?。29.說明請求分段系統中的缺頁中斷處理過程。答:請求分段系統中的缺頁中斷處理過程描述如下:(1)根據當前執?指令中的邏輯地址查頁表,判斷該頁是否在主存儲器中(2)該頁標志為“0”形成缺頁中斷,中斷裝置通過交換PSW讓操作系統的中斷處理程序占?處理器。(3)操作系統處理缺頁中斷處理的辦法是查主存分配表找?個空閑的主存塊,查頁表找出該頁在磁盤上位置,啟動磁盤讀出該頁信息。(4)把從磁盤上讀出的信息裝?找到的主存塊中。(5)當頁?住處被裝?主存后,應修改頁表中對應的表?,填上該頁所占?的主存塊把標志置為“1”,表?該頁已在主存儲器中30.如何實現分段共享?答:在每個進程的段表中,?相應的表項指向共享段在內存中起始地址;配置相應的數據結構作為共享段表,在段表項中設置共享進程計數Count,每調??次該共享段,Count值增1,每當進程釋放?個共享段時,Count減1,若減為0,則系統回收該共享段的物理內存,取消在共享段表中該段對應的表項;共享段應給不同的進程以不同的存取權限;不同的進程可以使?不同的段號去共享該段。第五章答:由設備控制器與處理機的接?,設備控制器與設備的接?與I/O邏輯組成。2.為了實現CPU與設備控制器間的通信,設備控制器應具備哪些功能?答:接收和識別命令;數據交換;標識和報告設備狀態;地址識別;數據緩沖;差錯控制。3.什么是字節多路通道?什么是數組選擇通道和數組多路通道?答:(1)字節多路通道。按字節交叉?式?作的通道。通常含有許多?分配型?通道,數量從??到數百個,每個?通道連接?臺I/O設備,控制其I/O操作。?通道按時間?輪轉?式共享主通道。(2)數組選擇通道。按數組?式傳送數據,傳輸速率很?,每次只允許?個設備數據。(3)數組多路通道。將數組選擇通道傳輸速率?和字節多路通道的各?通道分時并?操作的優點結合?成。含有多個?分配型?通道,具有很?的數據傳輸率和通道利?率。4.如何解決因通道不??產?的瓶頸問題?答:解決問題的有效?法是增加設備到主機間的通路?不增加通道,把?個設備連到多個控制器上,控制器?連到多個通道上,這種多通路?式解決了“瓶頸”問題,提?了系統可靠性,個別通道或控制器的故障不會使設備和存儲器之間沒有通路。5.試對VESA及PCI兩種總線進??較。答:VESA總線的設計思想是以低價占領市場。總線帶寬32位,最?傳輸速率132Mb/s。?泛?于486微機。缺點是能連接的設備數僅為2~4臺,控制器中?緩沖,難于適應處理器速度的提?,不?持Pentium機。PCI總線在CPU和外設間插?了復雜的管理層,協調數據傳輸和提供?致接?。管理10種外設,?持?時鐘頻率的CPU運?,最?傳輸速率132Mb/s。可連接ISA、EISA等傳統總線,??持Pentium的64位系統,是基于奔騰等新?代微處理器?發展的總線。6.試說明推動I/O控制發展的主要因素是什么?答:推動I/O控制發展的主要動?在于盡量減少主機對I/O控制的?預,把主機從繁雜的I/O控制事務中解脫出來,?更多的時間和精?去完成其數據處理任務。同時,中斷機制在計算機系統中的引?、DMA控制器的出現和通道研制的成功使I/O控制的發展具備了技術?持和成為可能。7.有哪?種I/O控制?式?各適?于何種場合?答:共有四種I/O控制?式。(1)程序I/O?式:早期計算機?中斷機構,處理機對I/O設備的控制采?程序I/O?式或稱忙等的?式。(2)中斷驅動I/O控制?式:適?于有中斷機構的計算機系統中。(3)直接存儲器訪問(DMA)I/O控制?式:適?于具有DMA控制器的計算機系統中。(4)I/O8.試說明DMA的?作流程。答:以從磁盤讀?數據為例,說明DMA的?作流程。當CPU要從磁盤讀?數據塊時,先向磁盤控制器發送?條讀命令。該命令被送到命令寄存器CR中。同時還發送本次要讀?數據的內存起始?標地址,送?內存地址寄存器MAR;本次要讀數據的字節數送?數據計數器DC,將磁盤中的源地址直接送DMA控制器的I/O控制邏輯上。然后啟動DMA控制器傳送數據,以后CPU便處理其它任務。整個數據傳送過程由DMA控制器控制。下圖為DMA?式的?作流程圖。9.引?緩沖的主要原因是什么?答:引?緩沖的主要原因是:(1)緩和CPU與I/O設備間速度不匹配的?盾(2)減少對CPU的中斷頻率,放寬對中斷響應時間的限制(3)提?CPU與I/O設備之間的并?性max(C,T)+M?答:在塊設備輸?時,先從磁盤把?塊數據輸?到緩沖區,耗時為T;然后由操作系統將緩沖區數據送給?戶區,耗時M;接下來由CPU對CPU對數據的計算過程可以并?展開,所以系統對每?整塊數據的處理時間為max(CTM。11.為什么在雙緩沖情況下,系統對?塊數據的處理時間為max(T,C)?答:寫?者花費時間T將數據寫滿?個緩沖區后再寫另?個緩沖區;讀出者花費時間M將?個緩沖區數據送到?戶區后再傳送另?個緩沖區數據,計算者讀出?戶區數據進?處理。由于將數據從緩沖區傳到?戶區操作必須與讀?戶區數據處理串?進?,?且可以與從外存傳送數據填滿緩沖區的操作并?。因ft耗時?約為max(C+M,T)。考慮M是內存數據塊的移動耗時?常短暫可以省略,因ft近似地認為系統對?塊數據處理時間為max(C,T)。12.試繪圖說明把多緩沖?于輸出時的情況。答:多緩沖?于輸出的?意圖如下:13.試說明收容輸??作緩沖區和提取輸出?作緩沖區的?作情況。答:過程,從EmptyQueue隊列的隊?摘下?個空緩沖區,作為收容輸??作緩沖區Hin。然后把數據輸?其中,裝滿后再調?PutBuf(InputQueue,Hin)過程,將該緩沖區掛在輸?隊列InputQueue的隊尾。過程,從輸出隊列的隊?取得?裝滿輸出數據的緩沖Sout。在數據提取完后,再調?PutBuf(EmptyQueue,Sout)過程,將該緩沖區掛到空緩沖隊列EmptyQueue的隊尾。14.何謂安全分配?式和不安全分配?式?答:①安全分配?式是指每當進程發出I/O請求后,便進?阻塞狀態,直到其I/O操作完成時才被喚醒。在采?這種分配策略時,?旦進程已獲得某種設備資源后便阻塞,使它不可能再請求任何資源,?在它運?時?不保持任何資源。這種分配?式已經摒棄了造成死鎖的“請求和保持”條件,分配是安全的。缺點是進程進展緩慢,CPU與I/O設備串??作。②不安全分配?式是指進程發出I/O請求后仍繼續執?,需要時?可發出第?個I/O請求、第三個I/O請求。僅當進程請求的設備已被另?個進程占有時,進程才進?阻塞狀態。優點是?個進程可同時操作多個設備,進程推進迅速。缺點是分配不安全,可能具有“請求和保15.為何要引?設備獨?性?如何實現設備獨?性?16.在考慮到設備的獨?性時,應如何分配獨占設備?答:在考慮到設備的獨?性時,應按如下步驟來分配獨占設備:進程以邏輯設備名提出I/O請求。根據邏輯設備表獲得I/O請求的邏輯設備對應物理設備在系統設備表中的指針。17.何謂設備虛擬?實現設備虛擬時所依賴的關鍵技術是什么?18.試說明SPOOLing系統的組成。答:SPOOLingSPiSPoI/O的進程提供哪些服務?答:在實現后臺打印時,SPOOLingI/O的進程提供以下服務:(1)由輸出進程在輸出井中申請?空閑盤塊區,并將要打印的數據送?其中;(2)輸出進程為?戶進程申請空??戶打印表,填?打印要求,將該表掛到請求打印隊列。(3)?旦打印機空閑,輸出進程便從請求打印隊列的隊?取出?張請求打印表,根據表中要求將要打印的數據從輸出井傳送到內存緩沖區,再由打印機進?打印。20.試說明設備驅動程序具有哪些特點。答:設備驅動程序具有如下特點:I/OI/OI/O(4)驅動程序與硬件緊密相關,部分程序?匯編語?書寫,基本部分往往固化在ROM中。21.試說明設備驅動程序應具有哪些功能?答:設備驅動程序的主要功能包括:(1)將接收到的抽象要求轉為具體要求;檢查?戶I/O請求合法性,了解I/O發出I/OI/O設備,完成指定I/O(4)及時響應由控制器或通道發來的中斷請求,根據中斷類型調?相應中斷處理程序處理;(5)對于有通道的計算機,驅動程序還應該根據?戶I/O請求?動構成通道程序。22.設備中斷處理程序通常需完成哪些?作?答:設備中斷處理程序通常需完成如下?作:喚醒被阻塞的驅動程序進程;保護被中斷進程的CPU環境;分析中斷原因、轉?相應的設備中斷處理程序;進?中斷處理;恢復被中斷進程。答:磁盤訪問時間由尋道時間Ts、旋轉延遲時間Tr、傳輸時間Tt三部分組成。(1)Tssn條磁道的時間和,即Tsmns。(2)Tr是指定扇區移動到磁頭下?所經歷的時間。硬盤15000r/min時Tr為2ms;軟盤300或600r/min時Tr為50~100ms。(3)Tt是指數據從磁盤讀出或向磁盤寫?經歷的時間。Tt的??與每次讀/寫的字節數b和旋轉速度有關:Tt=b/rN。24.?前常?的磁盤調度算法有哪?種?每種算法優先考慮的問題是什么?答:?前常?的磁盤調度算法有先來先服務、最短尋道時間優先及掃描等算法。先來先服務算法優先考慮進程請求訪問磁盤的先后次序;最短尋道時間優先算法優先考慮要求訪問的磁道與當前磁頭所在磁道距離是否最近;個數量級。因ft,磁盤I/O已成為計算機系統的瓶頸。為提?磁盤I/O的速度,便引?了磁盤?速緩沖。磁盤?速緩沖是指利?內存中的存儲空間,暫存從磁盤中讀出的?系列盤塊中的信息。26.在設計磁盤?速緩沖時,如何實現數據交付?27.何謂提前讀、延遲寫和虛擬盤?答:提前讀是指在讀當前盤塊的同時,將下?個可能要訪問的盤塊數據讀?緩沖區,以便需要時直接從緩沖區中讀取,?需啟動磁盤。28.廉價磁盤冗余陣列是如何提?對磁盤的訪問速度和可靠性的?答:廉價磁盤冗余陣列RAID是利??臺磁盤陣列控制器,統?管理和控制?組(?臺到??臺)磁盤驅動器,組成?度可靠快速?容量的磁盤系統。第六章②記錄是?組相關數據項的集合,?于描述?個對象某??的屬性。③?件是具有?件名的?組相關信息的集合。2.?件系統的模型可分為三層,試說明其每?層所包含的基本內容。(?件、?錄、硬盤或磁帶存儲空間);I/O層、基本I/O管理程序或?件組織模塊層、邏輯?件系統層)第三層:?件系統接?(命令接?/圖形化?戶接?與程序接?)。3.試說明?戶可以對?件施加的主要操作有哪些?答:?戶通過?件系統提供的系統調?對?件實施操作。(1)基本?件操作:創建、刪除、讀、寫、截斷、設置讀/寫位置等;(2)?件打開和關閉操作:第?步通過檢索?件?錄找到指定?件屬性及其在外存上位置;第?步對?件實施讀寫等相應操作。(3)其他?件操作:?是?件屬性操作;?是?錄操作;三是?件共享與?件系統操作的系統調?實現等。4.何謂邏輯?件?何謂物理?件?5.如何提?對變長記錄順序?件的檢索速度?答:基本?法是為變長記錄順序?件建??張索引表,以主?件中每條記錄的長度及指向對應記錄的指針(即該記錄在邏輯地址空間的?6.試說明對索引?件和索引順序?件的檢索?法。答:①索引?件的檢索,?先根據?戶(程序)提供的關鍵字,利?折半查找法檢索索引表,找到相應表項;再利?給出的指向記錄指針值,訪問對應記錄。②索引順序?件的檢索,?先利??戶(程序)提供的關鍵字及查找?法,檢索索引表,找到該記錄在記錄組中的第?條記錄表項,得到第?個記錄在主?件中的位置;再利?順序查找法查找主?件,找到所要求的記錄。7.試從檢索速度和存儲費?兩??對索引?件和索引順序?件進??較。N/2條記錄。對于索引順序?件,每個記錄分組配置?個索引項,存儲開銷為N,檢索到具有指定關鍵字的記錄,平均需要查找N/2次。8.試說明順序?件的結構及其優點。(詞)排列。可以按關鍵詞長短排序或英?字母順序排序。順序?件的最佳應?場合是對諸記錄進?批量存取時,存取效率最?;只有順序?件才能存儲在磁帶上并有效?作。9.在鏈接式?件中常?哪種鏈接?式?為什么?10.在MS-DOS中有兩個?件A和B,A占?11、12、16和14四個盤塊;B占?13、18和20三個盤塊。試畫出在?件A和B中各盤塊間的鏈接情況及FAT的情況。答:如下圖所?。答:在NTFS?件系統中,以簇作為磁盤空間分配和回收的基本單位。?個?件占若?個簇,?個簇只屬于?個?件。12.假定?個?件系統的組織?式與MS-DOS相似,在FAT中可有64K個指針,磁盤的盤塊??為512B,試問該?件系統能否指引?個512MB的磁盤?解:512MB/512B=1M個盤塊,?每個盤塊都應有?個指針來指?,所以應該有1M個指針,因ft若有64K指針不能指引?個512MB的磁盤。13.為了快速訪問,?易于更新,當數據為以下形式時,應選?何種?件組織?式。14.在UNIX中,如果?個盤塊的??為1KB,每個盤塊號占4個字節,即每塊可放256個地址。請轉換下列?件的字節偏移量為物理地址。⑴9999;⑵18000;⑶420000答:?先將邏輯?件的字節偏移量轉換為邏輯塊號和塊內偏移量,就是將[字節偏移量]/[盤塊??],商為邏輯塊號,余數是塊內偏移量。在FCB中,第0-9個地址為直接地址,第10個為?次間接地址,第11個地址為?次間接地址,第12個地址為三次間接地址。再將?件的邏輯塊號轉換為物理塊號。使?多重索引結構,在索引節點中根據邏輯塊號通過直接索引或間接索引找到對應的物理塊號。(1)9999/1024=9余783,則邏輯塊號為9,直接索引第9個地址得到物理塊號,塊內偏移地址為783。(2)18000/1024=17余592,則邏輯塊號為10<17<10+256,通過?次間接索引在第10個地址可得到物理塊號,塊內偏移地址為592。(3)420000/1024=410余160,則邏輯塊號為10+256<410,通過?次間接索引在第11個地址可得到?次間址,再由ft得到?次間址,再找到物理塊號,其塊內偏移地址160。15.什么是索引?件?為什么要引?多級索引?16.試說明UNIX系統中所采?的混合索引分配?式。答:混合索引分配?式是指將多種索引分配?式結合?成的分配?式。常見的是采?直接地址和?級索引聯合的分配?式,或兩級索引分配?式,甚?三級索引分配?式。在UNIXSystemⅤ和BSDUNIX的索引結點中,都設置了13個地址項,即iaddr(0)~iaddr(12),把所有地址項分成直接地址和間接地址。17.對?錄管理的主要要求是什么?答:實現按名存取、提?檢索?錄的速度、?件共享、允許?件重名。18.采?單級?錄能否滿?對?錄管理的主要要求?為什么?單級只能實現?錄管理的基本功能,不能滿?查找速度、允許重名和?件共享的要求。19.?前?泛應?的?錄結構有哪些?它有什么優點?答:現代操作系統都采?多級?錄結構。基本特點是查詢速度快、層次結構清晰、?件管理和保護易于實現。20.Hash檢索法有何優點??有何局限性?Hash檢索法局限于?通配符?件名。21.在Hash檢索法中,如何解決“沖突”問題?答:在Hash法查找?錄時,如果?錄表中相應?錄項為空,表?系統中?指定?件。如果?件名與指定?件名匹配,表?找到了?標?Hash轉換形成新的索引值,返回第?步重新查找。22.試說明在樹型?錄結構中線性檢索法的檢索過程,并給出相應的流程圖。答:在樹型結構的?錄中,當有兩個或多個?戶共享?個??錄或?件時,將共享?件或字母路連接到兩個或多個?戶?錄中,?便找到該?件。ft時?錄結構不再是樹形結構,?是個有向?循環圖DGA。6-33所?的位?圖來管理空閑盤塊。盤塊的??為1KB,現要為某?件分配量個盤塊,試說明盤塊的具體分配過程。答:分配量個盤塊的過程如下:⑴順序掃描位?圖,從中找到第?個值為0的?進制位,得到?號i=3,列號j=3。⑵將找到的?進制位轉換成對應盤塊號。盤塊號為:b=(3-1)*16+3=35;⑶修改位?圖,令map[3,3]=1,并將該盤塊分配出去。列號j=7,其對應的盤塊號為55,令map[i,j]=1,并將該盤塊分配出去。24.某操作系統磁盤?件空間共500塊,若?字長為32位的位?圖管理磁盤空間,試問:(1)位?圖需要多少字?(2)第i字第j位對應的塊號是多少?(3)給出申請/歸還?塊的?作流程。答:(1)位?圖需要的字數計算:INT(500/32)=16個字。(2)塊號b=(i-1)*32+j(3)申請的過程:順序掃描位?圖、找到空閑塊并分配、修改位?圖map[i,j]=1。歸還的過程:找到回收盤塊在位?圖中的?和列,修改位?圖map[i,j]=0。UNIX系統中采?何種分配?式?答:空閑表法、空閑鏈表法、位?圖法、成組鏈接法。UNIX系統采?的是成組鏈接法26.基于索引節點的?件共享?式有何優點?1,系統可獲悉了由多少個?錄項指向該?件。缺點是擁有者不能刪除??的?件,否則會出錯。27.基于符號鏈的?件共享?式有何優點?答:能夠通過?絡鏈接世界上任何地?的計算機中的?件。答:?級系統容錯技術包括雙份?錄、雙份?件分配表及寫后讀校驗等容錯措施。29.在第?級系統容錯技術中,包括哪些容錯措施?畫圖說明之。答:第?級容錯技術包括磁盤鏡像和磁盤雙?兩種容錯措施。圖?如下:30.何謂事務?如何保證事務的原?性?答:事務是?于訪問和修改各種數據項的?個程序單位。要保證事務的原?性必須要求?個事務在對?批數據執?修改操作時,要么全部完成,?修改后的數據代替原來數據,要么?個也不改,保持原來數據的?致性。31.引?檢查點的?的是什么?引?檢查點后?如何進?恢復處理?答:引?檢查點的?的是使對事務記錄表中事務記錄的清理?作經常化。恢復處理由恢復例程來實現。?先查找事務記錄表,確定在最近檢查點以前開始執?的過程對他們進?相應的處理。32.為何引?共享鎖?如何?互斥鎖或共享鎖來實現事務的順序性?答:引?共享鎖是為了提?運?效率。在給對象設置了互斥鎖和共享鎖的情況下,如果事務Ti要對Q執?讀操作,只需獲得Q的共享鎖。如果對象Q已被互斥鎖鎖住,則Ti必須等待;否則便獲得共享鎖對Q執?讀操作。如果Ti要對Q執?寫操作,則Ti還要獲得Q的互斥鎖。若失敗則等待;成功則獲得互斥鎖并對Q執?寫操作。33.當系統中有重復?件時,如何保證他們的?致性?答:可以采?兩種?法:?是對所有的重復?件進?同樣的修改,?是?新修改的?件替換所有的重復?件。34.如何檢索盤塊號的?致性?檢查時可能出現哪?種情況?答:為了保證盤塊號的?致性,先將計數器表中的所有表項初始化為0,?N個空閑盤塊號計數器組成的第?組計數器對從空閑盤塊表中讀出的盤塊號計數,?N個數據盤塊號計數器組成的第?組計數器對從?件分配表中讀出的已分配給?件使?的盤快號計數。如果兩組計數中的對應數據互補則數據?致,反之則發?錯誤。檢查時可能出現的情況:兩組計數器中盤塊K0,應在空閑盤塊表中增加盤塊號K;空閑盤塊號計數器中盤塊K2,應刪除?個空閑盤塊號K;空閑盤塊號計數器中盤塊號K的計數值為0,?數據盤塊號計數器中盤塊號K的計數值?于1,則錯誤嚴重,存在數據丟失等事件,必須?即報告系統加以處理。第七章答:操作系統包括四種類型的?戶接?:命令接?(分為聯機與脫機命令接?)、程序接?、圖形化?戶接?和?絡?戶接?。命令接?和圖形化?戶接??持?戶直接通過終端來使?計算機系統,程序接?提供給?戶在編制程序時使?,?絡?戶接?是?向?絡應?的接?。答:聯機命令接?由?組聯機命令、終端處理程序和命令解釋程序構成。3.聯機命令通常包含哪些類型?每種類型?包含哪些主要命令?答:聯機命令通常包含如下類型:(1)系統訪問類,主要是注冊命令login、password;(2)磁盤操作類,包括磁盤格式化format、軟盤復制diskcopy、軟盤?較diskcomp及備份backup等命令;(3)?件操作類,包括?件顯?type、?件拷貝copy、?件?較comp、?件重命名rename、?件刪除erase等命令;(4)?錄操作類,包括??錄建?mkdir、?錄顯?dir、??錄刪除rmdir、?錄結構顯?tree、當前?錄改變chdir等命令;(5)其它命令,包括輸?輸出重定向>、<,管道聯接|、過濾命令/,批命令.bat等。4.什么是輸?輸出重定向?試舉例說明。5.何謂管道聯接?試舉例說明。|command2|…|commandn。6.終端設備處理程序的主要作?是什么?它具有哪些功能?答:主要?于實現?機交互,它具有以下功能:(1)接收?戶從終端上鍵?的字符;(2)字符緩沖,?于暫存接收的字符;(3)回送顯?;(4)屏幕編輯;(5)特殊字符處理。7.命令解釋程序的主要作?是什么?答:主要作?是:在屏幕上給出提?符,請?戶輸?命令,讀?并識別命令,轉?相應命令處理程序??地址,把控制權交給該處理程序執?,最后將處理結果或出錯信息送屏幕顯?。8.試說明MS-DOS的命令處理程序COMMAND.COM的?作流程。答:COMMAND.COM的?作流程如下:Autoexec.bat?件,然后把控制權交給暫存部分,給出提?符等待接收?戶鍵?命令;(2)暫存部分讀?鍵盤緩沖區中的命令,判別?件名、擴展名及驅動器名是否正確,若有錯則出錯返回,正確則查找和識別

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論