Linux kernel の make menuconfig で
Configure standard kernel features (for small systems)
ってオプションを有効にすると CONFIG_EMBEDDED というのが設定されます (General Setup) が,これを設定していると,
Memory split (2G/2G user/kernel split)
というメニューが有効になります (Processor type and features).これ,ちょい前に調べた 4g/4g split と似てるな,って事で動きを見てみました.
8GB 搭載のマシンで PAE を有効にして,この設定を "2G/2G user/kernel split" (VMSPLIT_2G) にします.すると,
# cat /proc/meminfo MemTotal: 8227768 kB MemFree: 7146292 kB : (snip) HighTotal: 6345904 kB HighFree: 5466796 kB LowTotal: 1881864 kB LowFree: 1679496 kB :
こんな感じ.ま,想像通りです.(kernel 2.6.30, Plamo Linux 4.6 で試しました)
補足すると,普通はユーザ領域/カーネル領域は 32bit の x86 では 3GB/1GB となっていて,1GB のうち,LowMemory 領域と呼ばれるのは 800MB 超程度なんですよね〜.以下,別の環境ですが,
MemTotal: 2836484 kB : (snip) HighTotal: 1976548 kB HighFree: 1477536 kB LowTotal: 859936 kB LowFree: 803096 kB :
(ご参考)
しかし,CONFIG_EMBEDDED って名前はクセモノですな.まあ menuconfig の説明はそうは書かれてないのでマシですが.
But don't be confused by the naming: CONFIG_EMBEDDED nowadays means
http://lkml.indiana.edu/hypermail/linux/kernel/0602.0/2286.html
"options for people who know really what they do". It came originally
from the embedded world but applies now also to others.
No one has come up with a better option name up to now ...