在/var/log/kern.log:
kernel: [13291329.657499] EDAC MC0: 48 CE error on CPU#0Channel#2_DIMM#0 (channel:2 slot:0 page:0x0 offset:0x0 grain:8 syndrome:0x0)
Run Code Online (Sandbox Code Playgroud)
这是edac日志,其中一个内存有ce错误。
我已阅读edac 文档
Dual channels allows for 128 bit data transfers to the CPU from memory.
Some newer chipsets allow for more than 2 channels, like Fully Buffered DIMMs
(FB-DIMMs). The following example will assume 2 channels:
Channel 0 Channel 1
===================================
csrow0 | DIMM_A0 | DIMM_B0 |
csrow1 | DIMM_A0 | DIMM_B0 |
===================================
===================================
csrow2 …Run Code Online (Sandbox Code Playgroud) 我有一台在 VMWare 上运行的 CentOS 5.10(32 位)服务器。它分配了 4 GB 的 RAM。
如果我运行,dmidecode -t 17 | grep Size | grep MB我会看到:
Size: 4096 MB
Run Code Online (Sandbox Code Playgroud)
然而,当我运行时free,我看到:
total used free shared buffers cached
Mem: 3107140 1239244 1867896 0 332 400464
-/+ buffers/cache: 838448 2268692
Swap: 2096472 0 2096472
Run Code Online (Sandbox Code Playgroud)
为什么内存free报告总量和dmidecode输出之间存在差异?
我正在运行的内核是:
2.6.18-371.4.1.el5 #1 SMP Thu Jan 30 06:09:24 EST 2014 i686 i686 i386 GNU/Linux
Run Code Online (Sandbox Code Playgroud)
诚然,内核没有运行,PAE但我认为只有超过4 GB 的内存才需要。
我知道我错过了一些简单的东西 - 有人可以详细说明吗?
我们在主机托管的服务器(一个真正的物理服务器,而不是一个VM),运行64位的Debian( :)。uname -r3.16.0-4-amd64
/proc/meminfo报告大约 4 GiB 总内存:
$ head -n 1 /proc/meminfo
MemTotal: 4051692 kB
Run Code Online (Sandbox Code Playgroud)
free报告相同(我只看了total专栏;我不是在谈论已用、免费、共享、缓冲区、缓存):
$ free -k
total used free shared buffers cached
Mem: 4051692 3867356 184336 220908 63948 1203596
-/+ buffers/cache: 2599812 1451880
Swap: 15728208 652540 15075668
Run Code Online (Sandbox Code Playgroud)
也是如此dmesg | grep Memory:
$ dmesg | grep Memory
[ 0.000000] Memory: 4034240K/4185236K available (5287K kernel code, 949K rwdata, 1836K rodata, 1208K init, 840K bss, 150996K reserved)
Run Code Online (Sandbox Code Playgroud)
但是 dmidecode 报告 4 * …