From 655d7c1682cf51359c01be3ecadb55ecbdaabb2f Mon Sep 17 00:00:00 2001 From: "mdempsky@google.com" Date: Wed, 10 Apr 2013 02:22:15 +0000 Subject: Implement missing SysInfo methods on OpenBSD Adds AmountOfAvailablePhysicalMemory (based on Linux's implementation) and CPUModelName() (based on OS X's implementation). Review URL: https://chromiumcodereview.appspot.com/13945012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@193295 0039d316-1c4b-4281-b951-d872f2087c98 --- base/sys_info_linux.cc | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) (limited to 'base/sys_info_linux.cc') diff --git a/base/sys_info_linux.cc b/base/sys_info_linux.cc index 09ac3d6..7e62339 100644 --- a/base/sys_info_linux.cc +++ b/base/sys_info_linux.cc @@ -10,28 +10,30 @@ #include "base/logging.h" #include "base/strings/string_number_conversions.h" -namespace base { +namespace { -int64 SysInfo::AmountOfPhysicalMemory() { - long pages = sysconf(_SC_PHYS_PAGES); - long page_size = sysconf(_SC_PAGE_SIZE); +int64 AmountOfMemory(int pages_name) { + long pages = sysconf(pages_name); + long page_size = sysconf(_SC_PAGESIZE); if (pages == -1 || page_size == -1) { NOTREACHED(); return 0; } - return static_cast(pages) * page_size; } +} // namespace + +namespace base { + +// static +int64 SysInfo::AmountOfPhysicalMemory() { + return AmountOfMemory(_SC_PHYS_PAGES); +} + // static int64 SysInfo::AmountOfAvailablePhysicalMemory() { - long available_pages = sysconf(_SC_AVPHYS_PAGES); - long page_size = sysconf(_SC_PAGE_SIZE); - if (available_pages == -1 || page_size == -1) { - NOTREACHED(); - return 0; - } - return static_cast(available_pages) * page_size; + return AmountOfMemory(_SC_AVPHYS_PAGES); } // static -- cgit v1.1