虛擬位址,邏輯位址,線性位址,實體地址有什麼區別

2021-07-22 03:48:30 字數 799 閱讀 9502

虛擬位址是由程式產生的由段選擇符和段內偏移位址組成的位址。這兩部分組成的位址並沒有直接訪問物理記憶體,而是要通過分段位址的變換處理後才會對應到相應的物理記憶體位址。

邏輯位址指由程式產生的段內偏移位址。有時把邏輯位址當成虛擬位址,兩者並沒有明確的界限。

線性位址是指虛擬位址到物理位址變換的中間層, 是處理器可定址的記憶體空間(稱為線性位址空間)中的位址。程式**會產生邏輯位址,或者說段中的偏移位址,加上相應段基

址就生成了乙個線性位址。如果啟用了分頁機制,那麼線性位址可以再經過變換產生實體地址。若是沒有採用分頁機制,那麼線性位址就是實體地址。

實體地址是指現在 cpu 

外部位址匯流排上的定址物理記憶體的位址訊號,是位址變換的最終結果。

為例:

分段分頁都是支援的。記憶體管理單元負責從虛擬位址到實體地址的轉化。邏輯位址是段標識+

段內偏移 

mmu(記憶體管理單元) 通過查詢段表,可以把邏輯位址轉換為線性位址。

如果cpu

沒有開啟分頁功能,線性位址就是實體地址;如果

cpu開啟了分頁功能,

mmu還需要查詢業表來將線性位址轉換為實體地址;

邏輯位址(

段表)--------> 

線性位址(頁表)

------------->

實體地址。

對映是一種多對一的關係,即不同的邏輯位址可以對映到同乙個線性位址上;

不同的線性位址也可以對映到同乙個實體地址上。而且同乙個線性位址在發生變化後,也可能被重新裝載到另外乙個實體地址上,所以這種多對一的關係也會隨時間發生變化。

頂 0

實體地址 虛擬位址 邏輯位址 線性位址

實際計算機的物理記憶體的位址,為32位或者64位。常見的記憶體條就是一類ram 隨機儲存儲存器,特點就是加電狀態下可任意讀寫,斷電後資訊消失 現代os都提供一技術 虛擬記憶體 virtual memory 它可以使給使用者錯覺好像自己在使用比實際物理記憶體大得多的記憶體,實際上通過對映把虛擬記憶體的...

虛擬位址 線性位址 邏輯位址

邏輯位址 logical address 是指由程式產生的與段相關的偏移位址部分 例如,你在進行c語言指標程式設計中,可以讀取指標變數本身值 操作 實際上這個值就是邏輯位址 它是相對於你當前程序資料段的位址,不和絕對實體地址相干 只有在intel實模式下,邏輯位址才和實體地址相等 因為實模式沒有分段...

實體地址 虛擬位址 線性位址以及邏輯位址

是記憶體中的記憶體單元實際位址,是記憶體中每個記憶體單元的編號,這個編號是順序排好的,實體地址的大小決定了記憶體中有多少個記憶體單元,實體地址的大小由位址匯流排的位寬決定。虛擬位址是cpu保護模式下的乙個概念,保護模式是80286系列和之後的x86相容cpu操作模式,在cpu引導完作業系統核心後,作...