Updated used memory calculation.

Changed used memory calculation to account for shared memory in accordance with this:
https://github.com/KittyKatt/screenFetch/issues/386#issuecomment-249312716
This commit is contained in:
John Weismiller 2018-01-18 13:15:18 -06:00
parent 75b9ea756e
commit 22f4db4b0e

@ -40,7 +40,7 @@ void mem_status( MemoryStatus & status )
* application requests memory. * application requests memory.
* In order to calculate the ram that's actually used we need to use the * In order to calculate the ram that's actually used we need to use the
* following formula: * following formula:
* total_ram - free_ram - buffered_ram - cached_ram * total_ram + shmem - free_ram - buffered_ram - cached_ram - srclaimable
* *
* example data, junk removed, with comments added: * example data, junk removed, with comments added:
* *
@ -72,8 +72,13 @@ void mem_status( MemoryStatus & status )
{ {
used_mem = total_mem - stoi( line.substr( substr_start, substr_len ) ); used_mem = total_mem - stoi( line.substr( substr_start, substr_len ) );
} }
else if( substr.compare( "Shmem" ) == 0 )
{
used_mem += stoi( line.substr( substr_start, substr_len ) );
}
else if( substr.compare( "Buffers" ) == 0 || else if( substr.compare( "Buffers" ) == 0 ||
substr.compare( "Cached" ) == 0 ) substr.compare( "Cached" ) == 0 ||
substr.compare( "SReclaimable" ) == 0 )
{ {
used_mem -= stoi( line.substr( substr_start, substr_len ) ); used_mem -= stoi( line.substr( substr_start, substr_len ) );
} }