本文主要是參考linux0.11核心的32位位址區分,不過於現階段的64位位址區分差別不太大,理解linux0.11,有助於理解現階段的64位體系下位址的概念。(注意x86體系是小端存放資料)
理位址上(如果開啟分頁機制,還需要經過分頁才能對應上實體地址),虛擬地
位址所剩下的位址就是邏輯位址。應用程式設計師一般打交道的位址就是
邏輯位址,比如你列印變數的位址,指標的位址,malloc申請記憶體位址等。
乙個線性位址。如果開啟分頁機制,還需要在經過一次分頁轉換才能
到生成實體地址。如果不開啟分頁機制,執行緒位址=實體地址。
4,虛擬記憶體:是指計算機要給呈現出比實際記憶體大的多的記憶體量。它允許執行比實際記憶體大的多的程式,這使得許多大型專案在有限的資源下得
以實現,在linux0.11中他給每個程序64m的虛擬記憶體。因此邏輯位址的範圍是
:0x00000000到0x04000000。
虛擬位址 線性位址 邏輯位址
邏輯位址 logical address 是指由程式產生的與段相關的偏移位址部分 例如,你在進行c語言指標程式設計中,可以讀取指標變數本身值 操作 實際上這個值就是邏輯位址 它是相對於你當前程序資料段的位址,不和絕對實體地址相干 只有在intel實模式下,邏輯位址才和實體地址相等 因為實模式沒有分段...
實體地址 虛擬位址 邏輯位址 線性位址
實際計算機的物理記憶體的位址,為32位或者64位。常見的記憶體條就是一類ram 隨機儲存儲存器,特點就是加電狀態下可任意讀寫,斷電後資訊消失 現代os都提供一技術 虛擬記憶體 virtual memory 它可以使給使用者錯覺好像自己在使用比實際物理記憶體大得多的記憶體,實際上通過對映把虛擬記憶體的...
實體地址 虛擬位址 線性位址以及邏輯位址
是記憶體中的記憶體單元實際位址,是記憶體中每個記憶體單元的編號,這個編號是順序排好的,實體地址的大小決定了記憶體中有多少個記憶體單元,實體地址的大小由位址匯流排的位寬決定。虛擬位址是cpu保護模式下的乙個概念,保護模式是80286系列和之後的x86相容cpu操作模式,在cpu引導完作業系統核心後,作...