64 位 Linux 内核上只有两个 2GB 内存可用

64 位 Linux 内核上只有两个 2GB 内存可用

我刚刚将 Debian Linux (Wheezy) 升级到 64 位内核以及用户模式二进制文件,试图在没有 PAE 的情况下使用系统中的 4GB 内存。

交换内核和软件包似乎进展顺利,但我没有得到预期的结果:

mymachine:~# dmesg | grep Memory
[    0.000000] Memory: 2007644k/2062784k available (3494k kernel code, 452k absent,
                       54688k reserved, 3042k data, 476k init)

mymachine:~# uname -m
x86_64

可能是什么原因造成的?我想进一步扩大内存,但如果我连现在的4GB都用不上,那就有点没用了:)

lshw输出显示内存已正确安装:

 *-memory
      description: System Memory
      physical id: 29
      slot: System board or motherboard
      size: 4GiB
    *-bank:0
         description: DIMM DDR Synchronous 1333 MHz (0.8 ns)
         product: PartNum0
         vendor: Manufacturer0
         physical id: 0
         serial: SerNum0
         slot: DIMM A1
         size: 2GiB
         width: 64 bits
         clock: 1333MHz (0.8ns)
    *-bank:1
         description: DIMM DDR Synchronous 1333 MHz (0.8 ns)
         product: PartNum1
         vendor: Manufacturer1
         physical id: 1
         serial: SerNum1
         slot: DIMM B1
         size: 2GiB
         width: 64 bits
         clock: 1333MHz (0.8ns)

我的 BIOS 中启用了内存重映射功能。

答案1

您的主板显然只支持 2GB 或者有问题。请参阅内核启动消息的 BIOS e820 部分,了解 BIOS 告诉内核它拥有的内存。

答案2

可能是硬件故障;至少这是我遇到这样的问题的原因。

  • 该硬件故障并未报告为故障,内核(ubuntu 上的 linux 4.15 x64)日志中没有任何可疑之处。

  • lshw(以及双启动中的 Windows)报告安装了 4Gb RAM,2 Gb x 2

free -m除了 Windows 中的任务管理器仅显示 2 Gb 可用 RAM 外,BIOS-e820 还报告:

BIOS-e820: [mem 0x0000000000100000-0x00000000784cefff] usable

(这是 2 Gb 间隔)

硬件:如果单独插入,一个接一个,第一个 DIMM 提供 2 Gb 总内存,另一个:0 Gb。

清洁 DIMM RAM 触点是解决方案:)

好结局:清理并再次插入系统后,我有 4 Gb。

相关内容