From 6a9451c76d877eedee4a261ecf745a253e86701e Mon Sep 17 00:00:00 2001 From: Martin Mares Date: Fri, 20 Aug 2010 17:04:44 +0200 Subject: [PATCH] Do not forget "Cached:" in /proc/meminfo when calculating free memory --- ywho.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ywho.c b/ywho.c index c44cca6..ecfc3ca 100644 --- a/ywho.c +++ b/ywho.c @@ -333,7 +333,7 @@ dispsys(void) } if (f = fopen("/proc/meminfo", "r")) { - int free, buffers, stotal, sfree; + int free, buffers, cached, stotal, sfree; free = buffers = stotal = sfree = 0; while (fgets(line, 256, f)) { @@ -341,13 +341,15 @@ dispsys(void) sscanf(line+8, "%d", &free); else if (!strncmp(line, "Buffers:", 8)) sscanf(line+8, "%d", &buffers); + else if (!strncmp(line, "Cached:", 7)) + sscanf(line+7, "%d", &cached); else if (!strncmp(line, "SwapTotal:", 10)) sscanf(line+10, "%d", &stotal); else if (!strncmp(line, "SwapFree:", 9)) sscanf(line+9, "%d", &sfree); } printf(", free "); - memory(1024*(free+buffers)); + memory(1024*(free+buffers+cached)); printf(" of RAM"); if (stotal != sfree) { -- 2.39.2