Linux
無 MMU 核心?
我想嘗試編譯無 mmu 核心。從我在配置中發現的情況來看,沒有這樣的選擇。有可能做到嗎?
您可以在大多數處理器架構(包括 x86)上編譯不支持 MMU 的 Linux 核心。但是,由於這種配置僅適用於知道自己在做什麼的使用者,因此該選項不包含在 等顯示的菜單中
make menuconfig
,make xconfig
除非在缺少 MMU 的嵌入式設備的少數架構上相對普遍。您需要.config
明確編輯文件以更改CONFIG_MMU=y
為CONFIG_MMU=n
. 或者,您可以通過編輯arch/*/Kconfig
與您的體系結構相對應的文件並將CONFIG MMU
以config MMU bool "MMU support" default y ---help--- Say yes. If you say no, most programs won't run.
即使您使該選項出現在菜單中,您也可能需要調整生成的配置以使其內部一致。無 MMU 的 x86 系統非常不尋常。
試驗無 MMU 系統的最簡單方法是在模擬器中執行真正的無 MMU 系統,使用硬體供應商提供的 Linux 核心配置或使用模擬器。
如果不清楚,普通的 Linux 系統需要一個 MMU。可以為沒有 MMU 的系統編譯 Linux 核心,但這會引入一些限制,阻止許多程序執行。從閱讀No-MMU 記憶體映射支持開始。我認為沒有 MMU 就不能使用 glibc,通常使用µClibc 。µClinux 項目的文件也可能是相關的(µClinux 是無 MMU Linux 的原始項目,儘管現在對無 MMU 系統的支持已集成到主核心樹中,因此您不需要使用 µClinux)。