Changed RAM calculation formula.
Former : MemTotal - MemAvailable New : (MemTotal - MemFree) - (Buffers + Cached)
This commit is contained in:
		@@ -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);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user