ページサイズが4096ではないx86_64用のLinuxをコンパイルする方法は?

ページサイズが4096ではないx86_64用のLinuxをコンパイルする方法は?

ページサイズが4096より大きいx64 Linuxカーネルをコンパイルしようとしています。ブロックサイズの大きいファイルシステムはVFSを介してマウントする必要があります。他のアーキテクチャでは、カーネル構成を使用してページサイズを選択できます。 x86_64では動作しません。 x86_64でページサイズを変更できますか? PAGE_SHIFTを16に増やそうとしましたが、arch/x86/include/asm/page_types.hエラーが発生しました。

x86_64でさまざまなページサイズでビルドできる場合、どのページサイズがサポートされ、正しい設定は何ですか?

答え1

x86-64はこのアーキテクチャで4KiB、2MiB、および1GiBのページのみをサポートし、Linuxカーネルは4KiBの「大規模」ページ用にのみ構築できます。

ビルドシステムは、他のアーキテクチャでやや大きなページをサポートします。やや大きいページをサポート。たとえば、64ビットARMは16KiBおよび64KiBページをサポートします。

関連情報