1 // Copyright 2014 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef V8_BASE_SYS_INFO_H_
6 #define V8_BASE_SYS_INFO_H_
7 
8 #include <stdint.h>
9 #include "src/base/compiler-specific.h"
10 
11 namespace v8 {
12 namespace base {
13 
14 class SysInfo final {
15  public:
16   // Returns the number of logical processors/core on the current machine.
17   static int NumberOfProcessors();
18 
19   // Returns the number of bytes of physical memory on the current machine.
20   static int64_t AmountOfPhysicalMemory();
21 
22   // Returns the number of bytes of virtual memory of this process. A return
23   // value of zero means that there is no limit on the available virtual memory.
24   static int64_t AmountOfVirtualMemory();
25 };
26 
27 }  // namespace base
28 }  // namespace v8
29 
30 #endif  // V8_BASE_SYS_INFO_H_
31