linux下的記憶體頁式管理

2021-09-23 17:23:07 字數 394 閱讀 7347

因為記憶體空間可能沒有連續的4gb大小的空間共乙個虛擬程序來執行,但是有很多不連續的物理記憶體空間,所以就考慮,將物理記憶體以4kb為單位進行劃分,同樣,將虛擬記憶體空間也以4kb為單位進行劃分。將常用的4kb部分放到記憶體中,不常用的放在磁碟中。當有需要的程序部分需要執行,但是沒有放到記憶體中,核心會產生乙個缺頁中斷,然後將相應的頁放到物理記憶體中去執行。

記錄每個虛擬記憶體頁跟物理記憶體頁之間對映關係的是乙個mma控制器,專門記錄轉換關係。

那麼如何進行轉化呢,對於每乙個程序:4gb每乙個位址有32位不同的0,1構成。對於乙個新的程序,首先,ccr3暫存器中儲存了這個程序開始的位址。位址的前10位找到頁目錄中的乙個位置,然後接下來的10位找到頁表中的乙個位置。最後的12位找到頁中的乙個位置,將這個轉化過程記錄在mma中。這就是linux下的頁式管理。

對於段頁式記憶體管理的理解

所以段頁式記憶體管理每讀取一資料,要訪問三次記憶體。第一次是由段表暫存器得到段表始址後訪問段表,由此取出對應段的頁表在記憶體中的位址 第二次是訪問頁表得到所需訪問的實體地址 第三次才能訪問真正需要訪問的物理單元。附 mmu是一種硬體電路,它包含兩個部件,乙個是分段部件,乙個是分頁部件,通過分段機制 ...

作業系統記憶體管理 簡單 頁式 段式 段頁式

一 記憶體管理的目的和功能 記憶體一直是計算機系統中寶貴而又緊俏的資源,記憶體能否被有效 合理地使用,將直接影響到作業系統的效能。此外,雖然物理記憶體的增長現在達到了n個gb,但比物理記憶體增長還快的是程式,所以無論物理記憶體如何增長,都趕不上程式增長的速度,所以作業系統如何有效的管理記憶體便顯得尤...

linux 段頁記憶體管理介紹

linux中cpu給出虛擬位址轉換到實體地址的過程以及訪存次數 快表存在時邏輯位址到實體地址的轉換過程 1.在cpu給出有效位址後,由位址變換機構自動地將頁號p送入高速緩衝暫存器 也會使用到段號 並將此頁號與快取記憶體中的所有頁號進行比較,若其中有與此相匹配的的頁號,便表示所要訪問的頁表項在快表中 ...