操作系統(tǒng)期末復(fù)習(xí)個人總結(jié) - 副本_第1頁
操作系統(tǒng)期末復(fù)習(xí)個人總結(jié) - 副本_第2頁
操作系統(tǒng)期末復(fù)習(xí)個人總結(jié) - 副本_第3頁
操作系統(tǒng)期末復(fù)習(xí)個人總結(jié) - 副本_第4頁
操作系統(tǒng)期末復(fù)習(xí)個人總結(jié) - 副本_第5頁
已閱讀5頁,還剩14頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、刪除:不要問為什么傳這么多廢話的整理上去,因為是為沒時間復(fù)習(xí)的人準備的。確實是為沒時間復(fù)習(xí)的人準備的。篇幅大,內(nèi)容又少- -有時間復(fù)習(xí)的人根本就沒必要浪費時間在這上面- -也不要問為什么傳了那么多版本上去,是因為修改的人不同,時間不同。概括的內(nèi)容都是最基礎(chǔ)的,所以說全拿最多也就50分而已。超過50分實力的人,就別看了- -OK? 不是很喜歡某些人的抱怨。這是個人的東西,不是必須的!最后,這只適合沒時間的人和一個學(xué)期沒上課的人。(包括我自己- -)沒上課的還是找個人開速成吧- -第一章:操作系統(tǒng)引論操作系統(tǒng)是控制和管理計算機軟硬件資源,以盡量合理有效的方法組織多個用戶共享多種資源的程序集合。操作

2、系統(tǒng)的特征:并發(fā),共享,虛擬,異步性。操作系統(tǒng)提供給編程人員的唯一接口是系統(tǒng)調(diào)用。(程序接口)現(xiàn)代操作系統(tǒng)的兩個重要特征是并發(fā)和共享。操作系統(tǒng)的基本類型有批處理操作系統(tǒng),分時操作系統(tǒng)和實時操作系統(tǒng)三種。計算機操作系統(tǒng)是方便用戶、管理和控制計算機系統(tǒng)資源的系統(tǒng)軟件。操作系統(tǒng)為用戶提供三種類型的使用接口,它們是命令方式和系統(tǒng)調(diào)用和圖形用戶界面。 操作系統(tǒng)分配資源以進程為基本單位。線程(thread),從操作系統(tǒng)管理角度看線程是指"進程的一個可調(diào)度實體",是處理機調(diào)度的基本單位: 從編程邏輯看線程是指"程序內(nèi)部的一個單一的順序控制流"。線程是進程的一個組成部分

3、。單道批處理系統(tǒng)的特征:(1)自動性(2)順序性(3)單道性。多道批處理系統(tǒng)的特征:多道性,無序性,調(diào)度性。優(yōu)缺點:(1)資源利用率高(2)系統(tǒng)吞吐量大(3)平均周轉(zhuǎn)時間長(4)無交互能力。(作業(yè)由程序、數(shù)據(jù)、JCB和作業(yè)說明書組成。) 引入多道程序目的:提高CPU的利用率,提高內(nèi)存和I/O設(shè)備利用率,增加系統(tǒng)吞吐量 單道中如果同時存在10個進程,那么就緒隊列最多有多少個進程。分時:分時系統(tǒng)采用時間片輪轉(zhuǎn)法,使一臺計算機同時為多個終端服務(wù)。特點:交互性。用戶能夠直接與計算機系統(tǒng)交互。及時性。由于支持人機交互,所以主機應(yīng)該盡快地對用戶的要求給予響應(yīng)。獨立性。這主要是指多個用戶雖然在同時使用主機系

4、統(tǒng),但是他們相互之間是不干擾的。多路性。分時操作系統(tǒng)在宏觀上看,整個系統(tǒng)同時在為多個用戶服務(wù)。實時:實時系統(tǒng)是指系統(tǒng)能及時響應(yīng)外部事件的請求,在規(guī)定時間內(nèi)完成對該事件的處理,并控制所有實時任務(wù)協(xié)調(diào)一致地運行。特點:多路性,獨立性, 及時性,交互性,可靠性。 分時和實時區(qū)別:分時系統(tǒng)控制的主動權(quán)在計算機,計算機按一定時間間隔,以固定時間片或不固定時間片去輪流完成多個提交的任務(wù),只是在用戶反應(yīng)相對較慢時,不感到機器“走開”。而實時系統(tǒng)控制的主動權(quán)在用戶,用戶規(guī)定什么時間要計算機干什么,計算機不能“走開”。分時系統(tǒng)通用性強,交互性強,及時響應(yīng)性要求一般(通常數(shù)量級為秒);實時系統(tǒng)往往是專用的,系統(tǒng)與

5、應(yīng)用很難分離,常常緊密結(jié)合在一起,實時系統(tǒng)并不強調(diào)資源利用率,而更關(guān)心及時響應(yīng)性(通常數(shù)量級為毫秒或微秒)、可靠性等。第二章:進程管理進程的靜態(tài)實體由( )、( )和( )三部分組成。程序,數(shù)據(jù)集合,進程控制塊PCB 在進程的整個生命周期中,系統(tǒng)總是通過其PCB對進程進行控制,系統(tǒng)是根據(jù)進程的PCB而不是任何別的什么而感知到該進程的存在的,所以說,PCB是進程存在的唯一標志. 進程和程序的區(qū)別: (1) 進程是程序在處理機上的一次執(zhí)行過程,是一個動態(tài)概念;而程序是代碼的有序集合,其本身沒有任何運行的含義,是一個靜態(tài)的概念。(2) 進程是一個狀態(tài)變化的過程,是有生命期的,表現(xiàn)在它因創(chuàng)建而產(chǎn)生,因

6、調(diào)度而執(zhí)行,因得不到資源而暫停,因撤銷而消亡;而程序是永久的,可以長久保存。(3) 進程和程序的組成不同。進程由程序、數(shù)據(jù)和進程控制塊組成,而程序僅是代碼的有序集合。(4) 進程與程序之間不是一一對于的。通過多次運行,同一個程序可以對應(yīng)多個進程;通過調(diào)用關(guān)系,一個進程可以包含 - 1 -多個程序。在操作系統(tǒng)中引入線程概念的主要目的是( )。使得多個程序更好的并發(fā)執(zhí)行同時又盡量減少系統(tǒng)的開銷,有效的改善多處理機的性能。進程和線程的區(qū)別:一個程序至少有一個進程,一個進程至少有一個線程. 線程的劃分尺度小于進程,使得多線程程序的并發(fā)性高。 另外,進程在執(zhí)行過程中擁有獨立的內(nèi)存單元,而多個線程共享內(nèi)存

7、,從而極大地提高了程序的運行效率。線程在執(zhí)行過程中與進程還是有區(qū)別的。每個獨立的線程有一個程序運行的入口、順序執(zhí)行序列和程序的出口。但是線程不能夠獨立執(zhí)行,必須依存在應(yīng)用程序中,由應(yīng)用程序提供多個線程執(zhí)行控制。從邏輯角度來看,多線程的意義在于一個應(yīng)用程序中,有多個執(zhí)行部分可以同時執(zhí)行。但操作系統(tǒng)并沒有將多個線程看做多個獨立的應(yīng)用,來實現(xiàn)進程的調(diào)度和管理以及資源分配。這就是進程和線程的重要區(qū)別。如果系統(tǒng)有N個進程,則在等待隊列中進程的個數(shù)最多可為( )個。N-1進程狀態(tài)轉(zhuǎn)換圖: 具有掛起狀態(tài)的進程狀態(tài)圖進程的三種基本狀態(tài)及其轉(zhuǎn)換間片完 )。A.就緒運行B.運行就緒C.就緒阻塞 D.阻塞就緒。C(

8、一個進程狀態(tài)的轉(zhuǎn)換不一定會引起另一個進程的轉(zhuǎn)換)引起進程阻塞或被喚醒的主要事件是什么?請求系統(tǒng)服務(wù);啟動某種操作;新數(shù)據(jù)尚未到達;無新工作可做。 P(S)進程請求一個單位的該類資源,V(S)執(zhí)行進程釋放一個單位資源,S的初始值不能為負,S初始值為1時,表示只允許一個進程訪問臨界資源,此時的信號量轉(zhuǎn)化為互斥信號量,當信號量S的當前值為-5時,則表示系統(tǒng)中共有5個等待進程。例題:吃蘋果問題int S1; int Sa0; int So0;father() son() daughter() while(1) while(1) while(1) P(S); P(So); P(Sa);將水果放入盤中;

9、從盤中取出桔子; 從盤中取出蘋果; if(放入的是桔子) V(S); V(S);V(So); 吃桔子; 吃蘋果;else V(Sa); 在操作系統(tǒng)中,P、V操作是一種_。(A)機器指令 (B)系統(tǒng)調(diào)用命令(C)作業(yè)控制命令(D)低級進程通訊原語。D第三章:處理機調(diào)度與死鎖- 2 -調(diào)度算法:先來先服務(wù)調(diào)度算法FCFS,短作業(yè)(進程)優(yōu)先調(diào)度算法SJ(P)F,高優(yōu)先權(quán)優(yōu)先調(diào)度算法HPF,時間片輪轉(zhuǎn)調(diào)度算法RR。(如果系統(tǒng)中的所有作業(yè)是同時到達的,則使作業(yè)平均周轉(zhuǎn)時間最短的作業(yè)調(diào)度是短作業(yè)優(yōu)先算法。)例題:有5個任務(wù)A,B,C,D,E,它們幾乎同時到達,預(yù)計它們的運行時間為10,6,2,4,8mn

10、。其優(yōu)先級分別為3,5,2,1和4,這里5為最高優(yōu)先級。對于下列每一種調(diào)度算法,計算其平均進程周轉(zhuǎn)時間(進程切換開銷可不考慮)。(1)先來先服務(wù)(按A,B,c,D,E)算法。(2)優(yōu)先級調(diào)度算法。(3)時間片輪轉(zhuǎn)算法。 解:(1)采用FCFS的調(diào)度算法時,各任務(wù)在系統(tǒng)中的執(zhí)行情況如下表所示:所以,進程的平均周轉(zhuǎn)時間為:T=(10+16+18+22+3O)/5=19.2 min(2)采用優(yōu)先級調(diào)度算法時,各任務(wù)在系統(tǒng)中的執(zhí)行情況如下表所示:所以,(3)采用時間片輪轉(zhuǎn)算法時,假定時間片為2min,各任務(wù)的執(zhí)行情況是:(A,B,C,D,E),(A,B,D,E),(A,B,E),(A,E),(A)。設(shè)

11、AE五個進程的周轉(zhuǎn)時間依次為T1T5,顯然,T1=3Omin, T2=22min, T3=6min,T4=16min,T5=28min 所以,進程的平均周轉(zhuǎn)時間為:T=(30+22+6+16+28)/5=20.4min 什么是臨界資源和臨界區(qū)? a. 一次僅允許一個進程使用的資源成為臨界資源. b. 在每個進程中,訪問臨界資源的那段程序稱為臨界區(qū)。什么是死鎖?產(chǎn)生死鎖的必要條件是什么?所謂死鎖是指多個進程在運行過程中因爭奪資源而造成的一種僵局,當進程處于這種僵持狀態(tài)時,若無外力作用,他們都將無法再向前推進。必要條件:互斥條件,請求和保持條件,不剝奪條件,環(huán)路等待條件。產(chǎn)生死鎖的原因是什么? 系

12、統(tǒng)資源不足; 進程推進順序不合適(進程在運行過程中,請求和釋放資源的順序不當)。產(chǎn)生死鎖的根本原因:爭奪共享資源。避免死鎖的銀行家算法:例題:系統(tǒng)中有五個進程P1、P2、P3、P4、P5,有三種類型的資源:R1、R2、和R3。在T0時刻系統(tǒng)狀態(tài)如表所示。若采用銀行家算法實施死鎖避免策略,回答下列問題:1,T0時刻是否為安全狀態(tài)?為什么?2,若這時P4請求資源(1,2,0),是否能實施資源分配?為什么?3,在上面的基礎(chǔ)上,若進程P3請求資源(0,1,0),是否能實施資源分配?為什么?T0時刻系統(tǒng)狀態(tài)- 3 -解:1 T0時刻是安全的,安全序列為:P1,P4,P5,P2,P3 2 P4請求資源(1

13、,2,0),根據(jù)銀行家算法,預(yù)分配后系統(tǒng)是安全的,安全序列為:P1,P4,P5,P2,P33 P3請求資源(1,1,0),根據(jù)銀行家算法,預(yù)分配后系統(tǒng)不安全,所以不能實施資源分配。第四章:存儲器管理 固定分區(qū)分配:固定分區(qū)法就是把內(nèi)存區(qū)固定地劃分為若干個大小不等的區(qū)域。分區(qū)劃分的原則由一般系統(tǒng)操作員或操作系統(tǒng)決定。例如可劃分為長作業(yè)分區(qū)和短作業(yè)分區(qū)。分區(qū)一旦劃分結(jié)束,在整個執(zhí)行過程中每個分區(qū)的長度和內(nèi)存的總分區(qū)個數(shù)將保持不變。動態(tài)分區(qū)分配算法:1,首次適應(yīng)算法FF。2,循環(huán)首次適應(yīng)算法NF。3,最佳適應(yīng)算法BF。4,最壞適應(yīng)算法WF。最壞適應(yīng)分配算法要掃描整個空閑分區(qū)表或鏈表,總是挑選一個最大

14、的空閑區(qū)分割給作業(yè)使用。5,快速適應(yīng)算法QF。該算法又稱為分類搜索法,是將空閑分區(qū)根據(jù)其容量大小進行分類,對于每一類具有相同容量的所有空閑分區(qū),單獨設(shè)立一個空閑分區(qū)鏈表。回收內(nèi)存圖:a,不必為回收分區(qū)分配新表項,而只需修改其前一分區(qū)F1的大小。b,回收分區(qū)與F2合并形成新空閑分區(qū),但用回收區(qū)的首址作為空閑分區(qū)的首址,大小為兩者之和。C,合并F1,F(xiàn)2和回收分區(qū),使用F1的表項和首址,取消F2表項,大小為三者之和。d,都不相鄰時,回收分區(qū)單獨建立一新表項,填寫回收區(qū)的首址和大小,并根據(jù)其首址插入到空閑鏈中的適當位置。為什么要引入動態(tài)重定位?如何實現(xiàn)?靜態(tài)重定位是在鏈接裝入時一次集中完成的地址轉(zhuǎn)換

15、,但它要求連續(xù)的一片區(qū)域,且重定位后不能移動,不利于內(nèi)存空間的有效使用。所以要引入動態(tài)重定位,它是靠硬件地址變換部分實現(xiàn)的。通常采用重定位寄存器等實現(xiàn)。 把作業(yè)地址空間中使用的邏輯地址變成內(nèi)存中的物理地址稱為_。 (A)加載 (B)重定位 (C)物理化 (D)邏輯化 B 當內(nèi)存碎片容量大于某一作業(yè)所申請的內(nèi)存容量時( )。A、可以為這一作業(yè)分配內(nèi)存 B、不可以為這一作業(yè)分配內(nèi)存 C、拼接后,可以為這一作業(yè)分配內(nèi)存 D、一定能夠為這一作業(yè)分配內(nèi)存。 D頁面大小與可能發(fā)生的缺頁中斷的關(guān)系:內(nèi)存大小一定情況下,頁面大,那么頁面數(shù)會少,- 4 -缺頁中斷次數(shù)也可能會少。(一條指令在執(zhí)行期間,可能產(chǎn)生多

16、次缺頁中斷。)對于請求分頁式存儲管理系統(tǒng),若把頁面的大小增加一倍,則缺頁中斷次數(shù)會減少一半。(錯) 試說明為什么引入缺頁中斷?因為虛擬頁式存儲系統(tǒng)中允許作業(yè)的一部分頁面在內(nèi)存,只有引入缺頁中斷,才能將不在內(nèi)存的信息頁從外存調(diào)入內(nèi)存,中斷恢復(fù)后可以繼續(xù)執(zhí)行。例題:某虛擬存儲器的用戶編程空間共32個頁面,每頁為1KB,內(nèi)存為16KB。假定某時刻一用戶頁表中已調(diào)入內(nèi)存的頁面的頁號和物理塊號的對照表如下:頁號 物理塊號0 51 102 43 7則邏輯地址0A5C(H)所對應(yīng)的物理地址是什么?要求:寫出主要計算過程。解:分析頁式存儲管理的邏輯地址分為兩部分:頁號和頁內(nèi)地址。由已知條件“用戶編程空間共32

17、個頁面”,可知頁號部分占5位;由“每頁為1KB”,101K=2,可知內(nèi)頁地址占10位。由“內(nèi)存為16KB”,可知有16塊,塊號為4位。邏輯地址0A5C(H)所對應(yīng)的二進制表示形式是:000 1010 0101 1100 ,根據(jù)上面的分析,下劃線部分為頁內(nèi)地址,編碼 “000 10” 為頁號,表示該邏輯地址對應(yīng)的頁號為2。查頁表,得到物理塊號是4(十進制),即物理塊地址為:01 00 ,拼接塊內(nèi)地址10 0101 1100,得01 0010 0101 1100,即125C(H)。例題:考慮一個由8個頁面,每頁有1024個字節(jié)組成的邏輯空間,把它裝入到有32個物理塊的存儲器中,問:(1)邏輯地址需

18、要多少位表示?(2)絕對地址需要多少位表示?310解:因為頁面數(shù)為8=2,故需要3位二進制數(shù)表示。每頁有1024個字節(jié),1024=2,于是頁5內(nèi)地址需要10位二進制數(shù)表示。32個物理塊,需要5位二進制數(shù)表示(32=2)。(1)頁的邏輯地址由頁號和頁內(nèi)地址組成,所以需要3+10=13位二進制數(shù)表示。(2)頁的絕對地址由塊號和頁內(nèi)地址的拼接,所以需要5+10=15位二進制數(shù)表示。例題:現(xiàn)有一個作業(yè),在段式存儲管理的系統(tǒng)中已為其主存分配,建立的段表內(nèi)容如下:段號 主存起始地址 段長度0 120 401 760 302 480 203 370 20計算邏輯地址(2,18),(0,50),(3,15)的

19、絕對地址是多少?(注:括號中第一個元素為段號,第二個元素為段內(nèi)地址)解: 段式存儲管理的地址轉(zhuǎn)換過程為:(1)根據(jù)邏輯地址中的段號查段表的相應(yīng)欄目;(2)根據(jù)段內(nèi)地址<段長度,檢查地址是否越界;(3)若不越界,則絕對地址=該段的主存起始地址+段內(nèi)地址。邏輯地址(2,18)查段表得段長度為20,段內(nèi)地址18<20,地址不越界,段號2查表得段首地址為480,于是絕對地址為480+18=498。邏輯地址(0,50)查段表得段長度為40,段內(nèi)地址50>40,地址越界,系統(tǒng)發(fā)出“地址越界”中斷。邏輯地址(3,15)查段表得段長度為20,段內(nèi)地址15<20,地址不越界,段號3查表得

20、段首地址為370,于是絕對地址=370+15=385。在段頁式系統(tǒng)中,為了獲得一條指令或數(shù)據(jù),須三次訪問內(nèi)存。- 5 -頁面置換算法:1,最佳(Optimal)置換算法:選擇的被淘汰頁面,將是以后永不使用的或是在未來最長時間內(nèi)不再被訪問的頁面,可保證獲得最低的缺頁率。2,先進先出(FIFO)頁面置換算法:選擇在內(nèi)存中駐留時間最久的頁面予以淘汰。3,最近最久未使用(LRU)置換算法:選擇最近最久未使用的頁面予以淘汰。4,Clock置換算法:訪問位。5,最少使用LFU置換算法,頁面緩沖算法PBA。例題:一個進程的大小為5個頁面,為它分配了四個物理塊。當前每個塊的情況如下表所示(都為十進制數(shù),且從0

21、開始計數(shù)。)。當虛頁4發(fā)生缺頁時,使用下列的頁面置換算法,哪一個物理塊將被換出?并解釋原因。頁號 塊號 加載時間 訪問時間 訪問位R 修改位M2 0 60 161 0 11 1 130 160 0 00 2 26 162 1 03 3 20 163 1 1(1)IFO算法 (2)LRU算法(3)CLOCK算法 (4)當頁面的訪問串為:“4,0,0,0,2,4,2,1,0,3,2”的OPT算法解:1換出第3號虛頁,因為它加載的時間最早;2換出第1號虛頁,因為它最近最久沒被訪問;3換出第1號虛頁,因為它最近既沒被訪問,又沒被修改;4換出第3號虛頁,因為它離訪問點最遠。例題:設(shè)某作業(yè)占有7個頁面,如

22、果在主存中只允許裝入4個工作頁面(即工作集為4),作業(yè)運行時,實際訪問頁面的順序是:1, 2, 3, 6, 4, 7, 3, 2, 1, 4, 7, 5, 6, 5, 2, 1。試用FIFO、LRU和CLOCK頁面置換算法,列出各自的頁面淘汰順序和頁面置換次數(shù)。(不是求缺頁中斷- -)解:FIFO:1, 2, 3, 6, 4, 7, 3, 2, 1, 4, 7, 5, 6, 5, 2, 11 1 1 1 4 4 4 4 5 52 2 2 2 7 7 7 7 63 3 3 3 2 2 2 26 6 6 6 1 1 1頁面置換次數(shù)為:6次LRU:1, 2, 3, 6, 4, 7, 3, 2, 1,

23、 4, 7, 5, 6, 5, 2, 11 1 1 1 4 4 4 1 1 1 1 6 6 62 2 2 2 7 7 7 4 4 4 4 2 23 3 3 3 3 3 3 7 7 7 7 16 6 6 2 2 2 2 5 5 5 5頁面置換次數(shù)為:10次CLOCK:1, 2, 3, 6, 4, 7, 3, 2, 1, 4, 7, 5, 6, 5, 2, 11 1 1 1 4 4 4 1 1 1 1 6 6 62 2 2 2 7 7 7 4 4 4 4 2 23 3 3 3 3 3 3 7 7 7 7 16 6 6 2 2 2 2 5 5 5 5頁面置換次數(shù)為:10次- 6 -(a)(b)第五章

24、:設(shè)備管理 設(shè)備管理:緩沖區(qū)的設(shè)置可分為單緩沖(圖1),雙緩沖(圖2),多緩沖和緩沖池。 用戶進程 I/O 設(shè)備(a)I/O設(shè)備T1T2T3T4其中至少應(yīng)含有以下三種類T(緩沖1)T(緩沖2)T(緩沖3)T(緩沖4)M1M2M3(閑)MMMM(b)1)C1C2C3CCCCoutq 緩沖池t緩沖區(qū)工作方式:四種工作方式,如圖 收容輸入,提取輸出,提取輸入,收容輸出設(shè)備分配算法:先來先服務(wù),優(yōu)先級高者優(yōu)先。SPOOLing:即同時聯(lián)機外圍操作,又稱脫機操作。一道程序,來模擬脫機的輸入輸出功能。即在聯(lián)機條件下,將數(shù)據(jù)從輸入設(shè)備傳送到磁盤,或從磁盤傳送到輸出設(shè)備。SPOOLing系統(tǒng)的主要功能是:將獨

25、占設(shè)備改造為共享設(shè)備,實現(xiàn)了虛擬設(shè)備功能。SPOOLing系統(tǒng)的特點:提高了I/O的速度。 將獨占設(shè)備改造為共享設(shè)備。 實現(xiàn)了虛擬設(shè)備功能。 SPOOLing系統(tǒng)的組成:如圖 1,輸入井和輸出井;2,輸入緩沖區(qū)和輸出緩沖區(qū);3,輸入進程SPi和輸出進程SPo;在操作系統(tǒng)中,一種用空間換取時間的資源轉(zhuǎn)換技術(shù)是SPOOLing技術(shù)設(shè)備獨立性:指用戶設(shè)備獨立于所使用的具體物理設(shè)備。即在用戶程序中要執(zhí)行I/O操作時,只需用邏輯設(shè)備名提出I/O請求,而不必局限于某特定的物理設(shè)備。磁盤調(diào)度算法:先來先服務(wù)FCFS,最短尋道時間優(yōu)先SSTF(可能導(dǎo)致進程“饑餓”現(xiàn)象),掃描(SCAN)算法,循環(huán)掃描(CSC

26、AN)算法,N-Step-SCAN和FSCAN調(diào)度算法例題:若干個等待訪問磁盤者依次要訪問的磁道為20,44,40,4,80,12,76,假設(shè)每移動一個磁道需要3毫秒時間,移動臂當前位于40號柱面,請按下列算法分別寫出訪問序列并計算為完成上述各次訪問總共花費的尋道時間。 (1)先來先服務(wù)算法;(2)最短尋道時間優(yōu)先算法。(3)掃描算法(當前磁頭移動的方向為磁道遞增)解:(1)磁道訪問順序為:20,44,40,4,80,12,76尋道時間=(20+24+4+36+76+68+64)*3=292*3=876(2)磁道訪問順序為:40,44,20,12,4,76,80尋道時間=(0+4+24+8+8

27、+72+4)*3=120*3=360(3)磁道訪問順序為:40,44,76,80,20,12,4尋道時間=(0+4+32+4+60+8+8)*3=116*3=348第六章:文件管理最基本的文件操作:創(chuàng)建文件,刪除文件,讀文件,寫文件,截斷文件,設(shè)置文件的讀/寫位置。什么是文件的邏輯組織和物理結(jié)構(gòu)?文件的邏輯結(jié)構(gòu)有幾種形式?文件的邏輯結(jié)構(gòu)。這是從觀點出發(fā)用戶出發(fā)所觀察到的文件組織形式,是用戶可以直接處理的數(shù)據(jù)及其結(jié)構(gòu),它獨立于文件的物理特性,又稱為文件組織。 123412341234 - 7 -文件的物理結(jié)構(gòu),又稱為文件的存儲結(jié)構(gòu),是指文件在外存上的存儲組織形式。這不僅與存儲介質(zhì)的存儲性能有關(guān),

28、而且與所采用的外存分配方式有關(guān)。(一般有連續(xù)結(jié)構(gòu),流式結(jié)構(gòu)) 文件的邏輯結(jié)構(gòu)有以下形式:有結(jié)構(gòu)文件和無結(jié)構(gòu)文件。有結(jié)構(gòu)文件又稱為記錄式文件(順序文件、索引文件、索引順序文件),它在邏輯上可被看成一組連續(xù)順序的記錄的集合,又可分為定長記錄文件和變長記錄文件兩種。無結(jié)構(gòu)文件是指文件內(nèi)部不再劃分記錄,它由一組相關(guān)信息組成的有序字符流,即流式文件。下列文件中屬于邏輯結(jié)構(gòu)的文件?A.連續(xù)文件B.系統(tǒng)文件C.散列文件D.流式文件 D 顯示鏈接:假定盤塊的大小為1KB,硬盤的大小為500MB,采用顯示鏈接分配方式時,其FAT需要占用多少存儲空間?答:FAT的每個表項對應(yīng)于磁盤的一個盤塊,其中用來存放分配給文

29、件的下一個盤塊的塊號,故FAT的表項數(shù)目由物理盤塊數(shù)決定,而表項的長度則由磁盤系統(tǒng)的最大盤塊號決定(即它必須能存放最大的盤塊號).為了地址轉(zhuǎn)換的方便,FAT表項的長度通常取半個字節(jié)的整數(shù)倍,所以必要時還必須由最大盤塊號獲得的FAT表項長度作一些調(diào)整.由題意可知,該硬盤共有500K個盤塊,故FAT中共有500K個表項;如果盤塊從1開始編號,為了能保存最大的盤塊號500K,該FAT表項最少需要19位,將它擴展為半個字節(jié)的整數(shù)倍后,可知每個FAT表項需20位,即2.5個字節(jié).因此,FAT需占用的存儲空間的大小為:2.5×500K=1250KB位示圖:它是利用一個向量來描述自由塊使用情況的一

30、張表。表中的每個元素表示一個盤塊的使用情況,0表示該塊為空閑塊,1表示已分配。盤塊的分配:(1)順序掃描位示圖,從中找出一個或一組其值為“0”的二進制位(“0”表示空閑時)。(2) 將所找到的一個或一組二進制位, 轉(zhuǎn)換成與之相應(yīng)的盤塊號。假定找到的其值為“0”的二進制位,位于位示的第i行、第j列,則其相應(yīng)的盤塊號應(yīng)按下式計算: b=n(i-1)+j式中, n代表每行的位數(shù)。(3) 修改位示圖, 令mapi,j=1。盤塊的回收: (1)將回收盤塊的盤塊號轉(zhuǎn)換成位示圖中的行號和列號。轉(zhuǎn)換公式為:i=(b-1)DIV n+1;j=(b-1)MOD n+1 (2)修改位示圖。令mapi,j=1。某文件

31、管理系統(tǒng)在磁盤上建立了位示圖(bitmap),記錄磁盤的使用情況。若磁盤上的物理塊依次編號為:0、1、2、,系統(tǒng)中字長為32位,每一位對應(yīng)文件存儲器上的一個物理塊,取值0和1分別表示空閑和占用,如下圖所示。假設(shè)將4195號物理塊分配給某文件,那么該物理塊的使用情況在位示圖中的第_(1)_個字中描述;系統(tǒng)應(yīng)該將_(2)_。(1) A.128 B.129 C.130 D.131(2) A. 該字的第3位置“0” B. 該字的第3位置“1”C. 該字的第4位置“0” D. 該字的第4位置“1”答:因為物理塊編號是從0開始的,所以4195號物理塊其實就是第4196塊。因為字長為32位,也就是說,每個字

32、可以記錄32個物理塊的使用情況。4196/32=131.125,所以,4195號物理塊應(yīng)該在第131個字中(字的編號也是從0開始計數(shù))。那么,具體在第131個字的哪一位呢?到第130個字為止,共保存了131*32=4192個物理塊(04191),所以,第4195塊應(yīng)該在第131個字的第3位記錄(要注意:0是最開始的位)。因為系統(tǒng)已經(jīng)將4195號物 - 8 -理塊分配給某文件,所以其對應(yīng)的位要置1。D,B文件一級目錄結(jié)構(gòu)最主要缺點:不能重命名(查找速度慢,不便于實現(xiàn)共享)MS-DOS中的文件物理結(jié)構(gòu)采用_。A.連續(xù)結(jié)構(gòu) B.鏈接結(jié)構(gòu) C.索引結(jié)構(gòu) D.哈希表。B 實時操作系統(tǒng)必須在_內(nèi)完成來自外

33、部的事件。A.響應(yīng)時間 B.周轉(zhuǎn)時間 C.規(guī)定時間D.調(diào)度時間。C小補充(可刪):在操作系統(tǒng)中為什么要引入進程概念?為了使程序在多道程序環(huán)境下能并發(fā)執(zhí)行,并能對并發(fā)執(zhí)行的程序加以控制和描述,而引入了進程概念。多道程序設(shè)計是指在主存中同時存放多道用戶作業(yè),它們都處于執(zhí)行的開始點和結(jié)束點之間。多道程序設(shè)計的特點如下:(1)多道。主存中有多道程序,它們在任一時刻必須處于就緒、運行、阻塞三種狀態(tài)之一。(2)宏觀上并行。從宏觀上看,它們在同時執(zhí)行。(3)微觀上串行。從微觀上看,它們在交替、穿插地執(zhí)行。采用多道程序設(shè)計后,減少了CPU時間的浪費。尤其對計算題的作業(yè),由于I/O操作較少,CPIJ浪費的時間很

34、少。掛起事件:用戶進程請求將自己掛起,或父進程請求將自己的某個子進程掛起, 系統(tǒng)將利用掛起原語suspend( )將指定進程或處于阻塞狀態(tài)的進程掛起等。為什么進程在進入臨界區(qū)之前,應(yīng)先執(zhí)行"進入?yún)^(qū)"代碼,在退出臨界區(qū)后又執(zhí)行"退出區(qū)"代碼? 為了實現(xiàn)多個進程對臨界資源的互斥訪問,必須在臨界區(qū)前面增加一段用于檢查欲訪問的臨界資源是否正被訪問的代碼,如果未被訪問,該進程便可進入臨界區(qū)對資源進行訪問,并設(shè)置正被訪問標志,如果正被訪問,則本進程不能進入臨界區(qū),實現(xiàn)這一功能的代碼成為"進入?yún)^(qū)"代碼;在退出臨界區(qū)后,必須執(zhí)行"退出區(qū)&q

35、uot;代碼,用于恢復(fù)未被訪問標志.同步機制應(yīng)遵循哪些基8本準則? a. 空閑讓進. b. 忙則等待. c. 有限等待. d. 讓權(quán)等待. 利用信號量實現(xiàn)進程的( ),應(yīng)為臨界區(qū)設(shè)置一個信號量mutex,其初值為1,表示該資源尚未使用,臨界區(qū)應(yīng)置于( )和( )原語之間。互斥,P(mutex),V(mutex)作業(yè)調(diào)度的主要功能是:記錄系統(tǒng)中各個作業(yè)的情況;按照某種調(diào)度算法從后備作業(yè)隊列中挑選作業(yè);為選中的作業(yè)分配內(nèi)存和外設(shè)等資源;為選中的作業(yè)建立相應(yīng)的進程;作業(yè)結(jié)束后進行善后處理工作。進程調(diào)度的主要功能是:保存當前運行進程的現(xiàn)場;從就緒隊列中挑選一個合適進程;為選中的進程恢復(fù)現(xiàn)場。什么是高級

36、調(diào)度、中級調(diào)度和低級調(diào)度?作業(yè)調(diào)度:從一批后備作業(yè)中選擇一個或幾個作業(yè),給它們分配資源,建立進程,掛入就緒隊列。執(zhí)行完后,回收資源。進程調(diào)度:從就緒進程隊列中根據(jù)某個策略選取一個進程,使之占用CPU。交換調(diào)度:按照給定的原則和策略,將外存交換區(qū)中的進程調(diào)入內(nèi)存,把內(nèi)存中的非執(zhí)行進程交換到外存交換區(qū)中。在解決死鎖問題的幾個方法中,哪種方法最容易實現(xiàn)?哪種方法使資源的利用率最高? a. 解決死鎖可歸納為四種方法: 預(yù)防死鎖,避免死鎖,檢測死鎖和解除死鎖; b. 其中,預(yù)防死鎖是最容易實現(xiàn)的;c. 避免死鎖使資源的利用率最高.N個進程共享某種資源R,該資源共有m個可分配單位,每個進程一次一個地申請或

37、釋放資源單位。假設(shè)每個進程對該資源的最大需求量均小于m,且各進程最大需求之和小于m+n,試證明在這個系統(tǒng)中不可能發(fā)生死鎖?解:設(shè):max(i):表示第I進程的最大資源需求量need(i): 表示第I進程的還需要的資源量allocation(i): 表示第I進程的已分配到的資源量。由題中給定條件可知:max(1)+max(2)+max(n)=(allocation(1) +allocation(2)+allocation (n)+( need(1)+need(2)+need(n)<m+n(1)假若系統(tǒng)發(fā)生死鎖,則有:(m個資源均應(yīng) - 9 -全部分配出去)即allocation(1) +a

38、llocation(2)+allocation (n)=m(2)同時有(所有進程處于無限等待狀態(tài)):need(1)+need(2)+need(n)>=n(3) 則由(2)+(3)得:(allocation(1) +allocation(2)+allocation (n)+( need(1)+need(2)+need(n)>=m+n這與(1)式相矛盾。請詳細說明可通過哪些途徑預(yù)防死鎖?a. 擯棄"請求和保持"條件,就是如果系統(tǒng)有足夠的資源,便一次性地把進程所需的所有資源分配給它;b. 擯棄"不剝奪"條件,就是已經(jīng)保持了資源的進程,當它提出新的資

39、源請求而不能立即得到滿足時,必須釋放它已經(jīng)保持的所有資源,待以后需要時再重新申請;c. 擯棄"環(huán)路等待"條件,就是將所有資源按類型排序標號,所有進程對資源的請求必須嚴格按序號遞增的次序提出。操作系統(tǒng)的設(shè)備管理應(yīng)具備的主要功能是監(jiān)視設(shè)備狀態(tài),進行設(shè)備分配,完成I/O操作,緩沖管理與地址轉(zhuǎn)換在頁式管理中,頁表的作用是實現(xiàn)從頁號到物理塊號的地址映射,存儲頁表的作用是記錄內(nèi)存頁面的分配情況。頁式虛地址與內(nèi)存物理地址的映射是由頁表和硬件地址變換機構(gòu)完成的。常用的內(nèi)存管理方法有分區(qū)管理,頁式管理,段式管理,段頁式管理。例題:對于如下的頁面訪問序列:1, 2, 3, 4, 1, 2, 5

40、, 1, 2, 3, 4, 5當內(nèi)存塊數(shù)量分別為3和4時,試問:使用FIFO、LRU置換算法產(chǎn)生的缺頁中斷是多少?(所有內(nèi)存開始時都是空的,凡第一次用到的頁面都產(chǎn)生一次缺頁中斷)解:FIFO淘汰算法:內(nèi)存塊為3時,缺頁中斷(或稱缺頁次數(shù)、頁面故障)為9;內(nèi)存塊為4時,缺頁中斷為10。LRU淘汰算法:內(nèi)存塊為3時,缺頁中斷為10;內(nèi)存塊為4時,缺頁中斷為8。(具體計算過程省略,解答時請同學(xué)們寫出計算過程。)下列( )存儲管理方式能使存儲碎片盡可能少,而且使內(nèi)存利用率較高。A.固定分區(qū) B.可變分區(qū)C.分頁管理 D.段頁式管理。D什么是覆蓋技術(shù)?什么是交換技術(shù)?所謂覆蓋技術(shù),就是使一個程序的若干個

41、數(shù)據(jù)段或程序段按照時間先后占用內(nèi)存空間的某一部分。交換技術(shù)(swapping)是另外一種擴展內(nèi)存空間的技術(shù)。當多個程序并發(fā)執(zhí)行時,將暫時不需要的程序送到外存中,剩余空間用來裝載新的需要即將投入運行的程序。什么是抖動?產(chǎn)生抖動的原因是什么?抖動是由于內(nèi)存空間競爭引起的。當需要將一個新頁面調(diào)入內(nèi)存時,因內(nèi)存空間緊張,不得不將一個舊頁面置換出去,而剛剛置換出去的舊頁面可能又要被使用,因此需要重新將它調(diào)入。若一個進程頻繁地進行頁面調(diào)入調(diào)出,勢必加大系統(tǒng)的開銷,使系統(tǒng)運行效率降低。通常稱這種現(xiàn)象為該進程發(fā)生了抖動。產(chǎn)生抖動的原因主要有:系統(tǒng)內(nèi)的進程數(shù)量太多,致使一個進程分得的存儲塊過少;系統(tǒng)采取的置換算

42、法不夠合理。分頁和分段有何區(qū)別? a. 分頁和分段都采用離散分配的方式,且都要通過地址映射機構(gòu)來實現(xiàn)地址變換,這是它們的共同點;b. 對于它們的不同點有三,第一,從功能上看,頁是信息的物理單位,分頁是為實現(xiàn)離散分配方式,以消減內(nèi)存的外零頭,提高內(nèi)存的利用率,即滿足系統(tǒng)管理的需要,而不是用戶的需要;而段是信息的邏輯單位,它含有一組其意義相對完整的信息,目的是為了能更好地滿足用戶的需要;c. 頁的大小固定且由系統(tǒng)確定,而段的長度卻不固定,決定于用戶所編寫的程序;d. 分頁的作業(yè)地址空間是一維的,而分段的作業(yè)地址空間是二維的.設(shè)備緩沖區(qū)的原則是:如果數(shù)據(jù)到達率與離去率相差很大,則可采用單緩沖方式;如

43、果信息的輸入和輸出率相同(或相差不大)時,則可用雙緩沖區(qū);對于陣發(fā)性的輸入、輸出,可以 - 10 -設(shè)立多個緩沖區(qū)。一個計算機系統(tǒng)的虛擬存儲器,其最大容量和實際容量分別由什么決定? a. 最大容量由內(nèi)存和外存之和決定;b. 實際容量由內(nèi)存決定.例題:某虛擬存儲器的用戶空間共有32個頁面,每頁1KB,主存16KB. 假定某時刻為用戶的第0,1,2,3頁分別分配的物理塊號為5,10,4,7,試將虛擬地址0A5C和093C變換為物理地址。解:a. 將0A5C變換為2進制為: 0000,1010,0101,1100,由于頁面大小為1KB約為2的10次方,所以0A5C的頁號為2,對應(yīng)的物理塊號為:4,所以虛擬地址0A5C的物理地址為125C; b. 將093C變換為2進制為: 0000,1001,0011,1100,頁號也為2,對應(yīng)的物理塊號也為4,此時虛擬地址093C的物理地址為113C.例題:在一個請求分頁系統(tǒng)中,采用LRU頁面置換算法時,假如一個作業(yè)的頁面走向為4,3,2,1,4,3,5,4,3,2,1,5,當分配給該作業(yè)的物理塊數(shù)M分別為3和4時,試計算訪問過程中所發(fā)生的缺頁次數(shù)和缺頁率?比較所得結(jié)果? 解:a. 當分配給該作業(yè)的物理塊數(shù)M為3時,所發(fā)生的缺頁率為7,缺頁率為: 7/12=0.583; b. 當分配給該作業(yè)的物理塊數(shù)M為4時,所發(fā)生的缺頁率為4,缺頁率為: 4/12

溫馨提示

  • 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)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論