Kernel

更改我的記憶體頁面的大小?

  • June 20, 2021

我想將核心的頁面大小從 4KB 更改為 4MB,因為我的電腦增加了大量 RAM,而且我再也不會用完。

這個想法是需要大量記憶體的程序將花費更少的時間來分配頁面。我想它會提高性能,我想試試。

執行時我找不到任何地方make menuconfig。有沒有辦法做到這一點?

你可能想看看Transparent Hugepages。.config 項是 CONFIG_TRANSPARENT_HUGEPAGE。請注意,啟用此功能不會自動為您提供大頁面。您需要將 CONFIG_TRANSPARENT_HUGEPAGE_MADVISE 設置為“n”,以使其成為預設值。

另請注意,這不允許您選擇任意頁面大小。我允許使用架構的巨大頁面大小。對於 x86_64,這是 1Mb,請參閱https://en.wikipedia.org/wiki/Page_(computer_memory)#Huge_pages了解完整表格。

PAGESIZE 在核心編譯時設置。該選擇僅對 i386 硬體有效。如果您執行 64 位系統或任何其他體系結構,則頁面大小為 4K,並且無法更改。

引用自:https://unix.stackexchange.com/questions/80725