在實模式下,經過段部件的處理,直接輸出的就是實體地址,cpu可以直接用此位址訪問記憶體。
在保護模式下: 稱為線性位址,不過此時段基址已經不是真正的位址,而是乙個稱為選擇子。它本質是個索引,類似於陣列下標,通過這個索引便能在gdt中找到相應的段描述符,在該描述符中記錄了該段的起始、大小等資訊,這樣便得到了段基址。當沒有開啟位址分頁功能時,此線性位址就被當作實體地址來用,可直接訪問記憶體;若開啟了分頁功能,此線性位址就是虛擬位址(虛擬位址、線性位址在分頁機制下是乙個概念)。
這是因為最終的位址是由段基址+段內便宜位址組合而成的,由於段基址已經有預設值了,要麼在實模式下的預設段暫存器中,要麼就是在保護模式下的預設段選擇子暫存器指向的段描述符中,所以只要給出段內偏移位址就行了。
總結:線性位址、虛擬位址都不是真實的記憶體位址,他們都是用來描述程式或任務的位址空間。由於分頁功能是需要在保護模式下開啟的,32位系統保護模式下的定址空間是4gb,所以虛擬位址或者線性位址就是0~4gb的範圍。
轉換過程如下:
物理 線性 虛擬 邏輯 有效位址
在實模式下,經過段部件的處理,直接輸出的就是實體地址,cpu可以直接用此位址訪問記憶體。在保護模式下 稱為線性位址,不過此時段基址已經不是真正的位址,而是乙個稱為選擇子。它本質是個索引,類似於陣列下標,通過這個索引便能在gdt中找到相應的段描述符,在該描述符中記錄了該段的起始 大小等資訊,這樣便得到...
實體地址 虛擬位址 邏輯位址 線性位址
實際計算機的物理記憶體的位址,為32位或者64位。常見的記憶體條就是一類ram 隨機儲存儲存器,特點就是加電狀態下可任意讀寫,斷電後資訊消失 現代os都提供一技術 虛擬記憶體 virtual memory 它可以使給使用者錯覺好像自己在使用比實際物理記憶體大得多的記憶體,實際上通過對映把虛擬記憶體的...
實體地址 虛擬位址 線性位址以及邏輯位址
是記憶體中的記憶體單元實際位址,是記憶體中每個記憶體單元的編號,這個編號是順序排好的,實體地址的大小決定了記憶體中有多少個記憶體單元,實體地址的大小由位址匯流排的位寬決定。虛擬位址是cpu保護模式下的乙個概念,保護模式是80286系列和之後的x86相容cpu操作模式,在cpu引導完作業系統核心後,作...