Answers:
是的,它始终以kB为单位。准确的是KiB(1024字节,而不是1000)。
至少在Linux 4.0中(至少从2005年4月开始,此代码在很大程度上未发生变化;那是Linus切换到的时间git
,我不在乎进一步检查),输出来自task_mem
infs/proc/task_mmu.c
。摘录几行:
seq_printf(m,
"VmPeak:\t%8lu kB\n"
"VmSize:\t%8lu kB\n"
"VmLck:\t%8lu kB\n"
"VmPin:\t%8lu kB\n"
"VmHWM:\t%8lu kB\n"
"VmRSS:\t%8lu kB\n"
"VmData:\t%8lu kB\n"
"VmStk:\t%8lu kB\n"
"VmExe:\t%8lu kB\n"
"VmLib:\t%8lu kB\n"
"VmPTE:\t%8lu kB\n"
"VmPMD:\t%8lu kB\n"
"VmSwap:\t%8lu kB\n",
hiwater_vm << (PAGE_SHIFT-10),
⋮
);
不知道您是否可以阅读C,但是在那里“ kB”被硬编码。没有逻辑可以输出任何其他单元。
fs/proc/meminfo.c
。(并请发送补丁至手册页进行澄清。)
/proc/meminfo
吗?man 5 proc
这里还不清楚。