diff options
author | Andreas Baumann <mail@andreasbaumann.cc> | 2015-05-25 18:27:08 +0200 |
---|---|---|
committer | Andreas Baumann <mail@andreasbaumann.cc> | 2015-05-25 18:27:08 +0200 |
commit | 135469a03d1a03903a57557decb99996aba835cb (patch) | |
tree | c139bcb7f5f0e0469e0e97a9a5486ee20af7397b /src/system.c | |
parent | 48ad3d9ece36f8f0404b431ebaf75557bb721ac8 (diff) | |
download | biruda-135469a03d1a03903a57557decb99996aba835cb.tar.gz biruda-135469a03d1a03903a57557decb99996aba835cb.tar.bz2 |
memory on Linux
Diffstat (limited to 'src/system.c')
-rw-r--r-- | src/system.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/system.c b/src/system.c index b947ce2..9e2256d 100644 --- a/src/system.c +++ b/src/system.c @@ -390,8 +390,17 @@ int system_phys_memory( ) memset( &memState, 0, sizeof( MEMORYSTATUSEX ) ); memState.dwLength = sizeof( MEMORYSTATUSEX ); GlobalMemoryStatusEx( &memState ); - return memState.ullTotalPhys / 1024 / 1024; + return memState.ullTotalPhys / 1024; +#elif defined( linux ) || defined( __linux ) || defined( __linux__ ) + size_t pageSize; + size_t nofPages; + + pageSize = sysconf( _SC_PAGESIZE ); + nofPages = sysconf( _SC_PHYS_PAGES ); + + return ( pageSize / 1024 ) * nofPages; #else +#error Not ported yet! #endif } |