slstatus

My fork of https://tools.suckless.org/slstatus/
git clone https://git.inz.fi/slstatus
Log | Files | Refs | README | LICENSE

commit e241dbeba4bd8e4f9cd2786d76697afd6057e406
parent 2fb476aaf6b084bdf4847db867d3d44811934c2b
Author: Vincent Loupmon <vincentloupmon@gmail.com>
Date:   Wed,  9 Mar 2016 12:38:22 +0100

Changed RAM calculation formula.

Former : MemTotal - MemAvailable
New : (MemTotal - MemFree) - (Buffers + Cached)

Diffstat:
Mslstatus.c | 7++++---
1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/slstatus.c b/slstatus.c @@ -162,7 +162,7 @@ char * get_ram_usage() { int ram_perc; - long total, free, available; + long total, free, buffers, cached; FILE *fp; /* open meminfo file */ @@ -174,13 +174,14 @@ get_ram_usage() /* read the values */ fscanf(fp, "MemTotal: %ld kB\n", &total); fscanf(fp, "MemFree: %ld kB\n", &free); - fscanf(fp, "MemAvailable: %ld kB\n", &available); + fscanf(fp, "MemAvailable: %ld kB\nBuffers: %ld kB\n", &buffers, &buffers); + fscanf(fp, "Cached: %ld kB\n", &cached); /* close meminfo file */ fclose(fp); /* calculate percentage */ - ram_perc = 100 * (total - available) / total; + ram_perc = 100 * ((total - free) - (buffers + cached)) / total; /* return ram_perc as string */ return smprintf("%d%%",ram_perc);