![操作系統(tǒng)期末復(fù)習(xí)要點(diǎn)總結(jié)_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/22/cb7842f6-e17b-4785-b9eb-96aec3fa15a1/cb7842f6-e17b-4785-b9eb-96aec3fa15a11.gif)
![操作系統(tǒng)期末復(fù)習(xí)要點(diǎn)總結(jié)_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/22/cb7842f6-e17b-4785-b9eb-96aec3fa15a1/cb7842f6-e17b-4785-b9eb-96aec3fa15a12.gif)
![操作系統(tǒng)期末復(fù)習(xí)要點(diǎn)總結(jié)_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/22/cb7842f6-e17b-4785-b9eb-96aec3fa15a1/cb7842f6-e17b-4785-b9eb-96aec3fa15a13.gif)
![操作系統(tǒng)期末復(fù)習(xí)要點(diǎn)總結(jié)_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/22/cb7842f6-e17b-4785-b9eb-96aec3fa15a1/cb7842f6-e17b-4785-b9eb-96aec3fa15a14.gif)
![操作系統(tǒng)期末復(fù)習(xí)要點(diǎn)總結(jié)_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/22/cb7842f6-e17b-4785-b9eb-96aec3fa15a1/cb7842f6-e17b-4785-b9eb-96aec3fa15a15.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第一章OS地位、作用和定義地位:操作系統(tǒng)在硬件之上應(yīng)用程序之下操作系統(tǒng)是控制應(yīng)用程序執(zhí)行的程序,并充當(dāng)應(yīng)用程序和硬件間的接口.操作系統(tǒng)(Operating System)是最基本的系統(tǒng)軟件它控制計(jì)算機(jī)的所有資源(系統(tǒng) 的觀點(diǎn))并提供應(yīng)用程序開發(fā)的基礎(chǔ)(用戶的觀點(diǎn))-OS分類和發(fā)展歷史批處理系統(tǒng)用于科學(xué)計(jì)算等但是CPU利用率仍然不高因?yàn)镮/O操作太慢 多道程序系統(tǒng)用多道程序設(shè)計(jì)實(shí)現(xiàn)(仍是批處理系統(tǒng))增加吞吐量;規(guī)模經(jīng)濟(jì);増加可靠性非對稱處理器(主從式);對稱處理器(更普遍) l/n的處理速度按時(shí)完成多處理器系統(tǒng)(并行系統(tǒng)):優(yōu)點(diǎn): 類型:分時(shí)系統(tǒng)實(shí)時(shí)系統(tǒng)OS待征并發(fā),共享,虛擬,異步性O(shè)S功能進(jìn)
2、程管理,內(nèi)存骨理,文件管理,設(shè)備管理,與用戶之間的接口 _些概念現(xiàn)代操作系統(tǒng)是由中斷驅(qū)動的特權(quán)指令:可能引起損S的指令每個(gè)用戶可以通過系統(tǒng)調(diào)用來執(zhí)行特權(quán)指令,稱之為軟中斷監(jiān)控程序(monitor),多道程序系統(tǒng)、多處理系統(tǒng)、批處理、分時(shí)監(jiān)控程序:監(jiān)控程序包括服務(wù)器端和客戶端在一臺機(jī)器運(yùn)行服務(wù)器程序客戶端運(yùn)行客戶端程序可以動態(tài)監(jiān)視服務(wù)器的屏幕能將歸標(biāo)和鍵盤事件傳過去,能進(jìn)行一般的操作多道程序設(shè)計(jì):2個(gè)或多個(gè)作業(yè)同時(shí)進(jìn)入主存切換運(yùn)行:當(dāng)一個(gè)作業(yè)需要等待I/O時(shí),切換到另一個(gè)不在等待I/O的作業(yè)讓CPV 保持忙碌多道程序系統(tǒng):多道程序系統(tǒng)是在計(jì)算機(jī)內(nèi)存中同時(shí)存放幾道相互獨(dú)立的程序,使它們在 管理程序
3、控制之下,相互穿插的運(yùn)行多處理系統(tǒng):有多個(gè)緊密通信的CPU,他們共享計(jì)算機(jī)總線,有時(shí)還有時(shí)鐘-內(nèi)設(shè)和外設(shè) 等-三個(gè)優(yōu)點(diǎn):増加吞吐童、規(guī)模經(jīng)濟(jì).増加可靠性批處理:批處理就是對某對象進(jìn)行批童的處理分時(shí):CPU還是通過在作業(yè)之間的切換來執(zhí)行多個(gè)作業(yè),但耀由于切換頻率很高.用戶可 以在程序運(yùn)行期間與之進(jìn)行交互 引入多道程序設(shè)計(jì)的目的通過把各種不同用戶提出的CPU和IO設(shè)備請求相互交替的執(zhí)行,更高效的使用CPU,通 過不斷讓CPU工作來提高CPU的利用率 研究操作系統(tǒng)的幾種觀點(diǎn)系統(tǒng)觀點(diǎn):用于資源管理器的操作系統(tǒng) 用戶觀點(diǎn).用于擴(kuò)展機(jī)的操作系統(tǒng) 什么是雙重操作模式?為什么要引進(jìn)雙重操作模式CPU有兩種執(zhí)行
4、任務(wù)的模式1系統(tǒng)模式:用于執(zhí)行操作系統(tǒng)任務(wù)2用戶模式:用于執(zhí)行用戶任務(wù)為何引入:通過只能在系統(tǒng)模式下運(yùn)行特權(quán)指令,可以保證操作系統(tǒng)時(shí)刻控制整個(gè)計(jì)算機(jī) 系統(tǒng),并保證關(guān)鍵數(shù)據(jù)的安全- 系統(tǒng)態(tài)、用戶態(tài)以及轉(zhuǎn)換的條件用戶態(tài),算態(tài),目標(biāo)程序態(tài)(目態(tài)),常態(tài)系統(tǒng)態(tài),管態(tài),核心態(tài),管理態(tài),特權(quán)態(tài)毎個(gè)用戶可以通過系統(tǒng)調(diào)用的方式執(zhí)行特權(quán)指令,操作系統(tǒng)視之為軟中斷 特權(quán)指令和非特權(quán)指令 特權(quán)指令:可以引起損害的指令 硬件保護(hù)機(jī)制所有I/O指令都是特權(quán)指令 用戶只能通過OS進(jìn)行1/0-系統(tǒng)調(diào)用 確保用戶程序不能獲得管理模式第二章由一組鍵盤操作命令和命令解釋程序組成 為了用戶訪問系統(tǒng)資源而設(shè),用戶程序獲取操作系統(tǒng)服務(wù)
5、的唯一途徑:系統(tǒng)調(diào)用戶與OS的兩種接口:定義和功能 命令接口: 程序接口: 用定義.功能系統(tǒng)調(diào)用:系統(tǒng)調(diào)用提供了操作系統(tǒng)提供的有效服務(wù)界面,提供了進(jìn)程與操作系統(tǒng)之間的接口. 功能:允許用戶級進(jìn)程請求操作系統(tǒng)服務(wù)分類:進(jìn)程控制,文件管理,信息管理,設(shè)備管理,通信 操作系統(tǒng)的結(jié)構(gòu)有幾種?各自的特點(diǎn)?結(jié)構(gòu):1整體式系統(tǒng);一系列過程的集合,只要需要,就可以相互調(diào)用2. 層次式結(jié)構(gòu):實(shí)現(xiàn)模塊化,相對效率差3. C/S結(jié)構(gòu),易于維護(hù),易于擴(kuò)充,適用于分布式系統(tǒng)4虛擬機(jī)結(jié)構(gòu):提供了安全層操作系統(tǒng)特征 并發(fā),共享,虛擬,異步性 幾個(gè)概念Shell.系統(tǒng)調(diào)用.虛擬機(jī).陷入、陷入與中斷的區(qū)別 虛擬機(jī):是硬件的完全
6、拷貝.Sh訓(xùn):解釋程序陷入: 陷入與中斷,中斷是異步的,因?yàn)閺倪壿嬌蟻碚f,中斷的產(chǎn)生與當(dāng)前正在執(zhí)行的進(jìn)程無關(guān)。陷入是異常之一,異常是由當(dāng)前正在執(zhí)行的進(jìn)程產(chǎn)生.陷入的最主要的應(yīng)用是在調(diào)試 中,被調(diào)試的進(jìn)程遇到你設(shè)置的斷點(diǎn),會停下來等待你的處理,等到你讓其®新執(zhí)行了, 它當(dāng)然不會再去執(zhí)行已經(jīng)執(zhí)行過的斷點(diǎn)指令.進(jìn)程 定義:特征:第三章進(jìn)程指一個(gè)正在執(zhí)行的程序,包括程序計(jì)數(shù)器、寄存器和變量當(dāng)前值(程序是被動的實(shí)體,進(jìn)程是活動的實(shí)體)(進(jìn)程可中斷)(同一程序處理不同數(shù)據(jù)級時(shí),可以構(gòu)成不同的進(jìn)程)動態(tài)性,并發(fā)性,獨(dú)立性,異步性,結(jié)構(gòu)特征(進(jìn)程映像) 程序順序執(zhí)行:程序順序執(zhí)行-嚴(yán)格按先后次序逐個(gè)
7、執(zhí)行語句/程序段程序順序執(zhí)行的特征順序性只有前一個(gè)操作結(jié)束,才能執(zhí)行后續(xù)操作封閉性程序運(yùn)行時(shí)獨(dú)占全機(jī)資源可再現(xiàn)性與執(zhí)行速度無關(guān)程序并發(fā)執(zhí)行:程序的并發(fā)執(zhí)行多道程序系統(tǒng):多道程序的并發(fā)執(zhí)行某道程序的可以包含若干個(gè)能夠并發(fā)執(zhí)行的程 序段好處-充分利用系統(tǒng)資源提高系統(tǒng)處理能力程序并發(fā)執(zhí)行的特征間斷性共享資源,相互合作今相互制約9執(zhí)行暫停-執(zhí)行-失去封閉性一個(gè)程序的執(zhí)行受到其他程序的形響 不可再現(xiàn)性程序順序執(zhí)行-并發(fā)執(zhí)行的特點(diǎn);進(jìn)程與程序的區(qū)別與聯(lián)系進(jìn)程是一個(gè)正在執(zhí)行的程序進(jìn)程是一個(gè)活動的實(shí)體,程序是一個(gè)被動的實(shí)體進(jìn)程不只是程序代碼,還包括當(dāng)前的活動(用CPU各種寄存器的內(nèi)容表示)以及堆桟段和 數(shù)據(jù)段
8、進(jìn)程狀態(tài)(三狀態(tài)和五狀態(tài))及其轉(zhuǎn)換五狀態(tài):新:新進(jìn)程正在被創(chuàng)建就緒:只要有機(jī)會獲得CPU就開始執(zhí)行運(yùn)行:進(jìn)程正在被執(zhí)行等待:等待某個(gè)事發(fā)生終止:進(jìn)程已經(jīng)完成或者被迫終止PCB:作用及其內(nèi)容PCB:進(jìn)程控制塊,包含許多與一個(gè)待定進(jìn)程相關(guān)的信息內(nèi)容:進(jìn)程標(biāo)識進(jìn)程狀態(tài)信息進(jìn)程控制信息進(jìn)程控制主要功能;創(chuàng)建、撤銷.掛起、喚S.阻塞、激活等原語所需完成的功能; 進(jìn)程在執(zhí)行過程中通過系統(tǒng)調(diào)用創(chuàng)建.Fork ()由于代碼相同,父子共享存儲空間Execve ()必須重新分配空間(windows CrealeProcess ()了解fork ()和exec()的工作原理進(jìn)程通信的幾種方法 共享內(nèi)存和消息隊(duì)列消息
9、隊(duì)列.共享內(nèi)存進(jìn)程在內(nèi)存中由四個(gè)部分組成LPCB2 程序3數(shù)據(jù)4系統(tǒng)堆桟第四章什么是線程?為什么要引進(jìn)線程?線程:又稱為輕誥級進(jìn)程,是使用CPU的基本單元,由線程ID、程序計(jì)數(shù)器、寄存器集 合和堆桟組成屬于同一進(jìn)程的線程共享進(jìn)程的代碼段、數(shù)據(jù)段和其他操作系統(tǒng)資源 引入進(jìn)程的目的使多個(gè)進(jìn)程并發(fā)執(zhí)行改善資源利用率提高系統(tǒng)吞吐量引入線程的原因程序并發(fā)執(zhí)行時(shí)所付出的時(shí)空開銷I使OS具有更好的并發(fā)性 線程是調(diào)度的單位 進(jìn)程是資源的擁有者 線程和進(jìn)程的區(qū)別?優(yōu)點(diǎn):響應(yīng)度高資源資源共享 經(jīng)濟(jì)多處理器體系結(jié)構(gòu)的利用 線程的實(shí)現(xiàn)方式用戶級線程 內(nèi)核級線程用戶級線程和內(nèi)核級線程第五章CPU調(diào)度調(diào)度的幾種類型長程調(diào)
10、度.中程調(diào)度、進(jìn)程調(diào)度長期調(diào)度一確定把哪個(gè)作業(yè)放到內(nèi)存中執(zhí)行中期調(diào)度一主要在分時(shí)系統(tǒng)中使用將內(nèi)存中的作業(yè)換出到外存中等到內(nèi)存允許的情 況下再換入到內(nèi)存中執(zhí)行。短期調(diào)度_從就緒隊(duì)列中選擇進(jìn)程執(zhí)行并把CPU分配給它調(diào)度隊(duì)列 可剝奪調(diào)度和不可剝奪調(diào)度:定義和特點(diǎn)調(diào)度的四種時(shí)機(jī):1 運(yùn)行的進(jìn)程一 終止2. 運(yùn)行態(tài)等待態(tài):ex:因請求I/O而阻塞:調(diào)用wait等待子進(jìn)程終止3. 運(yùn)行態(tài)-A就緒態(tài)4. 等待態(tài)-A就緒態(tài)非搶占調(diào)度:僅在第1.2種情況下才進(jìn)行調(diào)度一旦把處理器分配給某進(jìn)程,就讓他一直執(zhí)行,直到它完成或因等待某事件而阻塞 特點(diǎn):實(shí)現(xiàn)簡單,系統(tǒng)開銷小,無需特別硬件支持適用大多數(shù)批處理系統(tǒng)可搶占調(diào)度
11、:發(fā)生在調(diào)度時(shí)機(jī)的各種情況特點(diǎn):避免一個(gè)進(jìn)程獨(dú)占處理器時(shí)間過長-A可能對所有進(jìn)程提供較好服務(wù)系統(tǒng)開銷增加調(diào)度算法的性能評價(jià)準(zhǔn)則準(zhǔn)則:公平、CPU使用率(保證一直在工作)、響應(yīng)時(shí)間(交互用戶響應(yīng)的時(shí)間盡可能短) 周轉(zhuǎn)時(shí)間! T (執(zhí)行完)-T (進(jìn)入系統(tǒng))等待時(shí)間:進(jìn)程在各種隊(duì)列中等待時(shí)間的總和吞吐*:使每小時(shí)處理的作業(yè)數(shù)最多 評價(jià):1、批處理系統(tǒng)周轉(zhuǎn)時(shí)間很重要2x分時(shí)系統(tǒng)響應(yīng)時(shí)間短很重要調(diào)度程序的功能、時(shí)機(jī); 進(jìn)程由執(zhí)行到等待 進(jìn)程由執(zhí)行到準(zhǔn)備就緒 進(jìn)程終止進(jìn)程由等待到準(zhǔn)備就緒 調(diào)度算法:FCFS、SJF. RR.優(yōu)先級、多級隊(duì)列、多級反饋隊(duì)列、HRRNf 點(diǎn)和缺點(diǎn)、適用場合 要求會計(jì)算:調(diào)度
12、順序、周轉(zhuǎn)時(shí)間.平均周轉(zhuǎn)時(shí)間周轉(zhuǎn)時(shí)間(Tq)=完成時(shí)間(finish time)-到達(dá)時(shí)間(arrive (ime)Tq/Ts (服務(wù)時(shí)間)FCFS:先到先服務(wù)按到達(dá)持續(xù)先后調(diào)度對長進(jìn)程有優(yōu)勢利于多處理器處理的進(jìn)程不利于多I/O處理的進(jìn)程SJF:最短作業(yè)優(yōu)先 需要知道或者估計(jì)進(jìn)程會執(zhí)行多長時(shí)間可能會是長進(jìn)程產(chǎn)生饑餓不適合在實(shí)時(shí)系統(tǒng)中使RR專為分時(shí)系統(tǒng)設(shè)計(jì)時(shí)間片太短:開銷大 太長:變成FCFS 優(yōu)先級(非搶占式調(diào)度算法)高響應(yīng)比優(yōu)先調(diào)度算法(HRRN) 響應(yīng)比=(A+B) /BA:等待處理器的時(shí)間B:期望服務(wù)的時(shí)間第6章進(jìn)程同步進(jìn)程同步與互斥概念競爭條件:兩個(gè)或兩個(gè)以上的進(jìn)程共享數(shù)據(jù),而最終的執(zhí)
13、行結(jié)果則是根據(jù)執(zhí)行次序而決定 的,這種情況成為競爭條件(解決方法:控制對共享資源的訪問)臨界資源:多個(gè)進(jìn)程可同時(shí)讀寫共享的數(shù)據(jù)臨界區(qū)程序使用臨界資源的部分稱為臨界區(qū)信號量:兩個(gè)或者多個(gè)進(jìn)程可以用信號的方法進(jìn)行協(xié)作-進(jìn)程可以在任何地方停下來以等 待收到特定的信號,這種信號的實(shí)現(xiàn)叫做信號a.同步:忙等待:持續(xù)檢測一個(gè)變量知道它具有某一特定值互斥:如果有程序在臨界區(qū)中執(zhí)行,那么其他進(jìn)程都不能在臨界區(qū)中執(zhí)行。這樣可以避免 競爭條件的發(fā)生-進(jìn)程間的制約關(guān)系(直接.間接)互斥問題死鎖:兩個(gè)或者多個(gè)進(jìn)程無限期等待一個(gè)事件的發(fā)生,而這個(gè)事件只能由這些等待的進(jìn)程 之一來實(shí)現(xiàn)。饑餓:無限期阻塞 準(zhǔn)則實(shí)現(xiàn)方法:硬件
14、.信號量(軟件方法不要求)硬件互斥:系統(tǒng)提供了特殊硬件指令允許原子地檢査和修改字的內(nèi)容或者交換兩個(gè)字。信號量:兩個(gè)或者多個(gè)進(jìn)程可以用信號的方法進(jìn)行協(xié)作,進(jìn)程可以在任何時(shí)候停下來等待 收到特定的信號-信號fi:定義、含義、操作(初始化,p,v)進(jìn)程同步與互斥問題 生產(chǎn)者與消費(fèi)者sem n = 0”/用于表示緩沖區(qū)不為空=1 sent 2 1;/用于緩沖區(qū)無人操作 sem e = N”/緩沖區(qū)當(dāng)前剩余長度 void ProducerOWhiled)Produce(片Wait(e); VVait(s);AppendO; SignaKs); Signal(n);Void consunierOWhile
15、d)Wait(n); Wait(s); TakeO; SignaKs); Signal(e);Consume。;其他第7章死鎖死鎖定義:如果一個(gè)進(jìn)程集合中每一個(gè)進(jìn)程都在等待只能由本集合的另一個(gè)進(jìn)程才能引發(fā)的* 件,則稱這種狀態(tài)為死鎖發(fā)生原因、4個(gè)必要條件互斥擁有并等待資源不可搶占環(huán)路等待 如果沒有環(huán),那么一定沒有死鎖 掌握解決死鎖的方法:預(yù)防:破壞四個(gè)條件之一亶接預(yù)防:預(yù)防笫四個(gè)產(chǎn)生死鎖的條件(環(huán)路等待).間接預(yù)防:預(yù)防前三個(gè)產(chǎn)生死鎖的條件預(yù)防互斥“不可??!避免:仔細(xì)檢査動態(tài)資源分配死鎖的避免是允許前三個(gè)條件的發(fā)生,但不允許后用一種機(jī)制來防止到達(dá)死鎖的狀態(tài) 掌握銀行家算法:如何判別安全性只要它
16、EAI location矩陣中一行的値都是0.就標(biāo)記這個(gè)進(jìn)程. 2)初給化一個(gè)IIS時(shí)向SwAvailable向S(3) S-個(gè)索引i.保證進(jìn)程i還沒有標(biāo)記-且Q的第i行小干零升- 即.對子有QikWWk.如果沒有這樣的行.«終止執(zhí)行(婦 如果找到這一行-則標(biāo)記i«AI location相應(yīng)的行加到碎上去. 副:Wk=WeMik然后執(zhí)行(3)沒有豐豔融潮谿険死皿每亍標(biāo)記P4置嚴(yán)(0 0 0 0 1)P3的需求小于W,標(biāo)記P3, W-W+ (0 0 0 1 0)=(0 0 0 1 1)因?yàn)闆]有進(jìn)程的需求小丁等丁W,所以結(jié)束P1和P2沒肴標(biāo)記,死鎖010010010100001
17、10101R1R?R3R4R5RequestPlP2P3P410110110000001000000AllocationPlP2P3P4R1R2R3R4R5R1RZR3R4R5 |2|Re&OLVLe R1RZR3R4R5 |0|0|0|0|i| Available第8章內(nèi)存管理(1)存儲器管理程序的功能邏輯地址:CPU生成的地址物理地址:內(nèi)存單元的地址是物理地址地址重定位:邏輯地址向物理地址轉(zhuǎn)換的過程就是重定位 地址映射的概念:連續(xù)內(nèi)存分配(固定分區(qū)、可變分區(qū)): 固定分區(qū):把存儲器分為若干大小相等的區(qū)(因調(diào)入數(shù)據(jù)小于分區(qū)而產(chǎn)生的分區(qū)空間浪費(fèi),叫做內(nèi)部碎片) 可變分區(qū):一開始運(yùn)行的很
18、好,但是經(jīng)過一段時(shí)間后,會出現(xiàn)外部碎片 BI DDY是兩者的結(jié)合內(nèi)存骨理方法鏈表的內(nèi)存分配方法: 每個(gè)麥項(xiàng).P或h表示是進(jìn)程還是空侑 起始地址 段長度指向下一個(gè)表項(xiàng)的指針First-Fit:從頭到尾掃描,選擇第一個(gè)足夠的空間 Best-Fit:找一個(gè)最接近需求的空間(空間小到大井) Worst-Fit:總是分配最大的空閑區(qū)(空間大到小排)頁式管理:原理、數(shù)據(jù)結(jié)構(gòu).地址-地址映射過程-特點(diǎn) 把主存分為定長的塊,成為頁框把用戶進(jìn)程也分為與主存大小相等的塊,稱為頁內(nèi)部碎片只在進(jìn)程的最后一頁產(chǎn)生,沒有外部碎片(產(chǎn)生的碎片小,共享和保護(hù)不容易實(shí)現(xiàn)) MMU內(nèi)存管理單元用于把虛擬地址轉(zhuǎn)化為物理地址頁表用于
19、顯示進(jìn)程中每個(gè)頁在主存的哪個(gè)頁框中 邏輯地址由頁號和頁內(nèi)地址偏移組成 頁表寄存器PTR用于存放頁表在內(nèi)存中的起始地址和長度 碎片(內(nèi)碎片,外碎片),怎么產(chǎn)生,如何解決? 因?yàn)檎{(diào)入數(shù)據(jù)小于分區(qū)而產(chǎn)生分區(qū)空間的浪費(fèi),成為內(nèi)部碎片 在分區(qū)之外的碎片.成為外部碎片內(nèi)存緊縮解決 邏輯地址向物理地址的轉(zhuǎn)換過程就是重定位 緊縮亦稱作稱作“緊湊” “移動” 段式內(nèi)存管理原理、數(shù)據(jù)結(jié)構(gòu)、地址組成、地址變換、特點(diǎn) 不同段的長度不同,段的長度可以在運(yùn)行中進(jìn)行改變 產(chǎn)生的碎片浪費(fèi)存儲空間,共享和保護(hù)容易實(shí)現(xiàn)段頁式內(nèi)存管理原理.數(shù)據(jù)結(jié)構(gòu)、地址組成、地址變換.特點(diǎn)將用戶的地址空間分段,段內(nèi)按內(nèi)存頁框的大小分頁 虛擬地址按
20、段號,段內(nèi)頁號,和頁內(nèi)位移三部分組成覆蓋與交換:原理.特點(diǎn)、比較覆蓋:在任何時(shí)候,都只能在內(nèi)存中保留所需要的指令,新的指令可以覆蓋不要的指令和 數(shù)據(jù)不需要操作系統(tǒng)的特別支持交換:在內(nèi)存不足的情況下,需要把一個(gè)進(jìn)程整個(gè)換入和換出(進(jìn)程分配固定的交換空間)第9章虛擬內(nèi)存虛擬存儲器槪念、原理、實(shí)現(xiàn)方法、理論基礎(chǔ)(局部性原理概念:在一個(gè)新進(jìn)程那個(gè)投入運(yùn)行之前,OS只把開始時(shí)需要的幾頁/段裝入內(nèi)存,進(jìn)程 啟動運(yùn)行,其余部分留在雄盤上進(jìn)程運(yùn)行時(shí),如果欲取的指令或要訪問的數(shù)據(jù)己在內(nèi)存, 則繼續(xù)執(zhí)行如果不在內(nèi)存(缺頁/段)OS負(fù)責(zé)把所襦的頁/段調(diào)入內(nèi)存,然后進(jìn)程繼續(xù)執(zhí)行請求調(diào)入如果內(nèi)存己滿,OS選擇內(nèi)存中暫時(shí)
21、不用的頁/段,調(diào)出到磁盤上;騰出內(nèi) 存空間后,再調(diào)入需要的頁/段置換功能虛擬使用戶邏輯存儲器與原理:允許僅把進(jìn)程的一部分裝入內(nèi)存就可運(yùn)行進(jìn)程,具有請求調(diào)入和置換功能,從 邏輯上擴(kuò)充內(nèi)存容量(用戶看到的):容量巨大的存儲器 物理存儲器分離.實(shí)現(xiàn)方式S請求分頁系統(tǒng)/頁式虛擬存儲系統(tǒng)分頁+親求調(diào)頁+頁面置換請求分頁系統(tǒng)/段式虛擬存儲系統(tǒng)分段+請求調(diào)段+分段置換段頁式虛擬存儲系統(tǒng)段頁式+請求調(diào)頁+頁面置換理論基礎(chǔ)!局部性原理在一段時(shí)間內(nèi),程序的執(zhí)行僅限于某個(gè)部分,所訪問的存儲空間也局限于某個(gè)區(qū) 域慮擬存儲器的特征離散性內(nèi)存的分配方式離散多次行進(jìn)程執(zhí)行時(shí)不必全部裝入內(nèi)存進(jìn)程被分成多次調(diào)入內(nèi)存對換性在進(jìn)程
22、執(zhí)行過程中,e時(shí)不需要的代碼和數(shù)據(jù)被換出,換入需要的部分進(jìn)程的換入換出虛擬性從邏輯上擴(kuò)充內(nèi)存容量用戶看到的請求頁式管理基本原理:當(dāng)需要一頁時(shí),才把該頁調(diào)入內(nèi)存調(diào)頁程序/頁面調(diào)度程序只調(diào)入需要的頁,進(jìn)程裝入需要I/O量減少進(jìn)程需要的內(nèi)存空間減少 內(nèi)存可以容納更多用戶進(jìn)程 什么是缺頁中斷.發(fā)生時(shí)機(jī)及處理過程缺頁/頁故障/頁錯(cuò)誤進(jìn)程執(zhí)行時(shí),要訪問頁不在內(nèi)存缺頁中斷OS響應(yīng)缺頁中斷,把所需頁面調(diào)入內(nèi)存發(fā)生時(shí)機(jī):在指令執(zhí)行期間產(chǎn)生中斷信號,并被處理處理過程:引起缺頁中斷的指令被重新執(zhí)行置換策略(OPT、FIFO. LRU):計(jì)算缺頁次數(shù).缺頁中斷率、判別是否有Belady異 常頁面i換的峽頁處理基本流程
23、:1查找所需頁面在磁盤上的位置2. 找到一個(gè)空閑頁框,如果沒有,(1) 應(yīng)用頁面置換算法選擇一個(gè)“犧牲”頁框(2) 如果“犧牲”頁框中的頁被修改過,把它寫回磁盤(3) 更新頁表和頁框表3. 將所需頁面讀入空閑頁框,更新頁表和頁框表4重啟進(jìn)程(導(dǎo)致缺頁的指令)LRU:最近最少使用 OPT:理論最佳算法FIFO:先進(jìn)先出算法邏輯地址到物理地址轉(zhuǎn)換 存儲的共享與保護(hù)方法保護(hù):存儲區(qū)域保護(hù)和存儲方式保護(hù)什么是TLB?其作用?描述帶有TLB的地址轉(zhuǎn)換過程TLB (快表):傳輸后備緩沖器是一個(gè)內(nèi)存管理單元作用:用于改進(jìn)虛擬地址到物理地址轉(zhuǎn)換速度的緩存頁式地址=頁面其實(shí)地址+頁內(nèi)偏移地址什么是Behidy異
24、常?哪一種算法會產(chǎn)生?為什么? 缺頁率隨頁框分配的數(shù)量增加而增加FIFO頁置換 請求段式管理的原理請求分段系統(tǒng)是在分段系統(tǒng)的基礎(chǔ)上,增加了請求調(diào)段及分段置換功能后形成的,以 分段作為換入、換出的單位.虛擬段頁式原理地址轉(zhuǎn)換什么是顛簸(抖動)?為什么會出現(xiàn)?進(jìn)程不斷的缺頁、調(diào)頁,幾乎不能完成有效工作分配給進(jìn)程的頁框數(shù) < 進(jìn)程當(dāng)前運(yùn)行需要的頁面數(shù)原因:CPV利用率低增加多道程序度每個(gè)進(jìn)程的頁框數(shù)更少“>缺頁次數(shù)更多 >CPU利用率更低第10章文件管理概念:文件、目錄、目錄項(xiàng)、記錄、域、文件管理系統(tǒng)、路徑、當(dāng)前路徑 文件:記錄在外存上的相關(guān)信息的具有名稱的集合 目錄:文件屬性的集
25、合,本身也是文件目錄項(xiàng):記錄:一組相關(guān)的域的集合,用于描述一個(gè)對象某方面的屬性 域:基本數(shù)據(jù)元素一個(gè)域包含一個(gè)值描述一個(gè)域:數(shù)據(jù)類型、長度 域的長度.固定的.可變的文件管理系統(tǒng):操作系統(tǒng)的一部分5最可見的部分路徑:當(dāng)前路徑:文件系統(tǒng)的功能和目的OS中負(fù)責(zé)操縱和管理文件的一整套設(shè)施方便用戶“按名存取”實(shí)現(xiàn)文件的共享和保護(hù)為用戶提供管理各種文件的方法存取方便、格式統(tǒng)一、安全可靠功能:創(chuàng)建、刪除、打開.關(guān)閉、讀、寫.執(zhí)行文件管理目錄管理文件存儲空間管理 文件的共享和保護(hù) 提供方便的接口文件的組織(邏輯)結(jié)構(gòu):類型、特點(diǎn)文件的邏輯結(jié)構(gòu)/文件組織文件中記錄的組織結(jié)構(gòu)由用戶訪問記錄的方式?jīng)Q定從用戶觀點(diǎn)出發(fā)
26、觀察到的文件組織形式,用戶可以直接處理的數(shù)據(jù)和結(jié)構(gòu),獨(dú)立 于物理特性文件的物理結(jié)構(gòu)游儲結(jié)構(gòu)文件在輔存上的存儲組織方式,與存儲介質(zhì)的存儲性能有關(guān),依賴于組塊策略. 文件分配策略 兩大類型:有結(jié)構(gòu)文件/記錄文件用戶對文件內(nèi)的信息按邏輯上獨(dú)立的含義再劃分信息單位一一錄由一個(gè)以上的記錄構(gòu)成定長記錄變長記錄:域的數(shù)目不同,域的長度不定無結(jié)構(gòu)文件噴式文件用戶對文件內(nèi)的信息不再劃分可獨(dú)立的單位整個(gè)文件由一串順序的字符流組成文件的存取方法訪問文件中信息的方式典型的存取方式:順序存?。阂粋€(gè)記錄接著一個(gè)記錄直接存取/隨機(jī)存取文件由定長的邏輯記錄組成 程序可以按任意次序訪問記錄 基于隨機(jī)存取設(shè)備素引存取文件存取控制
27、矩陣與文件存取控制表(FCB相關(guān) 文件控制塊FCB用于描述和控制文件的數(shù)據(jù)結(jié)構(gòu)包括了文件名和文件的各種屬性文件控制塊與文件一一對應(yīng) 文件目錄/目錄文件控制塊的有序集合一個(gè)文件控制塊就是一個(gè)文件目錄項(xiàng)一個(gè)文件目錄也被看作是一個(gè)文件,稱為目錄文件第u章文件系統(tǒng)實(shí)現(xiàn)文件系統(tǒng)的層次結(jié)構(gòu)I/O控制組成設(shè)備驅(qū)動程序中斷處理程序任務(wù)內(nèi)存2磁盤基本文件系統(tǒng)向設(shè)備驅(qū)動程序發(fā)命令文件組織模塊掌握關(guān)于文件機(jī)器邏輯記錄和物理塊的信息文件的分配和位置邏輯記錄物理塊磁盤空閑空間管理邏輯文件系統(tǒng)管理關(guān)于文件系統(tǒng)結(jié)構(gòu)的信息一元數(shù)據(jù)目錄文件控制塊(FCB)負(fù)責(zé)文件的保護(hù)和安全文件分配方法三種方法:原理、優(yōu)缺點(diǎn)連續(xù)分配:原理:每
28、個(gè)文件占據(jù)磁盤上一組連續(xù)的物理塊優(yōu)點(diǎn):實(shí)現(xiàn)簡單,只需記錄起始位置(塊號)和長度(塊數(shù)) 缺點(diǎn):難以預(yù)知文件的大小i文件擴(kuò)展困難;空間浪費(fèi)(碎片) 鏈接分配:(文件一磁盤物理塊的鏈表原理5一個(gè)文件的物理塊可以分布在整個(gè)磁盤目錄項(xiàng)記錄起始塊號和終止塊號每個(gè)物理塊中包含指向下一塊的指針一一塊號僅供系統(tǒng)使用優(yōu)點(diǎn):解決了連續(xù)分配的全部問題沒有空間浪費(fèi)不需要事先知道文件大小文件大小可以増長缺點(diǎn):不能有效支持隨機(jī)訪問:下一塊指針占用物理塊空間;可靠性 索引分配:原理:把所有塊指針一起放到_個(gè)位置索引塊毎個(gè)文件有自己的索引塊索引塊一磁盤塊地址的數(shù)組索引塊第i個(gè)條目文件第i個(gè)物理塊的塊號文件目錄項(xiàng)包抵索引塊的地
29、址(塊號)優(yōu)點(diǎn):支持隨機(jī)訪問沒有外碎片充分利用磁盤空間缺點(diǎn):索引塊中空間的浪費(fèi)索引塊多大合適?多級索引分配 目錄項(xiàng)一級索引二級索引數(shù)據(jù)塊Unix的i節(jié)點(diǎn)的定義索引節(jié)點(diǎn)包含(13F)字節(jié)的地址信息第卜10個(gè)一指向文件的頭10塊(宜接地址)第11個(gè)一指向一個(gè)單重索引塊第12個(gè)一指向一個(gè)雙索引塊第13個(gè)一指向一個(gè)三重索引塊n的大小由系統(tǒng)決定磁盤存儲空間管理方法位圖、空閑塊鏈接、空閑目錄、成組塊鏈接法、空閑目錄/空閑表法 位圖:使用一個(gè)向量表示磁盤的分配情況向量的每一位對應(yīng)一塊0已分配1可用向量的長度取決于輔存的容量空閑塊鏈接:特殊的空閑塊一保存n個(gè)自由塊的地址前n-1個(gè)塊是實(shí)際的空閑塊最后一個(gè)又是特
30、殊的空閑塊 成組塊鏈接法:786#278# 80#220#-645#s_nfrees_free|0|HI|2|220#內(nèi)存中的專用塊961979899s_nfres_free0|HI|2|199#220#549#786#278#難點(diǎn):多級索引分配、成組塊鏈接法110#176#80#22ft#110常645#34第12章大容量存儲結(jié)構(gòu)確盤組織結(jié)構(gòu)磁道仕雄盤片的表面被邏輯地劃分成圓形磁道 扇區(qū)S:磁道再進(jìn)一步劃分為扇區(qū)柱面C:位于同一磁臂位置的磁道集合形成了柱面一次磯盤存取操作的時(shí)間組成 Ta=Tsek+Trd+T transfer 旋轉(zhuǎn)延遲時(shí)間:指定扇區(qū)移動到磁頭下面所經(jīng)歷的時(shí)間 Trd=:l/
31、(2rhr為磁盤轉(zhuǎn)速(轉(zhuǎn)/s)傳輸時(shí)間!把數(shù)據(jù)從磁盤獨(dú)處,或向磁盤寫入所經(jīng)歷的時(shí)間 Transfer=b/(rN) b:欲讀寫的磯盤調(diào)度算法先進(jìn)先出FIFO/先進(jìn)先出FCFS8按順序處理請求隊(duì)列中的項(xiàng)目公平、簡單,性能不佳最短尋道時(shí)間有限(SSTF)沿磁臂的移動方向掃描,選擇離當(dāng)前磁道最近的請求 磁頭到達(dá)此咅鳥彎§二佬豎圖蘭歹里反向掃描183 1990 1437 53 656798 122124III- IIIII:JC-SCAN算法只進(jìn)行一個(gè)方向的掃描當(dāng)?shù)竭_(dá)最后一個(gè)磁道后,磁頭迅速返回另一端,與SCAN算法的區(qū)別:在滿足一個(gè)方向上的最后 一個(gè)請求以后9不再繼續(xù)前進(jìn)號而是立即改變方向
32、183 199queue = 98, 183, 37, 122, 14.124, 65, 67 head starts at 5337536567II II98122124III4LO183 19914375365 6798122124與C-SCAN算法的區(qū)別:在滿足一個(gè)方向上的最后一個(gè) 請求以后,不再繼續(xù)前進(jìn),而是立即改變方向,直接到達(dá) 另一端的第it丐$宀亠亠_訪問順序,移動距離第13章I/O系統(tǒng)什么是緩沖?為什么要引入緩沖?緩沖是用來保存兩個(gè)設(shè)備之間或在設(shè)備和應(yīng)用程序之間所傳輸數(shù)據(jù)的內(nèi)存區(qū)域 理由:1處理數(shù)據(jù)流的生產(chǎn)者與消費(fèi)者之間的速度差異2. 協(xié)調(diào)傳輸數(shù)據(jù)大小不一致的設(shè)備3. 支持應(yīng)用
33、程序I/O的復(fù)制語義區(qū)分獨(dú)占設(shè)備、共享設(shè)備、虛擬設(shè)備獨(dú)占設(shè)備:在一段時(shí)間內(nèi)只允許一個(gè)進(jìn)程或線程訪問共享設(shè)備:在一段時(shí)間內(nèi)允許多個(gè)進(jìn)程或線程同時(shí)訪問對于每一時(shí)刻仍只允許一個(gè)進(jìn)程或線程訪問通常是可尋址、可隨機(jī)訪問的設(shè)備虛擬設(shè)備:通過虎擬技術(shù)把一臺獨(dú)占設(shè)備變換為若干臺邏輯設(shè)備,供若干個(gè)用戶(進(jìn)程)同 時(shí)使用,經(jīng)過虛擬技術(shù)處理的設(shè)備,稱為虛擬設(shè)備-理解對共享設(shè)備可同時(shí)使用的含義;見上一條簡述實(shí)現(xiàn)虛擬設(shè)備的基本條件,虛擬設(shè)備的實(shí)現(xiàn)原理采用Spooling技術(shù)后,每個(gè)作業(yè)都感到各自擁有獨(dú)占使用的設(shè)備Spooling 技術(shù):將一臺獨(dú)占設(shè)備改造成若干臺邏輯設(shè)備,供若干個(gè)用戶同時(shí)使用(像共事設(shè)備一樣) 經(jīng)過這種
34、技術(shù)處理后的設(shè)備成為虛擬設(shè)備解釋Spooling系統(tǒng)及其組成;輸入井和輸出井的位置及作用輸入井與輸出井系統(tǒng)在輔存開辟的用作緩沖的存儲區(qū)域,存放 從輸入設(shè)備輸入的信息存放作業(yè)的執(zhí)行結(jié)果(輸出)設(shè)備獨(dú)立性的含義應(yīng)用程序獨(dú)立于具體使用的物理設(shè)備邏輯設(shè)備.在應(yīng)用程序中,用邏輯設(shè)備名稱來請求使用某類設(shè)備 物理設(shè)備:系統(tǒng)實(shí)際執(zhí)行時(shí),用物理設(shè)備名稱系統(tǒng)完成邏輯設(shè)備名物理設(shè)備名設(shè)備分配方法設(shè)備的絕對號用戶申請?jiān)O(shè)備不用絕對號,應(yīng)當(dāng)指明設(shè)備類用戶申請多個(gè)同類設(shè)備“設(shè)備類,相對號”第一次作業(yè)書上的作業(yè)1.1操作系統(tǒng)的兩個(gè)主要目標(biāo)是什么?答:(1)為計(jì)算機(jī)用戶提供一個(gè)環(huán)境讓用戶可以方便地在計(jì)算機(jī)硬件上執(zhí)行程序(2)以
35、公平有效的方式分配計(jì)算機(jī)的資源用于解決特定的問題簡記為:1.方便用戶使用2.讓計(jì)算機(jī)高效執(zhí)行13多道程序設(shè)計(jì)的主要優(yōu)點(diǎn)是什么?答:通過把各種不同的用戶提出的對CPU和I/O設(shè)備的請求相互交替執(zhí)行而更高效地使用 CPU.它通過不斷讓CPU工作而提高CPI:的利用率 2.2系統(tǒng)模式和用戶模式之間的區(qū)別?答:系統(tǒng)模式:用于執(zhí)行操作系統(tǒng)任務(wù)用戶模式:用于執(zhí)行用戶任務(wù)通過只能在系統(tǒng)模式下執(zhí)行特權(quán)指令可以保證操作系統(tǒng)時(shí)刻控制整個(gè)計(jì)算機(jī)系統(tǒng),并保證 關(guān)鍵數(shù)據(jù)的安全(如果在用戶模式下執(zhí)行特權(quán)指令.這稱謂非法指令)2.3陷入與中斷之間的區(qū)別?中斷是一個(gè)系統(tǒng)中由硬件產(chǎn)生的用于改變執(zhí)行流程的信號-一個(gè)中斷控制程序來
36、處理中斯, 執(zhí)行完成后返回被中斷的程序指令.陷阱是因?yàn)殄e(cuò)誤,或者用戶程序的特定請求而引起的軟件生成的中斷-2.5下面哪些指令是特權(quán)指令? a)設(shè)置定時(shí)器的值;b)讀時(shí)鐘:C)清除內(nèi)存;d)關(guān)閉中斷,e) 從用戶模式切換到監(jiān)督程序模式。 aGd,e是特權(quán)指令 3.7系統(tǒng)調(diào)用的用途是什么? 答:允許用戶級進(jìn)程請求操作系統(tǒng)的服務(wù) 補(bǔ)充作業(yè)1. 把下面的應(yīng)用程序分為交互性和批處理兩類:字處理、按月生成銀行報(bào)表.計(jì)算圓周率 到百萬分位、飛行模擬器答:交互性:字處理、飛行模擬器批處理:按月生成銀行報(bào)表、計(jì)算M周率到百萬分位2. 寫出操作系統(tǒng)的五大功能。答:進(jìn)程管理.內(nèi)存管理、文件管理、設(shè)備管理、與用戶之間
37、的接口.3. 為什么操作系統(tǒng)的發(fā)展與計(jì)算機(jī)硬件的發(fā)展息息相關(guān)?答:如果沒有硬件的支持,很多方法無法實(shí)現(xiàn).例如,要想內(nèi)存中同時(shí)保存多個(gè)進(jìn)程則希 要相應(yīng)的寄存器支持。附加題1. 在網(wǎng)上搜集關(guān)于操作系統(tǒng)的定義,總結(jié)出其中的共性和特性。2. 操作系統(tǒng)是否應(yīng)包含像網(wǎng)絡(luò)瀏覽器和電子郵件程序這樣的應(yīng)用程序?談一下你的觀點(diǎn)。第二次作業(yè)書上的作業(yè)4.2論述短期、中期、長期調(diào)度之間的區(qū)別答:短期調(diào)度一從就緒隊(duì)列中選擇進(jìn)程執(zhí)行并把CPU分配給它.中期調(diào)度一主要在分時(shí)系統(tǒng)中使用.將內(nèi)存中的作業(yè)換出到外存中等到內(nèi)存允許的情 況下再換入到內(nèi)存中執(zhí)行長期調(diào)度一確定把哪個(gè)作業(yè)放到內(nèi)存中執(zhí)行.它們之間的主要區(qū)別是執(zhí)行的頻率不同
38、.短期調(diào)度執(zhí)行頻率高而長期調(diào)度執(zhí)行頻率低.4.4兩個(gè)進(jìn)程進(jìn)行上下文切換的操作3.2答:通常,操作系統(tǒng)必須保存當(dāng)前運(yùn)行進(jìn)程的狀態(tài)并恢復(fù)下一個(gè)要調(diào)度的進(jìn)程的狀態(tài)。保 存一個(gè)進(jìn)程的狀態(tài)通常包括CPU所有番存器的值和內(nèi)存的分配情況。5.3用戶級線程和內(nèi)核級線程之間的區(qū)別?相互對比的優(yōu)勢在哪里? 答:(1)內(nèi)核不知道用戶級線程的存在,但內(nèi)核知道內(nèi)核級線程的存在(2)內(nèi)核調(diào)度內(nèi)核級線程,而用戶級線程則由線程庫調(diào)度在要體現(xiàn)系統(tǒng)靈活性的時(shí)候使用用戶級線程好,因?yàn)橛脩艏壘€程可以自己設(shè)計(jì)自己的 調(diào)度。內(nèi)核級線程則被內(nèi)核知道,所以可以保證一個(gè)線程阻塞時(shí)可以調(diào)度一個(gè)進(jìn)程的另一 個(gè)線程,減少系統(tǒng)開銷。補(bǔ)充作業(yè)1.假設(shè)有
39、一個(gè)進(jìn)程,它的工作流程是先運(yùn)行150ms.然后進(jìn)行I/O,最后執(zhí)行250ms結(jié)束 如果系統(tǒng)中的進(jìn)程有三個(gè)狀態(tài),當(dāng)時(shí)間片為200ms請寫出進(jìn)程A從被系統(tǒng)接納到運(yùn)行結(jié)束所經(jīng)歷的狀態(tài)轉(zhuǎn)換并說明原因,答:被系統(tǒng)接納之后:就緒運(yùn)行(原因:被調(diào)度執(zhí)行)、運(yùn)行阻塞(原因:執(zhí)行I/O操作)、 阻塞就緒(原因:I/O操作完成)、就緒運(yùn)行(原因:被調(diào)度執(zhí)行)、運(yùn)行就緒(原因: 時(shí)間片到).就緒運(yùn)行(原因:被調(diào)度執(zhí)行).結(jié)束-2為什么現(xiàn)代計(jì)算機(jī)系統(tǒng)中還有中斷處理程序是用匯編語言編寫?答:通常高級語言不允許直接訪問CPU.例如,一個(gè)中斷控制程序需要打開或者關(guān)閉中斷 己完成對特定設(shè)備的服務(wù),或者處理一個(gè)進(jìn)程的堆棧中的數(shù)
40、據(jù)。并且,中斷例程應(yīng)該可以 以最快的速度執(zhí)行完成。附加題:1. 單線程文件服務(wù)器和多線程文件服務(wù)器的比較.如果數(shù)據(jù)保存在cache中,獲取數(shù)據(jù)的時(shí) 間jtlSms,而如果數(shù)據(jù)不在zche中,則需要另外的75ms將磯盤中的數(shù)據(jù)讀入cache.假設(shè) 高速緩存的命中率是2/3,則單線程文件服務(wù)器1秒鐘最多可以處理多少個(gè)請求?多線程服務(wù) 器1秒鐘最多可以處理多少個(gè)請求?答:在單線程服務(wù)器中,從cache中得到數(shù)據(jù)的時(shí)間是15 msec而從磁盤中得到數(shù)據(jù)的時(shí) 間是90 mseco則加權(quán)平均值長2/3*15+1/3*90=40,因此服務(wù)器1秒鐘可以處理1000/4(X25 次請求;對于多線程服務(wù)器,所有的
41、等待磁盤時(shí)間都可以相互覆蓋,所以每次磁盤請求都 只襦要15 msec.所以服務(wù)器1秒鐘可以處理1000/15=66.67次請求。第三次作業(yè)7-1什么是忙等待?操作系統(tǒng)中其他種類的等待有什么?忙等待是否可以完全避免?為什 么?答:所謂忙等待是不斷測試等待一個(gè)條件滿足。除了忙等待之外,操作系統(tǒng)中還有一種等待是讓進(jìn)程在等待狀態(tài)阻塞等待一個(gè)條件滿 足,當(dāng)條件滿足時(shí),通過中斷告知進(jìn)程忙等待的進(jìn)程浪費(fèi)CPU的時(shí)間,降低了效率,并且有可能導(dǎo)致優(yōu)先級反轉(zhuǎn).但是并不 能完全避免忙等待。如果在等待時(shí)間不是很長,并且系統(tǒng)內(nèi)部進(jìn)程的數(shù)量小,并且對CPU 利用率要求不高的無優(yōu)先級或者不同優(yōu)先級的進(jìn)程不會有同一個(gè)臨界區(qū)的
42、小型系統(tǒng)而言, 可以考慮使用忙等待的方式解決簡單的問題.另外,在多CPU的小型系統(tǒng)中,忙等待所導(dǎo) 致的優(yōu)先級反轉(zhuǎn)的問題并不存在,因此這樣的有優(yōu)先級的小型系統(tǒng)也可以使用忙等待7.9吸煙者問題:有3個(gè)吸煙者和一個(gè)供應(yīng)者第一個(gè)吸煙者有自己的煙草;第二個(gè)吸煙者 有自己的紙;第三個(gè)吸煙者有自己的火柴。供應(yīng)者每次隨機(jī)放兩樣?xùn)|西到桌子上提供給3 個(gè)吸煙者之中的一個(gè)以完成吸煙。請用信號量為吸煙者和供應(yīng)者進(jìn)程編寫程序 semaphore a2=0: semaphore agent=l;provider ()while(true)set i to value between 0 and 2; wait(agent
43、);/put two items on table signal (ai):Smoker (int i)while(true)wait (aCi); smoke;signal (agent);補(bǔ)充作業(yè)1.假設(shè)有三個(gè)進(jìn)程R、WK W2共享緩沖區(qū)B。B中只能存放一個(gè)數(shù).R每次從輸入設(shè)備 中讀一個(gè)整數(shù)放入B中。如果這個(gè)整數(shù)是奇數(shù),由取出打印,如果這個(gè)整數(shù)是偶數(shù), 則由W2取出打印。規(guī)定僅當(dāng)B中沒有數(shù)據(jù)或數(shù)據(jù)已經(jīng)被打印才會啟動R去讀數(shù)。W1、 W2對B中的數(shù)據(jù)不能重復(fù)打印,當(dāng)B中沒有數(shù)據(jù)時(shí)也不能打印。要求用信號量操作寫出 R、WK W2三個(gè)進(jìn)程的程序。(請?jiān)敿?xì)描述所使用變量的含義)semaphore
44、SO=1 (表示緩沖區(qū)中可以存放的»據(jù)數(shù)目)semaphore SUO (表示W(wǎng)1可以打印的數(shù)據(jù)數(shù)目) semaphore S2=0 (表示V2可以打印的數(shù)據(jù)數(shù)目) R:While (true)Read integer into item wail(SO);put item in Bif (itein%2= =1) signal(Sl); if (itein%2= =0) signal(S2);Wl:While (true)wail(Sl);Take item from B; signal(SO); P rint item;W2:While (true)wait(S2);Take i
45、tem from B;Signal(SO);Print item;2. 有一個(gè)鐵籠子,獵手放入老虎,農(nóng)民放入豬,動物園等待取走老虎,飯店等待取走豬。 籠子中只能放入一個(gè)動物-請使用信號量方法為獵手、農(nóng)民、動物園.飯店進(jìn)程編寫程序。semaphore no=l, tiger=O;pig=O; hunter 0 wait (no); put in tiger: signal(tiger);farmer ()wait(no); put in pig: signal(pig);zoo 0 wait(tiger); take tiger: signal(no);hotel 0 wait(pig); ta
46、ke pig; signal(no);3. 某寺廟,有小、老和尚若干有一個(gè)水缸,由小和尚提水入缸供老和尚飲用水缸可容 10桶水水取自一個(gè)井中,水井窄,每次只能容一個(gè)水桶水桶總數(shù)為3。水缸每次進(jìn)出 也僅1桶水,不可以同時(shí)進(jìn)行。請?jiān)O(shè)置合適的信號量描述小和尚老和尚取水.入水的算 法-Semaphore bucket=3, well=l Jar=10, empty=l, full=O; Void littkmonkOwhiled)wait(em pty); wait(bucket); wait(well 片 取水; signal(well); wait(jar); 放水; signalljar); s
47、ignal(bucket); signal(full);Void oldmonkOwhiled) wait(fuH); wait(bucket); wait(jar); 取水; signaKjar); signal(bucket); signahempty);附加題1.獨(dú)木橋問題:某條河上只有一座獨(dú)木橋,兩邊都有人要過河,為保證安全,一個(gè)方向有 人過河另一個(gè)方向的人就要等待,并且允許一個(gè)方向上的人連續(xù)過河。請使用信號量實(shí)現(xiàn) 正確的管理。semaphore s=l, sl=l,s2=l; int rcl,rc2;one 0wait (si);rcl+;if (rcl=l) wait (s); s
48、ignal (si);walk through;wait (si);rcl;if (re 1=0) signal (s); signal (si);another 0wait(s2);rc2+:if (rc2=l) wait (s):signal($2);walk through;wait(s2);rc2;if (rc2=0) signal (s);signal (s2);有人給出這樣的獨(dú)木橋問題的答案,看看有什么問題么?(1 )定義兩個(gè)信號量S1和S2 , S1 :=1 , S2 :操作管理時(shí)的程序應(yīng)如下:(2)假定開始時(shí)讓河?xùn)|的一個(gè)人先過橋,則用PVone()S1S2anotherOS2S
49、1第四次作業(yè) 書上的作業(yè):6.3 之 b,c,db.各個(gè)進(jìn)程的周轉(zhuǎn)時(shí)間FCFSRRSJFPhorhvPiIP19W16卩2II2I1P313rAISPi114-)19P31914g6G各個(gè)進(jìn)程的等待時(shí)間PCFSRRSJFrriorilvP.0q96P210J00內(nèi)II516幾1331IS卩51494Id最小的是SJF 8.8有3個(gè)進(jìn)程共享4個(gè)資源,一次只能保留或者釋放一個(gè)資源每個(gè)進(jìn)程最大需要2個(gè)單 元。說明不會發(fā)生死鎖。答:如果所有的資源都被占用并且還有一個(gè)或多個(gè)進(jìn)程在無限制的等待更多的資源那么死 鎖就會發(fā)生。但是,如果所有的4個(gè)資源都被占用,那么一定有一個(gè)進(jìn)程已經(jīng)得到了所有 的兩個(gè)資源,那么
50、這個(gè)進(jìn)程就可以運(yùn)行完并釋放它占用的兩個(gè)資源,這樣就可以讓其他的 進(jìn)程正確地工作完成。& 13a.Need 矩陣的樣子是(Max-Allocation) 07006050240020200b.因?yàn)橛幸粋€(gè)執(zhí)行次序是pK p2. p4、pO可以執(zhí)行完,所以是安全狀態(tài)。20424C.如果滿足,則系統(tǒng)的available變成1 1 0 0 allocation 變成0 01 41 30 60 0這時(shí)的Need是030060302400202這時(shí)如果PO先歸還它占有的(0012),那么available的值是(1112),可以 找到一個(gè)執(zhí)行次序p0,p2,pl,p3,p4保證所有進(jìn)程都可以安全執(zhí)行
51、完,會處于安全狀態(tài),因 此這個(gè)請求會被滿足。附加S1- N個(gè)進(jìn)程共享M個(gè)資源,一次只能保留或者釋放一個(gè)資源。每個(gè)進(jìn)程最大需要單元的 數(shù)目不超過并且所有的最大需求的總和小于M+N.說明不會發(fā)生死鎖答:使用與銀行家算法一樣的術(shù)語,定義claimCi=進(jìn)程I所需要的所有資源數(shù); allocationCi=當(dāng)前分配給進(jìn)程I的資源數(shù);deficiti=進(jìn)程I仍然需要的資源數(shù). 那么:NNN三小誠卩= -h aihcaisofs < Af + "死鎖時(shí),所有的資源都被占用:N£ a”0ca 為朿=M并且一些進(jìn)程在等待使用更多的資源但是從上面的等式中我們發(fā)現(xiàn)這意味著最后一個(gè)進(jìn)程j已
52、經(jīng)獲取了所有的資源,因?yàn)閐eficitj =0,這樣它就能 夠完成他的任務(wù)并釋放占用的所有資源,讓系統(tǒng)中其他的進(jìn)程繼續(xù)執(zhí)行。所以死鎖不會發(fā) 生.第五次作業(yè)書上的作業(yè)9.2內(nèi)部碎片與外部碎片之間的區(qū)別?答:一個(gè)作業(yè)占據(jù)了一個(gè)內(nèi)存區(qū)域或者頁,但是其中的一部分沒有使用,把沒有使用的部分成 為內(nèi)部碎片.內(nèi)部碎片不會被操作系統(tǒng)或者其他進(jìn)程使用,除非這個(gè)作業(yè)執(zhí)行完并且釋放它所占用的內(nèi) 存區(qū)域.外部碎片是在分區(qū)之間存在的不能夠被使用的小的內(nèi)存.9.5內(nèi)存按順序有100k, 500k. 200k, 300k. 600k,用首次適應(yīng)、最佳適應(yīng)和最差適應(yīng)如 何放置 212k, 417k, 112k, 426k 的
53、進(jìn)程?首次適應(yīng)算法放入500K的分區(qū)放入600K的分區(qū)放入288K的分區(qū)(產(chǎn)生新的分區(qū)288K = 500K - 212K) 必須等待最佳適應(yīng)算法答:(1)212K417K112K426K(2)212K5SC入300K的分區(qū)417MC入500K的分區(qū)112腹入200K的分區(qū)426iaftA600K 的分區(qū)(3) 最差適應(yīng)算法212K®入600K的分區(qū)417做入500K的分區(qū)112腹入388K的分區(qū)426K必須等待在這個(gè)例子中,最佳適應(yīng)算法是最好的。9. 8假設(shè)一個(gè)有8個(gè)Ik頁面的邏輯地址空間,映射到一個(gè)32個(gè)頁框的物理內(nèi)存,問:邏輯 地址多少位?物理地址多少位?邏輯地址是由頁號和頁內(nèi)地址位移組成物理地址是由員內(nèi)地址偏移和頁框號相組成a. 邏輯地址:13 bitsb. 物理地址:15 bits9.14為什么純分段比純分頁更容易實(shí)現(xiàn)共享可充入模塊答:因?yàn)槎问腔趦?nèi)存的邏輯劃分而不是物理劃
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年全球及中國乙烯-丙烯酸乙酯共聚物(EEA)行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報(bào)告
- 2025醫(yī)療服務(wù)合同有什么特征
- 2025委托經(jīng)營管理合同(詳細(xì))
- 提高時(shí)間管理能力的訓(xùn)練
- 提高學(xué)習(xí)效果的方法和技巧
- 2025廣告場地租賃合同樣本版
- 演出合同范文集合
- 續(xù)簽借款簡單的合同范本
- 建設(shè)工程廉政合同范本年
- 旅游資源開發(fā)合同2024
- 選擇性必修一 期末綜合測試(二)(解析版)2021-2022學(xué)年人教版(2019)高二數(shù)學(xué)選修一
- 學(xué)校制度改進(jìn)
- 各行業(yè)智能客服占比分析報(bào)告
- 年產(chǎn)30萬噸高鈦渣生產(chǎn)線技改擴(kuò)建項(xiàng)目環(huán)評報(bào)告公示
- 民謠酒吧項(xiàng)目創(chuàng)業(yè)計(jì)劃書
- 2023年珠海市招考合同制職員筆試參考題庫(共500題)答案詳解版
- 心電監(jiān)護(hù)考核標(biāo)準(zhǔn)
- 特種行業(yè)許可證申請表
- 古典芭蕾:基本技巧和術(shù)語
- 內(nèi)地居民前往香港或者澳門定居申請表
- DB43-T 2612-2023林下竹蓀栽培技術(shù)規(guī)程
評論
0/150
提交評論