试图在32位CPU上获得超过4GB内存的PAE,但不能。
~# grep -o pae /proc/cpuinfo
pae
pae
pae
pae
~# uname -a
Linux debian 4.9.0-6-686-pae #1 SMP Debian 4.9.82-1+deb9u3 (2018-03-02) i686 GNU/Linux
~# grep HIGHMEM /boot/config-4.9.0-6-686-pae
# CONFIG_NOHIGHMEM is not set
# CONFIG_HIGHMEM4G is not set
CONFIG_HIGHMEM64G=y
CONFIG_HIGHMEM=y
# CONFIG_DEBUG_HIGHMEM is not set
~# dmidecode -t memory | grep Enabled
Enabled Error Correcting Capabilities:
Enabled Size: 1024 MB (Single-bank Connection)
Enabled Size: 1024 MB (Single-bank Connection)
Enabled Size: 1024 MB (Single-bank Connection)
Enabled Size: 1024 MB (Single-bank Connection)
Enabled Size: 1024 MB (Single-bank Connection)
Enabled Size: 1024 MB (Single-bank Connection)仍有
~# free -h
total used free shared buff/cache available
Mem: 3.8G 29M 3.6G 10M 244M 3.5G
Swap: 9G 0B 9G也许有人能帮上忙,我去哪找?
发布于 2018-04-06 10:50:51
要诊断内存问题,最好的起点是内核引导消息;内核打印出与系统内存有关的所有内容。从dmesg的输出开始,寻找“内存”。
正如你所发现的,在你的例子中
[ 0.000000] WARNING: BIOS bug: CPU MTRRs don't cover all of memory, losing 2176MB of RAM.
[ 0.000000] WARNING: CPU: 0 PID: 0 at /build/linux-rtbsTs/linux-4.9.82/arch/x86/kernel/cpu/mtrr/cleanup.c:978 mtrr_trim_uncached_memory+0x2f5/0x326这表明BIOS没有为6 6GiB系统正确设置。
https://unix.stackexchange.com/questions/434174
复制相似问题