src/hotspot/os/linux/os_linux.hpp
changeset 47903 7f22774a5f42
parent 47216 71c04702a3d5
child 48005 9fd89aabb6cd
equal deleted inserted replaced
47896:7092940fbaff 47903:7f22774a5f42
    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;