一、基本概念:實體地址、邏輯位址、虛擬位址
物理記憶體的位址,也就是記憶體條上的位址。用於記憶體晶元級的單元定址,與處理器和cpu連線的位址匯流排相對應。
在有位址變換功能的計算機中,訪問指令給出的位址 (運算元)
叫邏輯位址,也叫相對位址
。要經過定址方式
的計算或變換才得到記憶體儲存器
中的實體地址
。也是使用者程式中使用的位址。
當程式在執行時,有一部分資源還沒有用上或者同時開啟幾個程式卻只操作其中乙個程式時,系統沒必要將程式所有的資源都塞在物理記憶體中,於是,系統將這些暫時不用的資源放在虛擬記憶體上,等到需要時在調出來用。這段虛擬記憶體上的位址,就是虛擬位址。
二、記憶體管理方式
1. 記憶體管理有塊式管理,頁式管理,段式和段頁式管理。現在常用段頁式管理。
2. 段頁式管理
段頁式系統的基本原理,是基本分段儲存管理方式和基本分頁儲存管理方式原理的結合,即先將使用者程 序分成若干個段,再把每個段分成若干個頁,並為每乙個段賦予乙個段名。右圖標出了乙個作業的位址空 間和地 址結構。該作業有三個段,頁面大小為4 kb。在段頁式系統中,其位址結構由段號、段內頁號及 頁內 位址三部分所組成
三、windows裡的記憶體管理
1.虛擬位址的分配
windows為每個程序分配了4gb的虛擬位址空間,讓每個程序都認為自己擁有4gb記憶體空間(32位機)。當乙個程式執行時,windows就使得該程序擁有2g的位址空間,另外2g用於共享系統使用。
2. 物理記憶體與虛擬記憶體的對映
物理記憶體到虛擬記憶體的對映使用對映表來完成,該對映表就是頁表。
3. 記憶體的分頁
4k為一頁,即4k就是乙個最小單位。
windows記憶體管理
32位平台下,cpu的定址能力為4gb,pc中有些裝置 如顯示卡 都提供自己的裝置記憶體,這部分記憶體會對映到pc的物理記憶體上,也就是讀寫這段物理記憶體位址,其實是在讀寫裝置記憶體位址,而不會讀寫物理記憶體位址。雖然提供了4gb的定址能力,但是實際可能沒有這麼大的物理記憶體,這樣就引入了虛擬記憶體...
Windows 記憶體管理
windows 2000 使用基於分頁機制的虛擬記憶體。每個程序有4gb的虛擬位址空間。基於分頁機制,這4gb位址空間的一些部分被映 物理記憶體,一些部分對映硬碟上的交換檔案,一些部分什麼也沒有對映。程式中使用的都是4gb位址空間中的虛擬位址。而訪問物理記憶體,需要使用實體地址。下面我們看看什麼是實...
Windows記憶體管理
虛擬位址空間 程序可用的虛擬位址範圍稱為該程序的 虛擬位址空間 每個使用者模式程序都有其各自的專用虛擬位址空間。對於 32 位程序,虛擬位址空間通常為 2 gb,範圍從 0x00000000 至 0x7fffffff。那麼什麼又是使用者模式?使用者模式與核心模式 這同樣是cpu的概念。cpu就有這兩...