summaryrefslogtreecommitdiffstats
path: root/base/sys_info_linux.cc
diff options
context:
space:
mode:
authorhongbo.min@intel.com <hongbo.min@intel.com@0039d316-1c4b-4281-b951-d872f2087c98>2012-09-08 09:53:01 +0000
committerhongbo.min@intel.com <hongbo.min@intel.com@0039d316-1c4b-4281-b951-d872f2087c98>2012-09-08 09:53:01 +0000
commitd5df0c8c043a25aa7b7d43f7f6f29198bcf74348 (patch)
treed937d7dc6866099dfc624cbc624020449f792559 /base/sys_info_linux.cc
parent4c35f73337302284aaa503dc2d6b2172623687b5 (diff)
downloadchromium_src-d5df0c8c043a25aa7b7d43f7f6f29198bcf74348.zip
chromium_src-d5df0c8c043a25aa7b7d43f7f6f29198bcf74348.tar.gz
chromium_src-d5df0c8c043a25aa7b7d43f7f6f29198bcf74348.tar.bz2
Refine systemInfo.cpu API and provide systemInfo.cpu.get impl for Windows and Linux.
BUG=136519 TEST=browser_test --gtest_filter=SystemInfoCpuApiTest.* Review URL: https://chromiumcodereview.appspot.com/10914060 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@155575 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/sys_info_linux.cc')
-rw-r--r--base/sys_info_linux.cc19
1 files changed, 19 insertions, 0 deletions
diff --git a/base/sys_info_linux.cc b/base/sys_info_linux.cc
index 03fdac2..59dfee0 100644
--- a/base/sys_info_linux.cc
+++ b/base/sys_info_linux.cc
@@ -46,4 +46,23 @@ size_t SysInfo::MaxSharedMemorySize() {
return static_cast<size_t>(limit);
}
+// static
+std::string SysInfo::CPUModelName() {
+ const char kModelNamePrefix[] = "model name";
+ std::string contents;
+ file_util::ReadFileToString(FilePath("/proc/cpuinfo"), &contents);
+ DCHECK(!contents.empty());
+ if (!contents.empty()) {
+ std::istringstream iss(contents);
+ std::string line;
+ while (std::getline(iss, line)){
+ if (line.compare(0, strlen(kModelNamePrefix), kModelNamePrefix) == 0) {
+ size_t pos = line.find(": ");
+ return line.substr(pos + 2);
+ }
+ }
+ }
+ return std::string();
+}
+
} // namespace base