长话短说,Ubuntu 12.04 64 位仅检测到 4 GB 的 RAM,尽管安装了 8 GB。以下是我到目前为止为纠正此问题所采取的措施:
- 更换了两个 RAM 条,问题仍然存在。
- 更换主板,问题仍然存在。
- 从 Live CD 启动以查看是否是软件问题,结果仍然存在。
- BIOS 正确检测到 8 GB 内存,但显示其处于“单通道模式”。
当我第一次组装这个系统时(仅仅 3 周前),它能够很好地检测到正确的 RAM 数量。此后不久,我在机器中安装了一个新的电源(因为我订购的原始电源最终对我的机箱来说太小了)。在我看来,问题出现在我安装新电源之后。
从那时起,我更换了系统中的每个组件以进行故障排除,但没有更换电源。这可能是问题所在吗?如果存在某种电流问题,是否会导致内存以单通道模式运行?其他一切似乎都运行良好……硬盘驱动器、蓝光驱动器,唯一的问题是,在系统信息中,我看到报告的 CPU 速度有时会在 2700 MHz 和 800 MHz 之间跳跃。对于 Ubuntu 12.04 下的四核系统来说,这是正常的吗?
谢谢。
output of uname -m:
x86_64
output of free -m:
total used free shared buffers cached
Mem: 3680 3072 608 0 150 1755
-/+ buffers/cache: 1166 2513
Swap: 7912 0 7912
`*-firmware
description: BIOS
vendor: American Megatrends Inc.
physical id: 0
version: P1.50
date: 02/09/2012
size: 64KiB
capacity: 4032KiB
capabilities: pci upgrade shadowing cdboot bootselect socketedrom edd int13floppy1200 int13floppy720 int13floppy2880 int5printscreen int9keyboard int14serial int17printer acpi usb biosbootspecification
*-memory
description: System Memory
physical id: 6
slot: System board or motherboard
size: 8GiB
*-bank:0
description: DIMM DDR3 Synchronous 1333 MHz (0.8 ns)
product: 1333EL Series
vendor: Undefined
physical id: 0
serial: 00000000
slot: A1_DIMM0
size: 4GiB
width: 64 bits
clock: 1333MHz (0.8ns)
*-bank:1
description: DIMM DDR3 Synchronous 1333 MHz (0.8 ns)
product: Array1_PartNumber1
vendor: A1_Manufacturer1
physical id: 1
serial: A1_SerNum1
slot: A1_DIMM1
size: 4GiB
width: 64 bits
clock: 1333MHz (0.8ns)
*-cache:0
description: L1 cache
physical id: d
slot: L1 CACHE
size: 512KiB
capacity: 512KiB
clock: 1GHz (1.0ns)
capabilities: pipeline-burst internal write-back unified
*-cache:1
description: L2 cache
physical id: e
slot: L2 CACHE
size: 4MiB
capacity: 4MiB
clock: 1GHz (1.0ns)
capabilities: pipeline-burst internal write-back unified
以下是 BIOS e820 的信息:
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-provided physical RAM map:
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 0000000000000000 - 000000000009ec00 (usable)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 000000000009ec00 - 00000000000a0000 (reserved)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 00000000000e0000 - 0000000000100000 (reserved)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 0000000000100000 - 00000000bf77c000 (usable)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 00000000bf77c000 - 00000000bf7c5000 (ACPI NVS)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 00000000bf7c5000 - 00000000bf7cd000 (ACPI data)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 00000000bf7cd000 - 00000000bf7d1000 (reserved)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 00000000bf7d1000 - 00000000bf7d6000 (ACPI NVS)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 00000000bf7d6000 - 00000000bfa43000 (reserved)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 00000000bfa43000 - 00000000bfa4a000 (ACPI NVS)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 00000000bfa4a000 - 00000000bfa72000 (reserved)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 00000000bfa72000 - 00000000bfc75000 (ACPI NVS)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 00000000bfc75000 - 00000000bff00000 (usable)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 00000000fec00000 - 00000000fec01000 (reserved)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 00000000fec10000 - 00000000fec11000 (reserved)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 00000000fed00000 - 00000000fed01000 (reserved)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 00000000fed61000 - 00000000fed71000 (reserved)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 00000000fed80000 - 00000000fed90000 (reserved)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 00000000ff000000 - 0000000100000000 (reserved)
May 25 04:48:08 Arcturus kernel: [ 0.000000] BIOS-e820: 0000000100001000 - 000000012f000000 (usable)
May 25 04:48:08 Arcturus kernel: [ 0.000000] NX (Execute Disable) protection: active
May 25 04:48:08 Arcturus kernel: [ 0.000000] DMI 2.7 present.
May 25 04:48:08 Arcturus kernel: [ 0.000000] DMI: To Be Filled By O.E.M. To Be Filled By O.E.M./A75M-ITX, BIOS P1.50 02/09/2012
May 25 04:48:08 Arcturus kernel: [ 0.000000] e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved)
May 25 04:48:08 Arcturus kernel: [ 0.000000] e820 remove range: 00000000000a0000 - 0000000000100000 (usable)
May 25 04:48:08 Arcturus kernel: [ 0.000000] No AGP bridge found
May 25 04:48:08 Arcturus kernel: [ 0.000000] last_pfn = 0x12f000 max_arch_pfn = 0x400000000
May 25 04:48:08 Arcturus kernel: [ 0.000000] MTRR default type: uncachable
May 25 04:48:08 Arcturus kernel: [ 0.000000] MTRR fixed ranges enabled:
May 25 04:48:08 Arcturus kernel: [ 0.000000] 00000-9FFFF write-back
May 25 04:48:08 Arcturus kernel: [ 0.000000] A0000-BFFFF write-through
May 25 04:48:08 Arcturus kernel: [ 0.000000] C0000-CEFFF write-protect
May 25 04:48:08 Arcturus kernel: [ 0.000000] CF000-E7FFF uncachable
May 25 04:48:08 Arcturus kernel: [ 0.000000] E8000-FFFFF write-protect
May 25 04:48:08 Arcturus kernel: [ 0.000000] MTRR variable ranges enabled:
May 25 04:48:08 Arcturus kernel: [ 0.000000] 0 base 0000000000 mask FF00000000 write-back
May 25 04:48:08 Arcturus kernel: [ 0.000000] 1 base 00BFF00000 mask FFFFF00000 uncachable
May 25 04:48:08 Arcturus kernel: [ 0.000000] 2 base 00C0000000 mask FFC0000000 uncachable
May 25 04:48:08 Arcturus kernel: [ 0.000000] 3 disabled
May 25 04:48:08 Arcturus kernel: [ 0.000000] 4 disabled
May 25 04:48:08 Arcturus kernel: [ 0.000000] 5 disabled
May 25 04:48:08 Arcturus kernel: [ 0.000000] 6 disabled
May 25 04:48:08 Arcturus kernel: [ 0.000000] 7 disabled
May 25 04:48:08 Arcturus kernel: [ 0.000000] TOM2: 000000013f000000 aka 5104M
May 25 04:48:08 Arcturus kernel: [ 0.000000] x86 PAT enabled: cpu 0, old 0x7040600070406, new 0x7010600070106
May 25 04:48:08 Arcturus kernel: [ 0.000000] original variable MTRRs
May 25 04:48:08 Arcturus kernel: [ 0.000000] reg 0, base: 0GB, range: 4GB, type WB
May 25 04:48:08 Arcturus kernel: [ 0.000000] reg 1, base: 3071MB, range: 1MB, type UC
May 25 04:48:08 Arcturus kernel: [ 0.000000] reg 2, base: 3GB, range: 1GB, type UC
May 25 04:48:08 Arcturus kernel: [ 0.000000] total RAM covered: 3071M
May 25 04:48:08 Arcturus kernel: [ 0.000000] Found optimal setting for mtrr clean up
May 25 04:48:08 Arcturus kernel: [ 0.000000] gran_size: 64K chunk_size: 2M num_reg: 3 lose cover RAM: 0G
May 25 04:48:08 Arcturus kernel: [ 0.000000] New variable MTRRs
May 25 04:48:08 Arcturus kernel: [ 0.000000] reg 0, base: 0GB, range: 2GB, type WB
May 25 04:48:08 Arcturus kernel: [ 0.000000] reg 1, base: 2GB, range: 1GB, type WB
May 25 04:48:08 Arcturus kernel: [ 0.000000] reg 2, base: 3071MB, range: 1MB, type UC
May 25 04:48:08 Arcturus kernel: [ 0.000000] e820 update range: 00000000bff00000 - 0000000100000000 (usable) ==> (reserved)
May 25 04:48:08 Arcturus kernel: [ 0.000000] last_pfn = 0xbff00 max_arch_pfn = 0x400000000
May 25 04:48:08 Arcturus kernel: [ 0.000000] found SMP MP-table at [ffff8800000fcf10] fcf10
May 25 04:48:08 Arcturus kernel: [ 0.000000] initial memory mapped : 0 - 20000000
May 25 04:48:08 Arcturus kernel: [ 0.000000] 7 disabled
May 25 04:48:08 Arcturus kernel: [ 0.000000] TOM2: 000000013f000000 aka 5104M
May 25 04:48:08 Arcturus kernel: [ 0.000000] x86 PAT enabled: cpu 0, old 0x7040600070406, new 0x7010600070106
May 25 04:48:08 Arcturus kernel: [ 0.000000] original variable MTRRs
May 25 04:48:08 Arcturus kernel: [ 0.000000] reg 0, base: 0GB, range: 4GB, type WB
May 25 04:48:08 Arcturus kernel: [ 0.000000] reg 1, base: 3071MB, range: 1MB, type UC
May 25 04:48:08 Arcturus kernel: [ 0.000000] reg 2, base: 3GB, range: 1GB, type UC
May 25 04:48:08 Arcturus kernel: [ 0.000000] total RAM covered: 3071M
May 25 04:48:08 Arcturus kernel: [ 0.000000] Found optimal setting for mtrr clean up
May 25 04:48:08 Arcturus kernel: [ 0.000000] gran_size: 64K chunk_size: 2M num_reg: 3 lose cover RAM: 0G
May 25 04:48:08 Arcturus kernel: [ 0.000000] New variable MTRRs
May 25 04:48:08 Arcturus kernel: [ 0.000000] reg 0, base: 0GB, range: 2GB, type WB
May 25 04:48:08 Arcturus kernel: [ 0.000000] reg 1, base: 2GB, range: 1GB, type WB
May 25 04:48:08 Arcturus kernel: [ 0.000000] reg 2, base: 3071MB, range: 1MB, type UC
May 25 04:48:08 Arcturus kernel: [ 0.000000] e820 update range: 00000000bff00000 - 0000000100000000 (usable) ==> (reserved)
May 25 04:48:08 Arcturus kernel: [ 0.000000] last_pfn = 0xbff00 max_arch_pfn = 0x400000000
May 25 04:48:08 Arcturus kernel: [ 0.000000] found SMP MP-table at [ffff8800000fcf10] fcf10
May 25 04:48:08 Arcturus kernel: [ 0.000000] initial memory mapped : 0 - 20000000
答案1
askubuntu 上还有一篇帖子,有人提到了类似的情况,他们只能看到 16 Gb 中的 3 Gb。以下是关联也许您可以检查 dmesg 输出以查看内核是否在启动期间报告任何类似的错误问题。
答案2
您的 BIOS 没有在 e820 映射中向内核报告内存,因此您的 BIOS 似乎存在错误。请咨询您的主板制造商,看看他们是否有 BIOS 更新来修复此问题。