日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

pae扩展内存 linux,Linux内核-内存管理-PAE(物理地址扩展)

發布時間:2023/12/2 linux 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 pae扩展内存 linux,Linux内核-内存管理-PAE(物理地址扩展) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Intel 通過在處理器上把管腳數從 32 增加到 36,以提高處理器的尋址能力,使其達到 2^36=64GB,然而線性地址的位數仍然是 32 位,為此,需引入一種新的分頁機制。從pentium pro 處理器開始,intel引入一種叫做 PAE 的機制,Linux 中使用了這種機制。

64GB 的 RAM 被分為 2^24 個頁框,頁表項的物理地址字段從 20 位擴展到 24 位,每個頁表項必須包含 12 個標志位(固定)和 24 個物理地址位(36-12,因為最多有 2^24 個頁框可以被頁表項指定),共 36 位,因此,每個頁表項須從 32 位擴展到 64 位(36位>32位,考慮到對齊,因此應將頁表項擴大一倍到64位)。

在4KB的常規分頁情況下,由于每個頁表項大小為64位,因而,原有4K大小的頁表中,僅能包含512個表項,這占用了32位線性地址中的9位,同理,由于頁目錄項與頁表項具有同樣的結構,高一級的頁目錄表中也僅能包含512個頁表項(目錄項),同樣占用了32位線性地址中的9位,此時,線性地址剩余位數為:32位(總位數)-12位(頁內偏移量)-9位(指示頁表中的索引)-9位(指示頁目錄表中的索引)=2位,同時,Linux引入了一個頁目錄指針表(PDPT)的頁表新級別,由4個64位表項構成,剩余的2位即用來指向PDPT中4個項中的一個。

下面4張圖詳細說明了4種情況下的頁表結構(引自Wikipedia)

【未啟用PAE下的4K分頁的頁表結構】

【未啟用PAE下的4M分頁的頁表結構】

【啟用PAE下4K分頁的頁表結構】

【啟用PAE下2M分頁的頁表結構】

線性地址的映射過程如下:

1)cr3:指向一個PDPT基地址

2)地址的31~30:確定PDPT項

3)地址的29~21:確定頁目錄項中的一個

此處,發生了分支:

A.如果頁目錄項的PS標志位等于0,那么頁大小是4K

4)地址的20~12:確定頁表的某一項

5)地址的11~0:確定偏移

B.如果PS=1,啟用2M大頁 4)地址的20~0:確定2M頁中的偏移量。

總結

以上是生活随笔為你收集整理的pae扩展内存 linux,Linux内核-内存管理-PAE(物理地址扩展)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。