




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、虛擬存儲器二、二、 虛擬存儲器的概念虛擬存儲器的概念 虛擬內存(虛擬內存(Virtual Memory)是指在具有)是指在具有層次結構存儲器的計算機系統中,采用自層次結構存儲器的計算機系統中,采用自動實現部分裝入和部分對換功能,為用戶動實現部分裝入和部分對換功能,為用戶提供一個比物理主存容量大得多的可尋址提供一個比物理主存容量大得多的可尋址的一種的一種“主存儲器主存儲器”。它使用戶邏輯存儲。它使用戶邏輯存儲器與物理存儲器分離,是操作系統給用戶器與物理存儲器分離,是操作系統給用戶提供的一個比真實內存空間大得多的地址提供的一個比真實內存空間大得多的地址空間空間 。實現虛擬存儲器的物質基礎是二級存儲
2、器結構和動實現虛擬存儲器的物質基礎是二級存儲器結構和動態地址轉換機構。經過操作系統的改造,把計算機態地址轉換機構。經過操作系統的改造,把計算機的內存與外存有機的結合起來使用,從而得到一個的內存與外存有機的結合起來使用,從而得到一個容量很大的容量很大的“內存內存”,這就是虛存。,這就是虛存。虛擬存儲器實質上是把用戶地址空間和實際的存儲虛擬存儲器實質上是把用戶地址空間和實際的存儲空間區分開來,當作兩個不同的概念。它的容量主空間區分開來,當作兩個不同的概念。它的容量主要受到兩方面的限制:(要受到兩方面的限制:(1)指令中表示地址的字)指令中表示地址的字長。一個虛擬存儲器的最大容量是由計算機的地址長。
3、一個虛擬存儲器的最大容量是由計算機的地址結構確定的。如:若結構確定的。如:若CPU的有效地址長度為的有效地址長度為32位,位,則程序可以尋址范圍是則程序可以尋址范圍是0232 -1 ,即虛存容量為,即虛存容量為 4GB。(2)外存的容量。虛擬存儲器的容量與主存的外存的容量。虛擬存儲器的容量與主存的實際大小沒有直接的關系,而是由主存與輔存的容實際大小沒有直接的關系,而是由主存與輔存的容量之和所確定。量之和所確定。三、虛擬內存的特征三、虛擬內存的特征虛擬性。虛擬內存不是擴大實際的物理內存,而虛擬性。虛擬內存不是擴大實際的物理內存,而是擴充邏輯內存的容量。是擴充邏輯內存的容量。部分裝入。每個進程不是
4、全部裝入內存,而是分部分裝入。每個進程不是全部裝入內存,而是分成若干個部分。當進程需要執行時,才將當前運成若干個部分。當進程需要執行時,才將當前運行所需要的程序和數據裝入內存。行所需要的程序和數據裝入內存。對換性。在一個進程運行期間,它所需要的程序對換性。在一個進程運行期間,它所需要的程序和數據可以分多次調入。每次僅僅調入一部分,和數據可以分多次調入。每次僅僅調入一部分,以滿足當前程序執行的需要。而且,在內存中那以滿足當前程序執行的需要。而且,在內存中那些暫時不使用的程序和數據可以換到外存的交換些暫時不使用的程序和數據可以換到外存的交換區存放,以騰出盡量多的內存空間供可運行進程區存放,以騰出盡
5、量多的內存空間供可運行進程使用。使用。四、四、 引入虛擬存儲技術的好處引入虛擬存儲技術的好處大程序:大程序:可在較小的可用內存中執行較大的用可在較小的可用內存中執行較大的用戶程序;戶程序;大的用戶空間:大的用戶空間:提供給用戶可用的虛擬內存空提供給用戶可用的虛擬內存空間通常大于物理內存間通常大于物理內存(real memory)并發:并發:可在內存中容納更多程序并發執行;可在內存中容納更多程序并發執行;易于開發:易于開發:與覆蓋技術比較,不必影響編程時與覆蓋技術比較,不必影響編程時的程序結構的程序結構6.2 請求分頁存儲管理方式1、基本思想 在進程開始運行之前,不是裝入全部頁面,而是裝入幾個或
6、零個頁面,之后根據進程運行的需要,動態裝入其它頁面;當內存空間已滿,而又需要裝入新的頁面時,則根據某種算法淘汰某個頁面,以便裝入新的頁面XXXX7X5XXX34061260K-64K56K-60K52K-56K48K-52K44K-48K40K-44K36K-40K32K-36K28K-32K24K-28K20K-24K16K-20K12K-16K 8K-12K 4K-8K 0K-4K28K-32K24K-28K20K-24K16K-20K12K-16K 8K-12K 4K-8K 0K-4K虛地址空間虛地址空間物理地址空間物理地址空間 虛頁虛頁頁框頁框2、頁表表項頁號、內存塊號、駐留位、外存地
7、址、訪問位、修改位 駐留位(中斷位):表示該頁是在內存還是在外存 訪問位:根據訪問位來決定淘汰哪頁(由不同的算法決定) 修改位:查看此頁是否在內存中被修改過頁號頁號中斷位中斷位內存塊號內存塊號外存地址外存地址訪問位訪問位修改位修改位151413121110 9 8 7 6 5 4 3 2 10000000000000000111100001011000000000000011110010001110100110101 00010000000000100011000000000100110在在/不在內存不在內存頁表頁表虛地址虛地址8196物理地址物理地址245803、缺頁中斷(Page Faul
8、t)處理在地址映射過程中,在頁表中發現所要訪在地址映射過程中,在頁表中發現所要訪問的頁不在內存,則產生問的頁不在內存,則產生缺頁中斷缺頁中斷。操作。操作系統接到此中斷信號后,就調出缺頁中斷系統接到此中斷信號后,就調出缺頁中斷處理程序,根據頁表中給出的外存地址,處理程序,根據頁表中給出的外存地址,準備將該頁調入內存準備將該頁調入內存此時應將缺頁的進程掛起(調頁完成喚醒)此時應將缺頁的進程掛起(調頁完成喚醒)如果內存中有空閑塊,則分配一個塊,將如果內存中有空閑塊,則分配一個塊,將要調入的頁裝入該塊,并修改頁表中相應要調入的頁裝入該塊,并修改頁表中相應頁表項目的駐留位及相應的內存塊號頁表項目的駐留位
9、及相應的內存塊號若此時內存中沒有空閑塊,則要淘汰某頁若此時內存中沒有空閑塊,則要淘汰某頁(若被淘汰頁在內存期間被修改過,則要(若被淘汰頁在內存期間被修改過,則要將其寫回外存)將其寫回外存)思考 缺頁中斷同一般中斷的區別?缺頁中斷同一般中斷都是中斷,相同點是: 保護現場 中斷處理 恢復現場不同點: 一般中斷是一條指令完成后中斷,缺頁中斷是一條指令執行時中斷 一條指令執行時可能產生多個缺頁中斷。如指令可能訪問多個內存地址,這些地址在不同的頁中。6.3 頁面置換算法先進先出頁面淘汰算法(FIFO) 選擇在內存中駐留時間最長的頁并淘汰之選擇在內存中駐留時間最長的頁并淘汰之理想淘汰算法最佳頁面算法(OP
10、T) 淘汰以后不再需要的或最遠的將來才會用淘汰以后不再需要的或最遠的將來才會用到的頁面到的頁面最近最久未使用頁面淘汰算法(LRU) 選擇最后一次訪問時間距離當前時間最長選擇最后一次訪問時間距離當前時間最長的一頁并淘汰之的一頁并淘汰之 即淘汰沒有使用的時間最長的頁即淘汰沒有使用的時間最長的頁 實現代價很高實現代價很高 軟件方法或硬件方法軟件方法或硬件方法 某程序在內存中分配三個塊,訪問頁的走向為4,3,2,1,4,3,5,4,3,2,1,5,按FIFO、 LRU、OPT算法分別計算缺頁次數假設開始時所有頁均不在內存例1FIFO 4 3 2 1 4 3 5 4 3 2 1 5頁1 4 3 2 1
11、4 3 5 5 5 2 1 1頁2 4 3 2 1 4 3 3 3 5 2 2頁3 4 3 2 1 4 4 4 3 5 5 x x x x x x x x x 共缺頁中斷9次FIFO LRU 4 3 2 1 4 3 5 4 3 2 1 5頁1 4 3 2 1 4 3 5 4 3 2 1 5頁2 4 3 2 1 4 3 5 4 3 2 1頁3 4 3 2 1 4 3 5 4 3 2 x x x x x x x x x x共缺頁中斷10次 LRU OPT 4 3 2 1 4 3 5 4 3 2 1 5頁1 4 3 2 1 1 1 5 5 5 2 1 1頁2 4 3 3 3 3 3 3 3 5 5
12、5頁3 4 4 4 4 4 4 4 4 4 4 x x x x x x x 共缺頁中斷7次OPT練習某程序在內存中分配四個塊,訪問頁的走向為4,3,2,1,4,3,5,4,3,2,1,5,按LRU、OPT算法分別計算缺頁次數假設開始時所有頁均不在內存LRU 4 3 2 1 4 3 5 4 3 2 1 5頁1 4 3 2 1 4 3 5 4 3 2 1 5頁2 4 3 2 1 4 3 5 4 3 2 1頁3 4 3 2 1 4 3 5 4 3 2頁4 4 3 2 1 1 1 5 4 3 x x x x x x x x共缺頁中斷8次OPT 4 3 2 1 4 3 5 4 3 2 1 5頁1 4 3
13、 2 1 1 1 5 5 5 5 1 1頁2 4 3 2 2 2 2 2 2 2 5 5頁3 4 3 3 3 3 3 3 3 3 3頁4 4 4 4 4 4 4 4 4 4 x x x x x x 共缺頁中斷6次有一虛擬存儲系統,采用先進先出的頁面淘汰算法。在內存中為每個進程分配3塊。進程執行時使用頁號的順序為 4 3 2 1 4 3 5 4 3 2 1 5(1)該進程運行時總共出現幾次缺頁。(2)若每個進程在內存有4塊,又將產生幾次缺頁。(3)如何解釋所出現的現象。 例2FIFO 4 3 2 1 4 3 5 4 3 2 1 5頁1 4 3 2 1 4 3 5 5 5 2 1 1頁2 4 3
14、2 1 4 3 3 3 5 2 2頁3 4 3 2 1 4 4 4 3 5 5 x x x x x x x x x 共缺頁中斷9次m=3FIFO 4 3 2 1 4 3 5 4 3 2 1 5頁1 4 3 2 1 1 1 5 4 3 2 1 5頁2 4 3 2 2 2 1 5 4 3 2 1頁3 4 3 3 3 2 1 5 4 3 2頁4 4 4 4 3 2 1 5 4 3 x x x x x x x x x x共缺頁中斷10次m=4m=3時,缺頁中斷9次m=4時,缺頁中斷10次FIFO頁面淘汰算法會產生異常現象(Belady現象),即:當分配給進程的物理頁面數增加時,缺頁次數反而增加(1)
15、分配給進程的物理塊數(2) 頁本身的大小(3) 程序的編制方法(4) 頁淘汰算法5、影響缺頁次數的因素練習程序編制方法1:for j:=1 to 128 for i:=1 to 128 Ai,j:=0;程序編制方法2:for i:=1 to 128 for j:=1 to 128 Ai,j:=0;內存分配一頁,初始時矩陣數據均不在內存;內存分配一頁,初始時矩陣數據均不在內存;頁面大小為頁面大小為128128個整數;矩陣個整數;矩陣A A128X128128X128按行存放。按行存放。這兩個程序執行時分別會產生多少次缺頁中斷?這兩個程序執行時分別會產生多少次缺頁中斷?解程序編制方法程序編制方法1
16、:for j:=1 to 128 for i:=1 to 128 Ai,j:=0;程序編制方法程序編制方法2:for i:=1 to 128 for j:=1 to 128 Ai,j:=0;128*128128 在虛存中,頁面在內存與外存之間頻繁在虛存中,頁面在內存與外存之間頻繁調度,以至于調度頁面所需時間比進程調度,以至于調度頁面所需時間比進程實際運行的時間還多,此時系統效率急實際運行的時間還多,此時系統效率急劇下降,甚至導致系統崩潰。這種現象劇下降,甚至導致系統崩潰。這種現象稱為顛簸或抖動稱為顛簸或抖動原因:頁面淘汰算法不合理頁面淘汰算法不合理分配給進程的物理頁面數太少分配給進程的物理頁面
17、數太少6、顛簸(抖動)1、段表內容 增加: 特征位(在/不在內存,是否可共享) 存取權限位(讀,寫,執行) 標志位(是否修改過,能否移動) 擴充位(固定長/可擴充 )6.4 虛擬段式存儲管理 檢查內存中是否有足夠的空閑空間檢查內存中是否有足夠的空閑空間 若有,則裝入該段,修改有關數據結若有,則裝入該段,修改有關數據結構,中斷返回構,中斷返回 若沒有,檢查內存中空閑區的總和是若沒有,檢查內存中空閑區的總和是否滿足要求,是則應采用緊縮技術,轉否滿足要求,是則應采用緊縮技術,轉 ;否則,淘汰一(些)段,轉;否則,淘汰一(些)段,轉2、缺段中斷處理習題解答5-15分頁存儲管理中,信息的共享和保護有以下
18、缺點: 共享和保護的單位要對應多個頁表表目 可能共享不該共享的內容6-9:101734250塊號頁號10010111000000101001011100000100頁表首址頁表首址+09程序地址程序地址 0A5C物理地址為:物理地址為:125C101734250塊號頁號01001111000000100100111100000100頁表首址頁表首址+09程序地址程序地址 093C物理地址為:物理地址為:113C作業1、某程序在內存中分配3塊內存,初始為空,訪問頁的走向為2,3,2,1,5,2,4,5,3,2,5,2,用FIFO和LRU算法分別計算缺頁次數FIFO 2 3 2 1 5 2 4 5 3 2 5 2頁1 2 3 3 1 5 2 4 4 3 3 5 2頁2 2 2 3 1 5 2 2 4 4 3 5頁3 2 3 1 5 5 2 2 4 3 x x x x x x x x x共缺頁中斷9次LRU 2 3 2 1 5 2 4 5 3 2 5 2頁1 2 3 2 1 5 2 4 5 3 2 5 2頁2 2 3 2 1 5 2 4 5 3 2 5頁3 3 2 1 5 2 4 5 3 3 x x x x x x x 共缺頁中斷7次2、 有一頁式系統,其頁表存放在主存中。(1)如果對主存的一次存取要3us,問實現一次頁面訪問要多長時間。(2)如系統有快表,平均命
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高中科學探究:科學探究與TiO?石墨烯光催化技術實驗的結合教學論文
- 繪本教學在小學英語課堂中的創新與挑戰研究論文
- 智能家居節能技術在智能家居產品中的市場競爭力分析論文
- 藝術班培訓管理制度
- 芽苗菜栽培管理制度
- 茶葉類門店管理制度
- 除雪劑使用管理制度
- 訪問控制策略安全評估
- 財務會計建筑業會計科目
- 大班幼兒散文詩四季的禮物
- 安能快遞加盟合同協議
- 2024年大學生就業力調研報告-智聯招聘-202405
- 防靜電地膠板施工工藝及技術方案、措施
- 縫紉車間安全培訓課件
- 成人ICU患者外周動脈導管管理專家共識解讀
- 電力設備預防性試驗及維護合同
- 2025年各地低空經濟政策匯編
- 搬運重物安全培訓
- 2025年共青團入團考試測試題庫及答案
- 磷酸鐵及磷酸鐵鋰異物防控管理
- 《宮頸癌防治知識普及》課件
評論
0/150
提交評論