equal
deleted
inserted
replaced
30 // Information about the protection of the page at address '0' on this os. |
30 // Information about the protection of the page at address '0' on this os. |
31 static bool zero_page_read_protected() { return true; } |
31 static bool zero_page_read_protected() { return true; } |
32 |
32 |
33 class Linux { |
33 class Linux { |
34 friend class os; |
34 friend class os; |
|
35 friend class OSContainer; |
35 friend class TestReserveMemorySpecial; |
36 friend class TestReserveMemorySpecial; |
36 |
37 |
37 static bool libjsig_is_loaded; // libjsig that interposes sigaction(), |
38 static bool libjsig_is_loaded; // libjsig that interposes sigaction(), |
38 // __sigaction(), signal() is loaded |
39 // __sigaction(), signal() is loaded |
39 static struct sigaction *(*get_signal_action)(int); |
40 static struct sigaction *(*get_signal_action)(int); |
73 static Mutex* _createThread_lock; |
74 static Mutex* _createThread_lock; |
74 static int _page_size; |
75 static int _page_size; |
75 |
76 |
76 static julong available_memory(); |
77 static julong available_memory(); |
77 static julong physical_memory() { return _physical_memory; } |
78 static julong physical_memory() { return _physical_memory; } |
|
79 static void set_physical_memory(julong phys_mem) { _physical_memory = phys_mem; } |
|
80 static int active_processor_count(); |
|
81 |
78 static void initialize_system_info(); |
82 static void initialize_system_info(); |
79 |
83 |
80 static int commit_memory_impl(char* addr, size_t bytes, bool exec); |
84 static int commit_memory_impl(char* addr, size_t bytes, bool exec); |
81 static int commit_memory_impl(char* addr, size_t bytes, |
85 static int commit_memory_impl(char* addr, size_t bytes, |
82 size_t alignment_hint, bool exec); |
86 size_t alignment_hint, bool exec); |
104 static bool release_memory_special_impl(char* base, size_t bytes); |
108 static bool release_memory_special_impl(char* base, size_t bytes); |
105 static bool release_memory_special_shm(char* base, size_t bytes); |
109 static bool release_memory_special_shm(char* base, size_t bytes); |
106 static bool release_memory_special_huge_tlbfs(char* base, size_t bytes); |
110 static bool release_memory_special_huge_tlbfs(char* base, size_t bytes); |
107 |
111 |
108 static void print_full_memory_info(outputStream* st); |
112 static void print_full_memory_info(outputStream* st); |
|
113 static void print_container_info(outputStream* st); |
109 static void print_distro_info(outputStream* st); |
114 static void print_distro_info(outputStream* st); |
110 static void print_libversion_info(outputStream* st); |
115 static void print_libversion_info(outputStream* st); |
111 |
116 |
112 public: |
117 public: |
113 static bool _stack_is_executable; |
118 static bool _stack_is_executable; |