操作系統(tǒng)簡答題_第1頁
操作系統(tǒng)簡答題_第2頁
操作系統(tǒng)簡答題_第3頁
操作系統(tǒng)簡答題_第4頁
操作系統(tǒng)簡答題_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、簡答題-練習(xí)題1文件的物理結(jié)構(gòu)有哪幾種為什么說串聯(lián)文件結(jié)構(gòu)不適合于隨機(jī)存取2在單處理機(jī)的請求分頁系統(tǒng)中,在CPU上執(zhí)行的進(jìn)程A發(fā)生缺頁中斷時進(jìn)入什么狀態(tài)系統(tǒng)處理完缺頁中斷后到就緒隊(duì)列中再次調(diào)度用戶進(jìn)程時,結(jié)果調(diào)度到的仍然是A進(jìn)程,有可能出現(xiàn)這種情況嗎為什么3目錄文件可以分為哪些種類說明它們各自的特點(diǎn)(包括優(yōu)缺點(diǎn))。4解釋操作的含義及其信號量的物理意義。5在單處理機(jī)的分時系統(tǒng)中,在CPU上執(zhí)行的進(jìn)程A用完時間片后,系統(tǒng)進(jìn)行切換,結(jié)果調(diào)度到的仍然是A進(jìn)程。有可能出現(xiàn)上述情況嗎為什么6常用的文件存儲空間的管理方法有哪幾種試述它們各自的優(yōu)缺點(diǎn)。7分析死鎖與阻塞的根本區(qū)別8進(jìn)程的生存周期包括哪三個基本狀

2、態(tài)作業(yè)調(diào)度與進(jìn)程調(diào)度的主要區(qū)別是什么9分析在生產(chǎn)者和消費(fèi)者問題中,是否可以交換兩個P和V操作的順序,并說明原因。10判斷下列同步問題是否有錯若有錯則指出錯誤的原因,并改正(14分):(1)設(shè)p1和P2兩進(jìn)程共用一緩沖區(qū)Buf,P1向Buf寫信息,P2從Buf中讀出信息,算法描述如圖1所示。(2)設(shè)A1和A2為兩并發(fā)進(jìn)程,它們共享一臨界資源,執(zhí)行算法見圖2. P1進(jìn)程 P2進(jìn)程 A1進(jìn)程 A2進(jìn)程 P(S2) P(S1) P(S) 從Buf讀出信息 CSA1 CSA2 向Buf寫信息 V(S) V(S1) V(S2) S的初值為0 S1,S2的初值為1 圖 1 圖 211.什么是操作系統(tǒng)的主要功

3、能 12.批處理、分時和實(shí)時系統(tǒng)的特征 13.多道程序(multipropramming)和多重處理(multirocessing)有何區(qū)別 14.討論操作系統(tǒng)可以從哪些角度出發(fā),如何把它們統(tǒng)一起來 15.設(shè)計(jì)計(jì)算機(jī)操作系統(tǒng)與哪些硬件器件有關(guān)16.終端處理程序應(yīng)具有那些功能17.系統(tǒng)調(diào)用與一般的過程調(diào)用有什么差別18.命令解釋程序的主要作用是什么 19.系統(tǒng)調(diào)用的執(zhí)行過程分可分為哪幾步系統(tǒng)有什么特點(diǎn)21.什么是進(jìn)程間的互斥什么是進(jìn)程間同步22. 并發(fā)進(jìn)進(jìn)程所受的制約關(guān)系有哪兩種引起制約的原因是什么23.在生產(chǎn)者-消費(fèi)者問題中,我們設(shè)置三個信號燈,一個用于互斥的信號燈mutex,起初值為1;另外

4、兩個信號燈是:full(初值為0,用以指示緩沖區(qū)內(nèi)是否有物品)和empty(初值為n,表示可利用的緩沖區(qū)數(shù)目)。試寫出此時的生產(chǎn)者-消費(fèi)者問題的描述。24.作業(yè)調(diào)度的性能評價標(biāo)準(zhǔn)有哪些這些性能評價標(biāo)準(zhǔn)在任何情況下都能反映調(diào)度策略的優(yōu)劣嗎 25.請說明在生產(chǎn)者消費(fèi)者問題的描述中,P操作顛倒會產(chǎn)生死鎖嗎為什么 個進(jìn)程共享m個同類資源,每一個資源在任意時刻只能供一個進(jìn)程使用,每一進(jìn)程對任意資源都只能使用一有限時間,使用完便立即釋放。并且,每個進(jìn)程對該類資源的最大需求量小于該類資源的數(shù)目。設(shè)所有進(jìn)程對資源的最大需要數(shù)目之和小于p+m。試證:在該系統(tǒng)中不會發(fā)生死鎖。 系統(tǒng)采用什么樣的進(jìn)程調(diào)度算法它的進(jìn)程

5、切換調(diào)度算法swtch的主要任務(wù)是什么28.存儲管理的主要功能是什么 29.段式管理可以實(shí)現(xiàn)虛存嗎如果可以,簡述實(shí)現(xiàn)方法。 30.段頁式管理的主要缺點(diǎn)是什么有什么改進(jìn)辦法 31.段式管理與頁式管理有何區(qū)別32.什么是動態(tài)重定位如何實(shí)現(xiàn)33.試述分區(qū)管理中的最先適應(yīng)算法、最佳適應(yīng)算法以及最壞適應(yīng)算法的原理,并比較其優(yōu)缺點(diǎn)。34.設(shè)備管理的目標(biāo)和功能是什么35.簡述DMA方式的數(shù)據(jù)輸入處理過程。36.什么是陷阱什么是軟中斷試述中斷、陷阱和軟中斷之間的異同。 37.設(shè)備分配的原則是什么38.什么叫I/O控制它可用哪幾種方式實(shí)現(xiàn)各有什么優(yōu)缺點(diǎn)39.常用的文件存儲設(shè)備的管理方法有哪些試述主要優(yōu)缺點(diǎn)。40

6、.什么是文件目錄文件目錄中包含那些信息41.設(shè)索引表長度為13,其中0-9項(xiàng)未直接尋址方式,后3項(xiàng)為間接尋址方式,試描述出給定文件長度n(塊數(shù))后的索引方式尋址算法。 42.為什么要系統(tǒng)打開文件表用戶進(jìn)程是怎樣與文件系統(tǒng)聯(lián)系的創(chuàng)建一個文件是創(chuàng)建系統(tǒng)打開文件表嗎文件系統(tǒng)為什么有磁盤i節(jié)點(diǎn)和內(nèi)存i節(jié)點(diǎn)為什么內(nèi)存i節(jié)點(diǎn)的內(nèi)容和磁盤i節(jié)點(diǎn)的內(nèi)容不一樣44.請說出客戶/服務(wù)器模式優(yōu)缺點(diǎn)。 45.分布式計(jì)算機(jī)系統(tǒng)的目的是什么46.說說你對分布式操作系統(tǒng)概念的理解。47.分布式操作系統(tǒng)的特點(diǎn)是什么48.為什么在分布式系統(tǒng)中,并發(fā)問題更為突出49.簡述DOS操作系統(tǒng)的層次結(jié)構(gòu)。50.什么是抽象數(shù)據(jù)類型的思想5

7、1.什么叫做系統(tǒng)初啟一般情況下,操作系統(tǒng)的初啟過程有以哪幾個步驟 【答案】1文件的物理結(jié)構(gòu)可以分為連續(xù)文件、串聯(lián)文件和索引文件等三種。由于串聯(lián)文件只能按隊(duì)列中的指針順序搜索,所以它的搜索效率低,只適用于存放邏輯上連續(xù)的文件,所以只適用于順序存取文件。否則,若用于隋機(jī)存取,為了讀取某個信息塊則有可能造成磁頭大幅度地來回移動,從而花費(fèi)太多的查找時間。所以說,串聯(lián)文件結(jié)構(gòu)不適于隨機(jī)存取。2在CPU上執(zhí)行的進(jìn)程A發(fā)生缺頁中斷時進(jìn)入等待狀態(tài)。有可能再次調(diào)度到的仍然是A進(jìn)程。當(dāng)系統(tǒng)中只有一個處于執(zhí)行狀態(tài)的作業(yè),且A進(jìn)程進(jìn)入等待狀態(tài)時,若就緒隊(duì)列中是空的,則當(dāng)缺頁中斷過程完成,A進(jìn)程被喚醒而進(jìn)入就緒隊(duì)列時,

8、再次調(diào)度到的仍然是A進(jìn)程。3文件目錄可以分為一級文件目錄、二級文件目錄和多級文件目錄。其中:一級文件目錄:是含有若干個表目的線性表,每個文件占其中一個表目,其優(yōu)點(diǎn)是簡單,查找快;缺點(diǎn)是文件目錄中不允許有重名,所以只適用于單用戶的OS。二級文件目錄:分為主文件目錄和用戶文件目錄,整個系統(tǒng)只有一個主目錄,每個用戶目錄均在其中占有一個登記項(xiàng),該項(xiàng)中含有用戶目錄名和位置、大小說明;其優(yōu)點(diǎn)是能較好的解決重名問題;缺點(diǎn)是比一級文件目錄復(fù)雜。多級文件目錄:是在二級文件目錄基礎(chǔ)上的擴(kuò)充,它更好的解決了重名問題,它適合于任何OS,其缺點(diǎn)是比二級文件目錄更復(fù)雜。4信號量又稱信號燈,其值只能由P、V操作加于改變。當(dāng)

9、信號量S0時,表示該類可用資源的個數(shù),作一次P(S)操作,S-1S,表示進(jìn)程申請分配一個該類資源,于是可用資源數(shù)減少一個;當(dāng)S=0時,表示無可用資源,這時作一次P(S)操作,S-1S0,表示申請分配一個該類資源的進(jìn)程因得不到可用資源而被阻塞,進(jìn)入等待該類資源的等待隊(duì)列,這時|S|表示等待該類資源的等待隊(duì)列中進(jìn)程的個數(shù)。作一次V(S)操作,表示其進(jìn)程釋放一個它所占有的資源,所以作S+1S,這時若等待該類資源的等待隊(duì)列中有進(jìn)程,則立即分配給它(并立即被喚醒進(jìn)入就緒隊(duì)列),于是等待該類資源的等待隊(duì)列中的進(jìn)程數(shù)減少一個。5有可能。一種情況是當(dāng)進(jìn)程A用完時間片后退出CPU,被切換到就緒狀態(tài)時,就緒隊(duì)列為

10、空,這樣進(jìn)程A就是就緒隊(duì)列中的唯一進(jìn)程,所以調(diào)度到的仍然是A進(jìn)程。另一種情況是如果系統(tǒng)采用的是優(yōu)先級調(diào)度算法,當(dāng)進(jìn)程A用完時間片后退出CPU被切換到就緒狀態(tài)時,若進(jìn)程A的優(yōu)先級高于就緒隊(duì)列中的所有其他進(jìn)程,所以調(diào)度到的仍然是A進(jìn)程。6文件存儲空間的管理實(shí)質(zhì)上是空閑塊的組織和管理問題。常用的文件存儲設(shè)備的管理方法有三種:空閑文件目錄、空閑塊鏈和位示圖??臻e文件目錄的管理方法就是把文件存儲設(shè)備上的空閑塊的塊號統(tǒng)一放在一個稱為空閑文件目錄的物理塊中,其中空閑文件目錄的每一個表項(xiàng)對應(yīng)一個由多個空閑塊組成的空閑區(qū)。該方法的優(yōu)點(diǎn)是實(shí)現(xiàn)簡單,適用于連續(xù)文件結(jié)構(gòu)的文件存儲區(qū)的分配和回收;缺點(diǎn)是由于回收時不進(jìn)行

11、合并,所以使用該方法容易產(chǎn)生大量的小塊空閑區(qū)??臻e塊鏈管理方法是把文件存儲設(shè)備上的空閑塊鏈接在一起,從鏈頭分配空閑塊,把回收的空閑塊插入到鏈尾。該方法的優(yōu)點(diǎn)是不占用額外的空間,其缺點(diǎn)是實(shí)現(xiàn)比較復(fù)雜。7死鎖是兩個或兩個以上的進(jìn)程永無休止的相互等待對方所占有的系統(tǒng)資源,每個進(jìn)程都因?yàn)榈貌坏綄Ψ綄Ψ剿加械南到y(tǒng)資源,從而自己又不能釋放對方所需要的資源。阻塞是因申請某個系統(tǒng)資源而暫時得不到時的一種等待狀態(tài),一旦某個進(jìn)程釋放了它所需要的資源,則立即分配給該等待的進(jìn)程,該進(jìn)程立即被喚醒進(jìn)入就緒隊(duì)列。它是發(fā)生在單個進(jìn)程中的一種暫時現(xiàn)象。8作業(yè)的生存周期可以分為:提交、后備、執(zhí)行和完成等四個基本狀態(tài)。進(jìn)程的生

12、存周期可以分為:就緒、運(yùn)行和等待等三個基本狀態(tài)。作業(yè)調(diào)度是宏觀調(diào)度,其主要任務(wù)是從輔存中選擇一個處于后備狀態(tài)的作業(yè)調(diào)入內(nèi)存并創(chuàng)建進(jìn)程,使之處于執(zhí)行狀態(tài);而進(jìn)程調(diào)度則是從就緒隊(duì)列中選擇一個進(jìn)程調(diào)入CPU去執(zhí)行,即真正獲得了CPU的使用權(quán),所以它是微觀調(diào)度。9可以交換V操作的順序,但不能交換P操作的順序,如果交換P操作的順序有可能發(fā)生死鎖。例如在生產(chǎn)者過程中,若交換了P操作的順序,則當(dāng)有界緩沖區(qū)已放滿產(chǎn)品,無空位置時,因?yàn)橄葘眯盘柫孔鱌操作后,進(jìn)程已經(jīng)進(jìn)入了臨界區(qū),但又沒有可生產(chǎn)的緩沖區(qū),生產(chǎn)者進(jìn)程處于等待消費(fèi)者進(jìn)程釋放緩沖區(qū);而消費(fèi)者進(jìn)程又因?yàn)樯a(chǎn)者進(jìn)程已經(jīng)占用了公用信號量而無法進(jìn)入臨界區(qū),

13、又處于等待生產(chǎn)者進(jìn)程釋放臨界區(qū)的狀態(tài)。于是生產(chǎn)者進(jìn)程和消費(fèi)者進(jìn)程處于相互等待狀態(tài),誰也無法改變這種狀態(tài),所以系統(tǒng)出現(xiàn)了死鎖。10(1)設(shè)p1和P2兩進(jìn)程共用一緩沖區(qū)Buf,P1向Buf寫信息,P2從Buf中讀出信息,算法描述如圖1所示。(2)設(shè)A1和A2為兩并發(fā)進(jìn)程,它們共享一臨界資源,執(zhí)行算法見圖2. P1進(jìn)程 P2進(jìn)程 A1進(jìn)程 A2進(jìn)程 P(S2) P(S1) P(S) 從Buf讀出信息 CSA1 CSA2 向Buf寫信息 V(S) V(S1) V(S2) S的初值為0 S1,S2的初值為1 圖 1 圖 2圖1有錯,因?yàn)?1)是同步問題,所以它應(yīng)給A和B兩個進(jìn)程分別設(shè)置兩個私有信號燈:S

14、A表示緩沖區(qū)是否空閑,若空閑則向緩沖區(qū)中寫信息,否則不寫;SB表示緩沖區(qū)中有無可取信息,若有可取的信息則讀,否則不讀。所以SA的初始值為1(表示緩沖區(qū)空);SB的初始值為0(表示開始無信息讀)。修改如圖(3)。圖2有錯,因?yàn)?2)是互斥問題,所以只需設(shè)置一個信號燈(公用):S的初值為1,修改如圖(4)。A進(jìn)程 B進(jìn)程 A進(jìn)程 B進(jìn)程 P(SA) P(SB) P(S) P(S) 向Q寫信息 從Q中讀出信息 CSA CSB V(SB) V(SA) V(S) V(S) SA的初值為1,SB的初值為0 S的初值為1 圖 3 圖 411 操作系統(tǒng)的職能是有效的管理好計(jì)算機(jī)系統(tǒng)所擁有的硬件資源和軟件資源,

15、合理的組織計(jì)算機(jī)系統(tǒng)的工作流程,為用戶使用計(jì)算機(jī)系統(tǒng)提供一個良好的工作環(huán)境和友好的接口。計(jì)算機(jī)系統(tǒng)的資源包括硬件資源和軟件資源,通??蓪⑵鋭澐譃樗拇箢悾褐醒胩幚頇C(jī)(CPU)、存儲器、輸入/輸出設(shè)備和文件系統(tǒng)。對這四大資源的管理是計(jì)算機(jī)操作系統(tǒng)的主要功能之一。 12 批處理系統(tǒng)的主要特征是:用戶脫機(jī)使用、成批處理、多道程序運(yùn)行。 分時系統(tǒng)的主要特征是:交互性、多用戶同時性、獨(dú)立性。 實(shí)時系統(tǒng)的主要特征是:對實(shí)時信息分析處理速度要比進(jìn)入系統(tǒng)快、要求安全可靠、資源利用率低。 13多道程序是作業(yè)之間自動調(diào)度執(zhí)行、共享系統(tǒng)資源,并不是真正的同時執(zhí)行多個作業(yè);而多重處理系統(tǒng)配置多個CPU,能真正同時執(zhí)行多

16、道程序。要有效使用多重處理,必須采用多道程序設(shè)計(jì)技術(shù),而多道程序設(shè)計(jì)原則上不一定要求多重處理系統(tǒng)的支持。 14討論操作系統(tǒng)可以從以下角度出發(fā):1)操作系統(tǒng)是計(jì)算機(jī)資源的管理者;2)操作系統(tǒng)為用戶提供使用計(jì)算機(jī)的界面;3)用進(jìn)程管理觀點(diǎn)研究操作系統(tǒng),即圍繞進(jìn)程運(yùn)行過程來討論操作系統(tǒng)。上述這些觀點(diǎn)彼此并不矛盾,只不過代表了同一事物(操作系統(tǒng))站在不同的角度來看待。每一種觀點(diǎn)都有助于理解、分析和設(shè)計(jì)操作系統(tǒng)。15 計(jì)算機(jī)操作系統(tǒng)的重要功能之一是對硬件資源的管理。因此設(shè)計(jì)計(jì)算機(jī)操作系統(tǒng)時應(yīng)考慮下述計(jì)算機(jī)硬件資源: 1)CPU與指令的長度及執(zhí)行方式;2)內(nèi)存、緩存和高速緩存等存儲裝置;3)各類寄存器,包

17、括各種通用寄存器、控制寄存器和狀態(tài)寄存器等;4)中斷機(jī)構(gòu);5)外部設(shè)備與I/O控制裝置;6)內(nèi)部總線與外部總線;7)對硬件進(jìn)行操作的指令集。16 解:終端處理程序,主要用于實(shí)現(xiàn)人機(jī)交互,為此它應(yīng)具有以下功能: (1)接收從終端鍵入的字符,并將它傳送給用戶程序; (2)暫存從終端鍵入的字符; (3)回送顯示(回顯),即每當(dāng)用戶從鍵盤打入一個字符后,終端處理程序便將該字符送屏幕顯示; (4)屏幕編輯 ; (5)對若干特殊字符進(jìn)行及時處理中斷字符。17 解:主要有以下差別:1)運(yùn)行在不同的系統(tǒng)狀態(tài)一般的過程調(diào)用,其調(diào)用和被調(diào)用的過程或者都使用子程序,或者都是系統(tǒng)程序,故都運(yùn)行在同一系統(tǒng)狀態(tài)下:系統(tǒng)態(tài)

18、或用戶態(tài)。系統(tǒng)調(diào)用的調(diào)用過程是用戶程序,它運(yùn)行在用戶態(tài);其被調(diào)用過程是系統(tǒng)過程,運(yùn)行在系統(tǒng)態(tài)下。2)通過軟中斷進(jìn)入一般的過程調(diào)用可直接由調(diào)用過程轉(zhuǎn)向被調(diào)用過程;而執(zhí)行系統(tǒng)調(diào)用時,由于調(diào)用和被調(diào)用過程是處于不同的系統(tǒng)狀態(tài),因而不允許由調(diào)用過程直接轉(zhuǎn)向被調(diào)用過程,而通常都是通過軟中斷機(jī)制,先進(jìn)入OS核心,經(jīng)核心分析后,才能轉(zhuǎn)向相應(yīng)的命令處理程序。3)返回問題對于一般的過程調(diào)用,在被調(diào)用過程執(zhí)行完成后,將返回到調(diào)用過程繼續(xù)執(zhí)行。然而,在采用了搶占式剝奪調(diào)度方式的系統(tǒng)中,在被調(diào)用過程執(zhí)行完后,要對系統(tǒng)中所有要求運(yùn)行的進(jìn)程進(jìn)行優(yōu)先權(quán)的分析。當(dāng)調(diào)用進(jìn)程仍具有最高優(yōu)先權(quán)時,才返回到調(diào)用進(jìn)程繼續(xù)執(zhí)行;否則,將

19、引起重新調(diào)度,以便讓優(yōu)先權(quán)最高的進(jìn)程優(yōu)先執(zhí)行。此時,將把調(diào)用進(jìn)程放入就緒隊(duì)列。18 解:命令解釋程序的主要作用是,在屏幕上產(chǎn)生提示符,請用戶輸入命令,然后讀入命令、識別命令、轉(zhuǎn)到相應(yīng)的命令處理程序入口地址,再把控制權(quán)交給該處理程序去執(zhí)行,并將處理結(jié)果送屏幕上顯示,或顯示某些出錯信息。19 系統(tǒng)調(diào)用的執(zhí)行過程分成以下幾步:(1)設(shè)置系統(tǒng)調(diào)用號和參數(shù);(2)系統(tǒng)調(diào)用命令的一般性處理;(3)系統(tǒng)調(diào)用命令處理程序做具體處理。20 UNIX的主要特點(diǎn)是:(1)精巧的核心與豐富的實(shí)用層UNIX系統(tǒng)在結(jié)構(gòu)上分成內(nèi)核層和實(shí)用層。核心層小巧,而實(shí)用層豐富。核心層包括進(jìn)程管理、存儲管理、文件系統(tǒng)幾個部分。UNIX

20、核心層設(shè)計(jì)得非常精干簡潔,其主要算法經(jīng)過反復(fù)推敲,對其中包含的數(shù)據(jù)結(jié)構(gòu)和程序進(jìn)行了精心設(shè)計(jì)。因此,其核心層只需占用很小的存貯空間,并能常駐內(nèi)存,以保證系統(tǒng)以較高的效率工作。(2)使用靈活的命令程序設(shè)計(jì)語言SHELL (3)UNIX系統(tǒng)采用樹型目錄結(jié)構(gòu)來組織各種文件及文件的目錄。這樣的組織方式有利于輔存空間分配及快速查找文件,也可以為不同用戶的文件提供文件共享和存取控制的能力,且保證用戶之間安全有效的合作。(4)UNIX將外部設(shè)備與文件一樣看待,外部設(shè)備如同磁盤上的普通文件一樣被訪問、共享和保護(hù)。用戶不必區(qū)分文件與設(shè)備,也不需要知道設(shè)備的物理特性就能訪問它。這樣在用戶面前,文件的概念簡單了,使用

21、也方便了。(5)UNIX系統(tǒng)的所有實(shí)用程序和核心的90%代碼是用C語言寫成的,這使得UNIX成為一個可移植的操作系統(tǒng),從而又帶來了應(yīng)用程序的可移植性。21 進(jìn)程見得互斥是指:一組并發(fā)進(jìn)程中的一個或多個程序端,因共享某一公有資源而導(dǎo)致它們必須以一個不許交叉執(zhí)行的單位執(zhí)行,即不允許兩個以上的共享該資源的并發(fā)進(jìn)程同時進(jìn)入臨界區(qū)。 進(jìn)程間的同步是指:異步環(huán)境下的一組并發(fā)進(jìn)程因直接制約相互發(fā)送消息而進(jìn)行互相合作、互相等待,是各進(jìn)程按一定的速度執(zhí)行的過程。22 并發(fā)進(jìn)程所受的制約有兩種:直接制約和間接制約。直接制約是由并發(fā)進(jìn)程互相共享對方的私有資源所引起的。間接制約是由競爭公有資源而引起的。23 main

22、( ) int full=0; int empty=n; int mutex=1; cobegin producer( ); consumer( ); coend producer( ) while(生產(chǎn)未完成) :生產(chǎn)一個產(chǎn)品; P(empty); P(mutex); 送一個產(chǎn)品到有界緩沖區(qū); V(mutex); V(full);consumer( )while(還要繼續(xù)消費(fèi)) P(full);P(mutex); 從有界緩沖區(qū)中取產(chǎn)品; V(mutex); V(empty); :消費(fèi)一個產(chǎn)品; 24 對于批處理系統(tǒng),由于主要用于計(jì)算,因而對于作業(yè)的周轉(zhuǎn)時間要求較高。從而作業(yè)的平均周轉(zhuǎn)時間或平

23、均帶權(quán)周轉(zhuǎn)時間被用來衡量調(diào)度程序的優(yōu)劣。但對于分時系統(tǒng)來說,平均響應(yīng)時間又被用來衡量調(diào)度策略的優(yōu)劣。 對于分時系統(tǒng),除了要保證系統(tǒng)吞吐量大、資源利用率高之外,還應(yīng)保證用戶能夠容忍的響應(yīng)時間。因此,在分時系統(tǒng)中,僅僅用周轉(zhuǎn)時間或帶權(quán)周轉(zhuǎn)時間來衡量調(diào)度性能是不夠的。 對于實(shí)時系統(tǒng)來說,衡量調(diào)度算法優(yōu)劣的主要標(biāo)志則是滿足用戶要求的時限時間。 25 如果將生產(chǎn)者執(zhí)行的兩個P操作順序顛倒,會產(chǎn)生死鎖。因?yàn)?,在這種情況下,當(dāng)緩沖區(qū)都為滿時,生產(chǎn)者仍可順利執(zhí)行P(mutex)操作,于是它獲得了對緩沖區(qū)的存取控制權(quán)。然后,當(dāng)它執(zhí)行P(mutex)操作時,由于沒有空緩沖區(qū)它被掛起。能夠?qū)⑦@個生產(chǎn)者進(jìn)程釋放的唯一

24、途徑是消費(fèi)者從緩沖區(qū)取出了一個產(chǎn)品,并執(zhí)行V(mutex)操作。但在此時,由于緩沖區(qū)已被掛起的生產(chǎn)者所占有,所以沒有一個消費(fèi)者能夠取得對緩沖區(qū)的存取控制權(quán)。因此,出現(xiàn)了生產(chǎn)者和消費(fèi)者的互相死等的局面。26 證明: 設(shè)每個進(jìn)程最多要申請n個資源。 則:當(dāng)每個進(jìn)程現(xiàn)已都分配了n-1個資源因?yàn)轭}設(shè)給出 pnp+m 所以可得出 p(n-1)m 由此可得出當(dāng)每個進(jìn)程現(xiàn)已都分配了n-1個資源后,還有至少一個資源可供分配,所以在該系統(tǒng)中不會發(fā)生死鎖。 證畢 27 UNIX系統(tǒng)采用優(yōu)先數(shù)算法即多級反饋輪轉(zhuǎn)法。 swtch的主要任務(wù)是: 1)把調(diào)用swtch的當(dāng)前進(jìn)程的現(xiàn)場信息保留在其系統(tǒng)棧中。2)依調(diào)度原則在

25、就緒隊(duì)列中選擇一個進(jìn)程 3)恢復(fù)選中進(jìn)程的運(yùn)行現(xiàn)場 28 存儲管理的主要功能包括以下幾點(diǎn): (1)在硬件的支持下完成統(tǒng)一管理內(nèi)存和外存之間數(shù)據(jù)和程序段自動交換的虛擬存儲器功能。(2)將多個虛存的一維線性空間或多維線性空間變換到內(nèi)存的唯一的一維物理線性地址空間。(3)控制內(nèi)外存之間的數(shù)據(jù)傳輸。(4)實(shí)現(xiàn)內(nèi)存的分配和回收。(5)實(shí)現(xiàn)內(nèi)存信息的共享與保護(hù)。29 段式管理可以實(shí)現(xiàn)虛存。 段式管理把程序按照內(nèi)容或過程(函數(shù))關(guān)系分成段,每段擁有自己的名字。一個用戶作業(yè)或進(jìn)程包含的段對應(yīng)與一個二維線性虛擬空間(段號s與段內(nèi)相對地址w),也就是一個二維虛擬存儲器。段式管理以段為單位分配內(nèi)存,然后通過地址映射

26、機(jī)構(gòu)把段式虛擬地址轉(zhuǎn)換成實(shí)際的內(nèi)存物理地址。指把那些經(jīng)常訪問的段駐留在內(nèi)存,而把那些在將來一段時間內(nèi)不被訪問的段放入外存,待需要時產(chǎn)生缺段中斷,自動調(diào)入。30 段頁式管理的主要缺點(diǎn)是對內(nèi)存中指令數(shù)據(jù)進(jìn)行存取時,至少需要對內(nèi)存進(jìn)行三次以上的訪問。第一次是由段表地址寄存器取段表始址后訪問段表,由此取出對應(yīng)段的頁表在內(nèi)存中的地址。第二次則是訪問頁表得到所要訪問的指令或數(shù)據(jù)的物理地址。只有在訪問了段表之后,第三次才能訪問真正需要訪問的物理單元。顯然,這將大大降低CPU執(zhí)行指令的速度。改進(jìn)辦法是設(shè)置快速聯(lián)想寄存器。在快速聯(lián)想寄存器中,存放當(dāng)前最常用的段號s,頁號p和對應(yīng)的內(nèi)存頁面地址與其它控制項(xiàng)。當(dāng)需要

27、訪問內(nèi)存空間某一單元時,可在通過段表、頁表進(jìn)行內(nèi)存地址查找的同時,根據(jù)快速聯(lián)想寄存器查找其段號和頁號。如果所要訪問的段或頁的地址在快速寄存器中,則系統(tǒng)不再訪問內(nèi)存中的段表、頁表而直接把快速聯(lián)想寄存器中的值與頁內(nèi)相對地址d拼接起來得到內(nèi)存地址。31 段式管理與頁式管理的主要區(qū)別有:(1)頁式管理中源程序進(jìn)行編譯鏈接時是將主程序、子程序、數(shù)據(jù)區(qū)等按照線性空間的一維地址順序排列起來。段式管理則是將程序按照內(nèi)容或過程(函數(shù))關(guān)系分成段,每段擁有自己的名字。一個用戶作業(yè)或進(jìn)程所包含的段對應(yīng)于一個二維線性虛擬空間,也就是一個二維虛擬存儲器。(2)同動態(tài)頁式管理一樣,段式管理也提供了內(nèi)外存統(tǒng)一管理的虛擬實(shí)現(xiàn)

28、。與頁式管理不同的是:段是虛存每次交換的是一段有意義的信息,而不是向頁式虛擬管理那樣只交換固定大小的頁,從而需要多次的缺頁中斷才能把所需信息完整的調(diào)入內(nèi)存。(3)在段式管理中,段長可根據(jù)需要動態(tài)增長。這對那些需要不斷增加或改變新數(shù)據(jù)或子程序的段來說,將是非常有好處的。(4)段式管理便于對具有完整邏輯功能的信息段進(jìn)行共享。(5)段式管理便于進(jìn)行動態(tài)鏈接,而頁式管理進(jìn)行動態(tài)鏈接的過程非常復(fù)雜。 32 動態(tài)重定位是指在程序執(zhí)行期間,隨著每條指令和數(shù)據(jù)的訪問,自動的、連續(xù)的進(jìn)行映射。 具體實(shí)現(xiàn)過程為:當(dāng)某個進(jìn)程取得CPU控制權(quán)時,OS應(yīng)負(fù)責(zé)把該作業(yè)程序在主存中的起始地址送入重定位寄存器中之后,每次訪問

29、存儲器時,重定位寄存區(qū)的內(nèi)容將被自動家道邏輯地址中區(qū),經(jīng)這樣變換后,執(zhí)行結(jié)果是正確的。33 最先適應(yīng)算法是將輸入的作業(yè)放置到主存里第一個足夠裝入它的可利用的空白區(qū)中。最先適應(yīng)算法是將輸入的作業(yè)放置到主存里第一個足夠裝入它的可利用的空白區(qū)中。最佳適應(yīng)算法是將輸入的作業(yè)放入主存中它所需大小最接近的空白區(qū)中,這樣剩下的未用空間最小。最佳適應(yīng)算法的優(yōu)點(diǎn)是: (1)如果存儲空間中具有正好是所要求大小的空白區(qū),則它必然被使用。 (2)如果不存在這樣的空白區(qū),也只是對比要求稍大的空白區(qū)進(jìn)行劃分,而絕對不會去劃分一個更大的空白區(qū)。此后,遇到有更大的存儲要求是,就比較容易得到滿足。最佳適應(yīng)算法的一個主要缺點(diǎn)是空

30、白區(qū)一般不可能正好和要求的大小相等,因而要將其分割成兩部分,這往往使剩下的空白區(qū)非常小,以至小到幾乎無法使用。最壞適應(yīng)算法就是把一個作業(yè)程序放入主存中最不適合它的空白區(qū),即最大的空白區(qū)內(nèi)。其主要優(yōu)點(diǎn)是在大空白區(qū)中放入程序后,剩下的空白區(qū)常常以很大,于是也能裝下一個較大的新程序。34.解:設(shè)備管理的目標(biāo)是:選擇和分配輸入/輸出設(shè)備以便進(jìn)行數(shù)據(jù)傳輸操作;控制輸入/輸出設(shè)備和CPU或(內(nèi)存)之間交換數(shù)據(jù);為用戶提供一個友好的透明的接口;提高設(shè)備和設(shè)備之間、CPU和設(shè)備之間,以及進(jìn)程和進(jìn)程之間的并行操作讀,以使操作系統(tǒng)獲得最佳效率。 設(shè)備管理程序一般要提供下述功能:提供和進(jìn)程管理系統(tǒng)的接口;進(jìn)行設(shè)備分

31、配;實(shí)現(xiàn)設(shè)備和設(shè)備之間、設(shè)備和CPU之間的并行操作;進(jìn)行緩沖區(qū)管理。35.解:DMA方式的數(shù)據(jù)輸入處理過程如下:(1) 當(dāng)進(jìn)程要求設(shè)備輸入數(shù)據(jù)時,CPU把準(zhǔn)備存放輸入數(shù)據(jù)的內(nèi)存始址以及要傳送的字節(jié)數(shù)分別送入DMA控制器中的內(nèi)存地址寄存器和傳送字節(jié)計(jì)數(shù)器;另外,還把控制狀態(tài)寄存器中的中斷允許位和啟動位置1;從而啟動設(shè)備看市進(jìn)行數(shù)據(jù)輸入。(2) 發(fā)出數(shù)據(jù)要求的進(jìn)程進(jìn)入等待狀態(tài),進(jìn)程調(diào)度程序調(diào)度其它進(jìn)程占據(jù)CPU。(3) 輸入設(shè)備不斷地挪用CPU工作周期,將數(shù)據(jù)緩沖寄存器中的數(shù)據(jù)源源不斷地寫入內(nèi)存,直到所要求的字節(jié)全部傳送完畢。(4) DMA控制器在傳送字節(jié)數(shù)完成時通過中斷請求線發(fā)出中斷信號,CPU

32、在接收到中斷信號后轉(zhuǎn)中斷處理程序進(jìn)行善后處理。(5) 中斷處理結(jié)束時,CPU返回被中斷進(jìn)程處執(zhí)行或被調(diào)度到新的進(jìn)程上下文環(huán)境中執(zhí)行。36.解:陷阱支出立即和內(nèi)存內(nèi)部產(chǎn)生的中斷,它包括程序運(yùn)算引起的各種錯誤,如地址非法、校驗(yàn)錯、頁面失效。存取訪問控制錯、從用戶態(tài)到核心態(tài)的切換等都是陷阱的例子。軟中斷是通信進(jìn)程之間用來模擬硬中斷的一種信號通信方式。除了在優(yōu)先級的設(shè)置方面有區(qū)別之外,中斷和陷入還有如下主要區(qū)別:(1) 陷入通常由處理機(jī)正在執(zhí)行的現(xiàn)行指令引起,而中斷則是由與現(xiàn)行指令無關(guān)的中斷源引起的。(2) 陷入處理程序提供的服務(wù)為當(dāng)前進(jìn)程所用,而中斷處理程序提供的服務(wù)則不是為當(dāng)前進(jìn)程的。(3) CP

33、U在執(zhí)行完一條指令之后,下一條指令開始之前響應(yīng)中斷,而在一條指令執(zhí)行中也可以響應(yīng)陷入。例如執(zhí)行指令非法時,盡管被執(zhí)行的非法指令不能執(zhí)行結(jié)束,但CPU仍可對其進(jìn)行處理。37.解:設(shè)備分配的原則是根據(jù)設(shè)備特性、用戶要求和系統(tǒng)配置情況決定的。設(shè)備分配的總原則是既要充分發(fā)揮設(shè)備的使用效率,盡可能的讓設(shè)備忙,但又要避免由于不合理的分配方法造成進(jìn)程死瑣;另外還要做到把用戶程序和具體物理設(shè)備隔離開來,即用戶程序面隊(duì)的是邏輯設(shè)備,而分配程序?qū)⒃谙到y(tǒng)把邏輯設(shè)備轉(zhuǎn)換成物理設(shè)備之后,再根據(jù)要求的物理設(shè)備號進(jìn)行分配。38.解:I/O控制是從用戶進(jìn)程的輸入/輸出請求開始,給用戶進(jìn)程分配設(shè)備和啟動有關(guān)設(shè)備進(jìn)行I/O操作,

34、以及在I/O操作完成之后響應(yīng)中斷,進(jìn)行善后處理為止的整個系統(tǒng)控制過程 I/O控制過程在系統(tǒng)中可以按三種方式實(shí)現(xiàn):作為請求I/O操作的進(jìn)程的一部分實(shí)現(xiàn);作為當(dāng)前進(jìn)程的一部分實(shí)現(xiàn);I/O控制由專門的系統(tǒng)進(jìn)程I/O進(jìn)程完成。 第一種方式請求對應(yīng)I/O操作的進(jìn)程能很快占據(jù)處理機(jī),但要求系統(tǒng)和I/O操作的進(jìn)程應(yīng)具有良好的實(shí)時性。第二種方式不要求系統(tǒng)具有很高的實(shí)時性,但I(xiàn)/O控制過程要當(dāng)前進(jìn)程負(fù)責(zé)。第三種方式增加了一個額外的進(jìn)程開銷,但用戶不用關(guān)心I/O控制過程。39.解:文件存儲設(shè)備的管理實(shí)質(zhì)上是一個空閑塊的組織和管理問題。有三種不同的空閑塊管理方法。即空閑文件目錄,空閑塊鏈和位示圖。 空閑文件目錄管理

35、方法就是把文件存儲設(shè)備中的空閑塊的塊號統(tǒng)一放在一個稱為空閑文件目錄的物理塊中,其中空閑文件目錄的每一個表項(xiàng)對應(yīng)于一個由多個空閑塊構(gòu)成的空閑區(qū)。該方法實(shí)現(xiàn)簡單,適于連續(xù)文件結(jié)構(gòu)的文件存儲區(qū)的分配與回收。但是由于回收時不進(jìn)行合并,所以使用該方法容易產(chǎn)生大量的小空閑區(qū)。 空閑塊鏈法把文件存儲設(shè)備上的所有空閑塊鏈接在一起,從鏈頭分配空閑塊,把回收空閑塊插入到鏈尾。該方法不占用額外的空間,但實(shí)現(xiàn)復(fù)雜。 位示圖法是從內(nèi)存中劃出若干字節(jié),每個比特位對應(yīng)于一個物理塊的使用情況。如果該位為0則表示對應(yīng)的是空閑塊,為1則表示對應(yīng)物理塊已分配出去。位示圖在查找空閑塊時無須啟動,但要占用空間。40.解:一個文件的文件

36、名和對該文件實(shí)施控制管理的說明信息稱為該文件的說明信息,又稱為該文件的目錄。文件目錄中包含文件名、與文件名相對應(yīng)的文件內(nèi)部標(biāo)識以及文件信息在文件存儲設(shè)備上第一個物理塊的地址等信息。另外還可能包含關(guān)于文件邏輯結(jié)構(gòu)、物理結(jié)構(gòu)、存取控制和管理等信息。41.解:設(shè)每一個物理塊的大小為k字節(jié),每個物理塊可以放m個物理塊。輸入為文件內(nèi)的偏移地址o_addr,輸出為物理地址p_addr,-1表示尋址失敗。描述算法如下:addr find(o_addr)if(o_addrn*k-1) return(-1) elseif (o_addr10*k) 直接尋址,獲得p_addrelse 間接尋址,獲得p_addrr

37、eturn(p_addr)42.解:用戶打開表記錄一個進(jìn)程可以用來同時打開的文件數(shù),UNIX System V最多可達(dá)到20。用戶打開表的描述符返回給用戶進(jìn)程后稱為文件描述符。與此相對應(yīng),用戶對文件進(jìn)行操作時,在系統(tǒng)內(nèi)部需要有相應(yīng)數(shù)據(jù)結(jié)構(gòu)來記錄和控制打開文件的用戶進(jìn)程,以及記錄和控制那些共享統(tǒng)一文件的用戶進(jìn)程。這個數(shù)據(jù)結(jié)構(gòu)就是系統(tǒng)打開表。用戶進(jìn)程通過系統(tǒng)調(diào)用來完成與文件系統(tǒng)聯(lián)系。創(chuàng)建文件時,需要在系統(tǒng)打開表的相應(yīng)表項(xiàng)中生成相應(yīng)數(shù)據(jù),但不需要創(chuàng)建系統(tǒng)打開文件。 系統(tǒng)中,磁盤i節(jié)點(diǎn)以靜態(tài)形式存放文件說明信息。引入內(nèi)存i節(jié)點(diǎn)是為了減少設(shè)備的啟動次數(shù)以及提高操作速度,把磁盤i節(jié)點(diǎn)復(fù)制到內(nèi)存特定區(qū)域。又于進(jìn)程需用i節(jié)點(diǎn)中的邏輯結(jié)構(gòu)和物理結(jié)構(gòu)信息完成對文件信息的保護(hù)和共享,故i節(jié)點(diǎn)中多了當(dāng)前文件狀態(tài)信息。44.解: 優(yōu)點(diǎn): a.數(shù)據(jù)分布存儲,擺脫了把一切數(shù)據(jù)都存儲在主機(jī)中而產(chǎn)生的不可靠和瓶頸現(xiàn)象 b.數(shù)據(jù)的分布處理,提高了對用戶命令的響應(yīng)速度,減少了客戶和服務(wù)器之間的信息流量 c.由于客戶機(jī)有一定的處理能力,因而能作出適用

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論