組成第十五講:虛擬存儲器PPT演示課件(PPT 38頁)_第1頁
組成第十五講:虛擬存儲器PPT演示課件(PPT 38頁)_第2頁
組成第十五講:虛擬存儲器PPT演示課件(PPT 38頁)_第3頁
組成第十五講:虛擬存儲器PPT演示課件(PPT 38頁)_第4頁
組成第十五講:虛擬存儲器PPT演示課件(PPT 38頁)_第5頁
已閱讀5頁,還剩33頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、虛擬存儲器虛擬存儲器概述頁式虛擬存儲器段式虛擬存儲器段頁式虛擬存儲器存儲管理部件第1頁,共38頁。虛擬存儲器概述虛擬存儲器的提出1961年英國曼徹斯特大學(xué)Kilbrn等人提出;70年代廣泛地應(yīng)用于大中型計算機(jī)系統(tǒng)中,目前許多微型機(jī)也開始使用虛擬存儲器;是進(jìn)一步完善主存輔存存儲層次,解決主存容量提出的。第2頁,共38頁。虛擬存儲器概述什么是虛擬存儲器虛擬存儲器是建立在主存輔存物理結(jié)構(gòu)的基礎(chǔ)之上的,是由附加硬件裝置及操作系統(tǒng)存儲管理軟件組成的一種存儲體系;將主存和輔存的地址空間統(tǒng)一編址,形成一個龐大的存儲空間;借助于磁盤等輔助存儲器來擴(kuò)大主存容量,使之為更大或更多的程序所使用;虛擬存儲器可使主存的

2、容量像輔存(磁盤)一樣大;虛擬存儲器中程序可以像訪問主存一樣訪問外存。第3頁,共38頁。虛擬存儲器概述虛似存儲器的功能與特點虛擬存儲器是“主存外存”層次;是一個邏輯模型,并不是一個實際的物理存儲器;虛擬存儲器解決了存儲容量、存取速度和價格之間的矛盾,是管理存儲設(shè)備的有效方法;使計算機(jī)的存取容量達(dá)到輔存的容量使計算機(jī)存儲速度接近主存的速度使計算機(jī)整個存儲系統(tǒng)的成本接近輔存的成本有了虛擬存儲器,用戶無需考慮所編程序在主存中是否放得下或放在什么位置等問題。第4頁,共38頁。虛擬存儲器概述虛地址和實地址虛擬存儲器的輔存部分能讓用戶像內(nèi)存一樣使用,用戶編程時指令地址允許涉及輔存大小的空間范圍,這種指令地

3、址稱為虛地址(虛擬地址、邏輯地址);實際的主存儲器單元的地址則稱為實地址(主存地址、物理地址);虛地址范圍要比實地址大得多。第5頁,共38頁。虛擬存儲器概述物理地址由CPU地址引腳送出,用于訪問主存的地址。虛擬地址由編譯程序生成的,是程序的邏輯地址,其地址空間的大小受到輔助存儲器容量的限制。第6頁,共38頁。虛擬存儲器概述虛擬存儲器和cache存儲器虛擬存儲器和主存cache存儲器是兩個不同存儲層次的存儲體系。CPU-主存-輔存之間的關(guān)系CPU-Cache-主存之間的關(guān)系CPU主存 Cache CPU主存輔存第7頁,共38頁。虛擬存儲器概述虛擬存儲器和cache存儲器在概念上有不少相同之處:都

4、把程序劃分為一個個信息塊;運(yùn)行時都能自動地把信息塊從慢速存儲器向快速存儲器調(diào)度;都是采用一定的地址變換映射方法和替換策略,從原理上看是相同的;都基于程序局部性原理。第8頁,共38頁。虛擬存儲器概述虛擬存儲器和cache存儲器的不同之處:主要功能傳送信息塊長度訪問速度虛擬存儲器對未命中更加敏感對程序員是否透明第9頁,共38頁。虛擬存儲器概述主要功能:cache存儲器采用與CPU速度匹配的快速存儲元件彌補(bǔ)了主存和CPU之間的速度差距;虛擬存儲器雖然最大限度減少了慢速輔存對CPU的影響,但它的主要功能是用來彌補(bǔ)主存和輔存之間的容量差距,具有提供大容量和程序編址方便的優(yōu)點。第10頁,共38頁。虛擬存儲

5、器概述傳送信息塊長度:cache存儲器每次傳送的信息塊是定長的,只有幾十字節(jié);虛擬存儲器信息塊劃分方案很多,有頁、段等,長度均在幾百至幾百K字節(jié)左右。訪問速度:CPU訪問cache存儲器的速度比訪問慢速主存快510倍;虛擬存儲器中的主存速度要比輔存縮短1001000倍以上。第11頁,共38頁。虛擬存儲器概述虛擬存儲器對未命中更加敏感:主存cache存儲體系中CPU與cache和主存都建立了直接訪問的通路,一旦不命中時,CPU直接訪問主存并同時進(jìn)行向cache調(diào)度信息塊,從而減少了CPU等待的時間;輔助存儲器與CPU之間沒有直接通路,一旦在主存不命中時只能從輔存調(diào)塊到主存。因為輔存的速度相對CP

6、U差距太大,調(diào)度需要時間較長,因此CPU一般改換執(zhí)行另一個程序,等到調(diào)度完成后返回原程序繼續(xù)工作。第12頁,共38頁。虛擬存儲器概述對程序員是否透明:Cache存儲器存取信息的過程、地址變換和替換策略全部用硬件實現(xiàn),所以對各類程序員是透明的。主輔層次的虛擬存儲器基本上由操作系統(tǒng)的存儲管理軟件輔助一些硬件進(jìn)行信息塊的劃分和主輔存直接的調(diào)度,所以對設(shè)計存儲管理軟件的系統(tǒng)程序員來說,它是不透明的,而對廣大用戶,因為虛擬存儲器提供了龐大的邏輯空間可以任意使用,所以對應(yīng)用程序員是透明的。第13頁,共38頁。虛擬存儲器的分類虛存通過增設(shè)地址映象表機(jī)構(gòu)來實現(xiàn)程序在主存中的定位。這種定位技術(shù)是把程序分割成若干

7、個較小的段或頁,用相應(yīng)的映象表機(jī)構(gòu),來指明該程序的某段或某頁是否已裝入主存,若已裝入主存,則應(yīng)同時指明其在主存中所處的開始位置;若未裝入主存,則應(yīng)到輔存中去調(diào)段或頁,并建立起程序空間和實存空間的地址映象關(guān)系。這樣,程序執(zhí)行時通過查映象表,將程序(虛)地址變成主存地址再訪問主存。由于采用的存儲映象算法不同,形成了多種不同的存儲器管理方式的虛擬存儲器,其中主要有段式、頁式、段頁式三種。第14頁,共38頁。頁式虛擬存儲器頁式虛擬存儲器是以頁為信息傳送單位的虛擬存儲器。也就是說,在這種虛擬存儲器中,不論是虛擬空間,還是主存空間都被分成大小相等的頁,稱為頁面。第15頁,共38頁。頁式虛擬存儲器以固定大小

8、的頁面為單位程序按頁面大小劃分0頁1頁2頁3頁4頁5頁6頁第0頁第1頁第2頁第3頁主存用戶空間的頁面數(shù)目第16頁,共38頁。頁式虛擬存儲器邏輯頁:虛存空間,虛擬地址分為兩個字段:高位字段為邏輯頁號低位字段為頁內(nèi)行地址物理頁:主存空間,主存地址也分為兩個字段:高位字段為物理頁號低位字段為頁內(nèi)行地址頁面大小都是相等的,所以頁內(nèi)行地址(位數(shù))是相等的。第17頁,共38頁。頁式虛擬存儲器第18頁,共38頁。頁式虛擬存儲器CPU訪問主存時送出的是程序虛地址,計算機(jī)必須判斷該地址的存儲內(nèi)容是否已在主存里,如果不在的話,則需要將所在頁的內(nèi)容按存儲管理軟件的規(guī)定調(diào)入指定的主存頁后才能被CPU執(zhí)行;如果在的話,

9、則需找出主存在哪一頁。為此,通常需要建立一張?zhí)摰刂讽撎柵c實地址頁號的對照表,記錄程序的虛頁面調(diào)入主存時被安排在主存中的位置,這張表叫頁表。第19頁,共38頁。頁式虛擬存儲器頁表程序的頁號主存的頁號裝入位001121231304050611程序按頁面大小劃分0頁1頁2頁3頁4頁5頁6頁第0頁第1頁第2頁第3頁主存用戶空間的頁面數(shù)目第20頁,共38頁。頁式虛擬存儲器頁表內(nèi)按虛頁號順序排列,頁表的長度等于該程序虛頁數(shù)。每一虛頁的狀況占據(jù)頁表中一個存儲字,叫頁表信息字。第21頁,共38頁。頁式虛擬存儲器頁表信息字主要內(nèi)容有:“裝入位”:是1時表示該頁面內(nèi)容已經(jīng)從輔存調(diào)入主存,頁面有效;0則相反,頁面無

10、效,主存中尚未調(diào)入這一頁。“修改位”:記錄虛頁內(nèi)容在主存中是否修改過,如果修改過,則在這頁主存被新頁覆蓋時要把修改的內(nèi)容寫回到虛存去?!疤鎿Q控制位”:與替換策略有關(guān),可以用作計數(shù)位,記錄這頁在主存被CPU調(diào)用的歷史,反映這頁在主存的活躍程度?!皩嶍撎枴保褐甘竟芾碥浖⒃撎擁摲峙湓谥鞔娴奈恢脤嵉刂讽撎?。第22頁,共38頁。頁式虛擬存儲器每個程序都有一張頁表存放在主存,每張頁表都有一個頁表起始地址。程序投入運(yùn)行時,由存儲管理軟件把這個程序的頁表起始地址讀到頁表基址寄存器。CPU送來的是程序虛地址,必須首先進(jìn)行虛實地址的變換工作。第23頁,共38頁。頁式虛擬存儲器第24頁,共38頁。頁式虛擬存儲器基

11、地址寄存器內(nèi)容和地址虛頁號拼接成頁表索引地址,頁表索引地址是該虛頁的頁表信息字在頁表的地址,根據(jù)頁表索引地址就讀到頁表信息字。檢測頁表信息字裝入位的狀態(tài),裝入位若等于1,表示頁面有效,虛頁內(nèi)容已經(jīng)存儲在主存里,就進(jìn)行的操作,將信息字中的實頁號取出作為實地址的高位地址,而虛地址的頁內(nèi)地址部分作為實地址的低位地址,兩者拼接完成完整的實地址,CPU以此實地址訪問主存。如果檢測到裝入位是0狀態(tài),說明對應(yīng)的虛頁還沒有調(diào)入主存,于是計算機(jī)采取措施啟動輸入輸出系統(tǒng),把虛地址指示的一頁內(nèi)容從輔存調(diào)入實存空間再提供CPU訪問。第25頁,共38頁。頁式虛擬存儲器頁表在主存中的地址由頁表寄存器指出1 1 0 0 0

12、 0 0 0 0 0 0 0 1 0 0虛擬地址0000511004100031110210011101001100 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0存在位12 位偏移實存(主存)地址程序頁表第26頁,共38頁。頁式虛擬存儲器頁式管理的優(yōu)缺點優(yōu)點主存儲器的利用率比較高;頁面的起點和終點地址是固定的,方便造頁表,新頁調(diào)入主存也很容易掌握;地址變換的速度快,頁表項簡單,查找速度快;對磁盤的管理比較容易。第27頁,共38頁。頁式虛擬存儲器缺點程序的模塊化性能不好;由于頁長度固定,程序不可能正好是頁面的整數(shù)倍,因此最后一頁的零頭無法利用而造成浪費(fèi);頁式管理在存儲空間較大時,由

13、于頁表過大,效率降低;頁表很長,需要占用很大的存儲空間。第28頁,共38頁。頁式虛擬存儲器注意:虛頁內(nèi)容若沒有調(diào)入主存,則計算機(jī)啟動輸入輸出系統(tǒng),把虛地址指示的一頁內(nèi)容從輔存調(diào)入主存,再提供CPU訪問。虛地址和輔存地址不是一回事,程序員按虛存空間編址,虛地址由虛頁號和頁內(nèi)地址組成;輔存實際地址以磁盤為例,地址由磁盤機(jī)號、磁頭號、柱面號、塊號、塊內(nèi)地址組成。因此從輔存調(diào)頁時還需要虛存地址空間到輔存地址的變換。這個變換也可以采用類似前述頁表的方式,稱外頁表。第29頁,共38頁。段式虛擬存儲器現(xiàn)在程序編址大都采用模塊化設(shè)計方法,一個復(fù)雜的程序按其邏輯功能分解成一系列相互關(guān)聯(lián)且功能獨立的簡單模塊,一個

14、程序的執(zhí)行過程即是從一個功能模塊轉(zhuǎn)到另一個功能模塊執(zhí)行的過程。段式虛擬存儲器存儲空間不是機(jī)械地按固定長度的頁劃分,而是隨程序的邏輯結(jié)構(gòu)而定,每一段即是一個程序過程模塊或一個子程序或一個數(shù)組、一張表格等,程序員把所需的段連接起來就組成一個完整的程序。顯然每一段長度不相等。第30頁,共38頁。段式虛擬存儲器程序在虛擬空間編址,段地址裝入主存的任意位置。段虛地址向?qū)嵉刂返挠诚耜P(guān)系需要有一張段表指示。段表放在主存,主要內(nèi)容有段號、段起點、裝入位、段長等。程序空間 大小 段1 1K 段2 2K 段3 3K 段4 1K 段5 2K主存空間 地址0 1K3K 5K8K-1段1段5段31011K2035K13

15、K4051K12K段號段起點裝入位段長 段 表第31頁,共38頁。段式虛擬存儲器段號是程序分段的序號,也是段功能名稱的代號,一般有其程序上的邏輯含義。相鄰段并非一定是順序執(zhí)行的段號。段起點指明該段將在實存空間的起始位置。裝入位的含義與頁表相同,當(dāng)1時表示此段已裝入主存,0表示尚未裝入。段長指出段程序模塊的長度以便到實存選擇合適的定位空間。此外,段表同樣由存儲管理軟件設(shè)置,地址變換時從段表取到段的實存起始地址,再與原虛存中段內(nèi)地址部分相結(jié)合形成主存的實地址。第32頁,共38頁。段式虛擬存儲器段式虛擬存儲器虛實地址轉(zhuǎn)換段表長度段表起始地址位移量100段號2 越界920020038000500240

16、006001600010000基址段長段號+8100主存段表虛地址物理地址第33頁,共38頁。段式虛擬存儲器段式虛擬存儲器的優(yōu)缺點:優(yōu)點:因段與程序功能模塊相對應(yīng),模塊可以獨立編址,使得大程序編址可以多人分段并行工作,它比不分段頁從頭到尾的編程方法要節(jié)省很多時間;程序可以分段調(diào)試,目標(biāo)明確思路清晰,容易檢查錯誤;段修改、增刪時對其他段不產(chǎn)生影響;程序按邏輯功能分段,各有段名、便于程序段公用且按段調(diào)度可以提高命中率。第34頁,共38頁。段式虛擬存儲器缺點:由于段虛擬存儲器每段占據(jù)的存儲空間較大,且長度各不相等,所以虛頁調(diào)往主存時,主存空間的分配工作比較復(fù)雜,段與段之間的存儲空間常常不好利用而造成浪費(fèi);段表中地址字段和段長字段較長,降低查表速度。第35頁,共38頁。段頁式存儲器在段式、頁式虛擬存儲器的基礎(chǔ)上,設(shè)計人員推出段頁式虛擬存儲器結(jié)構(gòu)。段頁式虛擬存儲器是段式虛擬存儲器和頁式虛擬存儲器的結(jié)合;它把程序按邏輯單位分段以后,再把每段分成固定大小的頁;程序?qū)χ鞔娴恼{(diào)入調(diào)出是按頁面進(jìn)行的,但它又可以按段實現(xiàn)共享和保護(hù),兼?zhèn)漤撌胶投问降膬?yōu)點,是一種較好的虛擬存儲體系結(jié)構(gòu);缺點

溫馨提示

  • 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

提交評論