जवाबों:
हाँ, यह हमेशा केबी में है। KiB (1024-बाइट्स, 1000 नहीं) सटीक होना।
कम से कम लिनक्स 4.0 में (और यह कोड कम से कम अप्रैल 2005 से अपरिवर्तित रहा है- जब लिनुस स्विच किया गया है git
, और मुझे आगे की जांच करने की परवाह नहीं है) कि आउटपुट अंदर से आता task_mem
हैfs/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
यहाँ बिल्कुल स्पष्ट नहीं है।