linux 記憶體定址

2021-05-17 18:09:21 字數 416 閱讀 7082

1 實體地址、虛擬位址及線性位址

2 虛擬位址到實體地址的過程

記憶體定址的過程可以簡單理解為虛擬位址到實體地址的轉換過程。程式設計師所使用的虛擬位址,並不是直接送到記憶體匯流排,而是被送到記憶體管理單元(mmu,由乙個或一組晶元組成是一種硬體電路,實現虛擬位址到實體地址的轉換)。mmu包括分段機制和分頁機制,分段實現虛擬位址到線性位址的轉換,而分頁則實現線性位址到實體地址的轉換。

3 分段機制和分頁機制

linux中的段是整個線性位址的空間,段的基位址設為0,而段的界限為4gb。這時虛擬位址的表示:段基位址+偏移量,即等價於0+偏移量=線性位址,即linux中的虛擬位址空間就是線性位址空間,虛擬位址就是線性位址。

分頁在ia32中標準大小為4kb。linux的分頁機制採用**分頁模式,頁目錄,中間目錄,頁表。虛擬儲存的實現也是基於分頁機制來實現的。

linux 記憶體定址總結

邏輯位址到實體地址的轉換過程 邏 輯位址經過記憶體控制單元 mmu 的分段單元硬體電路之後轉換成線性位址,線性位址經過分頁單元的硬體電路轉換成實體地址。在mp中,多個cpu通過記憶體 仲裁器對ram進行併發的訪問 每個ram有乙個仲裁器 在up中也是有記憶體仲裁器的,因為cpu和dma控制器要併發的...

linux 記憶體定址總結

邏輯位址到實體地址的轉換過程 邏 輯位址經過記憶體控制單元 mmu 的分段單元硬體電路之後轉換成線性位址,線性位址經過分頁單元的硬體電路轉換成實體地址。在mp中,多個cpu通過記憶體 仲裁器對ram進行併發的訪問 每個ram有乙個仲裁器 在up中也是有記憶體仲裁器的,因為cpu和dma控制器要併發的...

linux 記憶體定址總結

邏輯位址經過記憶體控制單元 mmu 的分段單元硬體電路之後轉換成線性位址,線性位址經過分頁單元的硬體電路轉換成實體地址。在mp中,多個cpu通過記憶體仲裁器對ram進行併發的訪問 每個ram有乙個仲裁器 在up中也是有記憶體仲裁器的,因為cpu和dma控制器要併發的對ram進行訪問 2 段選擇符和段...