1 #ifndef __JSYSTEM__JSYSINFO__ 
    2 #define __JSYSTEM__JSYSINFO__ 
    5 #include <sys/sysinfo.h> 
    7 #include <sys/sysctl.h> 
   16   unsigned long totalram;   
 
   17   unsigned long freeram;    
 
   18   unsigned int mem_unit{1}; 
 
   28 namespace JPP { 
using namespace JSYSTEM; }
 
   39 #if !defined(__APPLE__) 
   45       ::sysinfo(static_cast<sysinfo*>(
this));
 
   49       unsigned long totalram;
 
   50       size_t len=
sizeof(totalram);
 
   51       sysctlbyname(
"hw.memsize",&totalram,&len,NULL,0);
 
   52       this->totalram = totalram;
 
   66       return (
unsigned long long int) this->totalram * (
unsigned long long int) this->mem_unit;
 
Auxiliary class for system information. 
 
JSysinfo()
Default constructor. 
 
unsigned long long int getTotalRAM() const 
Get total RAM.