26 #define OS_LINUX_OSCONTAINER_LINUX_HPP
27
28 #include "utilities/globalDefinitions.hpp"
29 #include "utilities/macros.hpp"
30 #include "memory/allocation.hpp"
31
32 #define OSCONTAINER_ERROR (-2)
33
34 class OSContainer: AllStatic {
35
36 private:
37 static bool _is_initialized;
38 static bool _is_containerized;
39 static jlong read_memory_limit_in_bytes();
40
41 public:
42 static void init();
43 static inline bool is_containerized();
44 static const char * container_type();
45
46 static jlong uses_mem_hierarchy();
47 static jlong memory_limit_in_bytes();
48 static jlong memory_and_swap_limit_in_bytes();
49 static jlong memory_soft_limit_in_bytes();
50 static jlong memory_usage_in_bytes();
51 static jlong memory_max_usage_in_bytes();
52
53 static int active_processor_count();
54
55 static char * cpu_cpuset_cpus();
56 static char * cpu_cpuset_memory_nodes();
57
58 static int cpu_quota();
59 static int cpu_period();
60
61 static int cpu_shares();
62
63 };
64
65 inline bool OSContainer::is_containerized() {
66 return _is_containerized;
|
26 #define OS_LINUX_OSCONTAINER_LINUX_HPP
27
28 #include "utilities/globalDefinitions.hpp"
29 #include "utilities/macros.hpp"
30 #include "memory/allocation.hpp"
31
32 #define OSCONTAINER_ERROR (-2)
33
34 class OSContainer: AllStatic {
35
36 private:
37 static bool _is_initialized;
38 static bool _is_containerized;
39 static jlong read_memory_limit_in_bytes();
40
41 public:
42 static void init();
43 static inline bool is_containerized();
44 static const char * container_type();
45
46 static jlong memory_limit_in_bytes();
47 static jlong memory_and_swap_limit_in_bytes();
48 static jlong memory_soft_limit_in_bytes();
49 static jlong memory_usage_in_bytes();
50 static jlong memory_max_usage_in_bytes();
51
52 static int active_processor_count();
53
54 static char * cpu_cpuset_cpus();
55 static char * cpu_cpuset_memory_nodes();
56
57 static int cpu_quota();
58 static int cpu_period();
59
60 static int cpu_shares();
61
62 };
63
64 inline bool OSContainer::is_containerized() {
65 return _is_containerized;
|