diff options
author | hongbo.min@intel.com <hongbo.min@intel.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-27 06:10:37 +0000 |
---|---|---|
committer | hongbo.min@intel.com <hongbo.min@intel.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-27 06:10:37 +0000 |
commit | 52bdcdad3d131faf6443b7fa558a474c496d974a (patch) | |
tree | 8c9503d1e8b602ff7741b470d646ee3f9af7624a /base/sys_info_linux.cc | |
parent | 7e8f754399801f33da56e4aa062480cf732b105b (diff) | |
download | chromium_src-52bdcdad3d131faf6443b7fa558a474c496d974a.zip chromium_src-52bdcdad3d131faf6443b7fa558a474c496d974a.tar.gz chromium_src-52bdcdad3d131faf6443b7fa558a474c496d974a.tar.bz2 |
Add systemInfo.memory API implementation
BUG=136519
TEST=browser_tests --gtest_filter=SystemInfoMemoryApiTest.*
Review URL: https://chromiumcodereview.appspot.com/11185049
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@164518 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/sys_info_linux.cc')
-rw-r--r-- | base/sys_info_linux.cc | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/base/sys_info_linux.cc b/base/sys_info_linux.cc index 59dfee0..6683674 100644 --- a/base/sys_info_linux.cc +++ b/base/sys_info_linux.cc @@ -24,6 +24,17 @@ int64 SysInfo::AmountOfPhysicalMemory() { } // 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<int64>(available_pages) * page_size; +} + +// static size_t SysInfo::MaxSharedMemorySize() { static int64 limit; static bool limit_valid = false; |