hotspot/src/share/vm/runtime/os.hpp

Print this page




 201 
 202   static int    vm_allocation_granularity();
 203   static char*  reserve_memory(size_t bytes, char* addr = 0,
 204                                size_t alignment_hint = 0);
 205   static char*  attempt_reserve_memory_at(size_t bytes, char* addr);
 206   static void   split_reserved_memory(char *base, size_t size,
 207                                       size_t split, bool realloc);
 208   static bool   commit_memory(char* addr, size_t bytes,
 209                               bool executable = false);
 210   static bool   commit_memory(char* addr, size_t size, size_t alignment_hint,
 211                               bool executable = false);
 212   static bool   uncommit_memory(char* addr, size_t bytes);
 213   static bool   release_memory(char* addr, size_t bytes);
 214 
 215   enum ProtType { MEM_PROT_NONE, MEM_PROT_READ, MEM_PROT_RW, MEM_PROT_RWX };
 216   static bool   protect_memory(char* addr, size_t bytes, ProtType prot,
 217                                bool is_committed = true);
 218 
 219   static bool   guard_memory(char* addr, size_t bytes);
 220   static bool   unguard_memory(char* addr, size_t bytes);



 221   static char*  map_memory(int fd, const char* file_name, size_t file_offset,
 222                            char *addr, size_t bytes, bool read_only = false,
 223                            bool allow_exec = false);
 224   static char*  remap_memory(int fd, const char* file_name, size_t file_offset,
 225                              char *addr, size_t bytes, bool read_only,
 226                              bool allow_exec);
 227   static bool   unmap_memory(char *addr, size_t bytes);
 228   static void   free_memory(char *addr, size_t bytes);
 229   static void   realign_memory(char *addr, size_t bytes, size_t alignment_hint);
 230 
 231   // NUMA-specific interface
 232   static bool   numa_has_static_binding();
 233   static bool   numa_has_group_homing();
 234   static void   numa_make_local(char *addr, size_t bytes, int lgrp_hint);
 235   static void   numa_make_global(char *addr, size_t bytes);
 236   static size_t numa_get_groups_num();
 237   static size_t numa_get_leaf_groups(int *ids, size_t size);
 238   static bool   numa_topology_changed();
 239   static int    numa_get_group_id();
 240 




 201 
 202   static int    vm_allocation_granularity();
 203   static char*  reserve_memory(size_t bytes, char* addr = 0,
 204                                size_t alignment_hint = 0);
 205   static char*  attempt_reserve_memory_at(size_t bytes, char* addr);
 206   static void   split_reserved_memory(char *base, size_t size,
 207                                       size_t split, bool realloc);
 208   static bool   commit_memory(char* addr, size_t bytes,
 209                               bool executable = false);
 210   static bool   commit_memory(char* addr, size_t size, size_t alignment_hint,
 211                               bool executable = false);
 212   static bool   uncommit_memory(char* addr, size_t bytes);
 213   static bool   release_memory(char* addr, size_t bytes);
 214 
 215   enum ProtType { MEM_PROT_NONE, MEM_PROT_READ, MEM_PROT_RW, MEM_PROT_RWX };
 216   static bool   protect_memory(char* addr, size_t bytes, ProtType prot,
 217                                bool is_committed = true);
 218 
 219   static bool   guard_memory(char* addr, size_t bytes);
 220   static bool   unguard_memory(char* addr, size_t bytes);
 221   static bool   create_stack_guard_pages(char* addr, size_t bytes);
 222   static bool   remove_stack_guard_pages(char* addr, size_t bytes);
 223 
 224   static char*  map_memory(int fd, const char* file_name, size_t file_offset,
 225                            char *addr, size_t bytes, bool read_only = false,
 226                            bool allow_exec = false);
 227   static char*  remap_memory(int fd, const char* file_name, size_t file_offset,
 228                              char *addr, size_t bytes, bool read_only,
 229                              bool allow_exec);
 230   static bool   unmap_memory(char *addr, size_t bytes);
 231   static void   free_memory(char *addr, size_t bytes);
 232   static void   realign_memory(char *addr, size_t bytes, size_t alignment_hint);
 233 
 234   // NUMA-specific interface
 235   static bool   numa_has_static_binding();
 236   static bool   numa_has_group_homing();
 237   static void   numa_make_local(char *addr, size_t bytes, int lgrp_hint);
 238   static void   numa_make_global(char *addr, size_t bytes);
 239   static size_t numa_get_groups_num();
 240   static size_t numa_get_leaf_groups(int *ids, size_t size);
 241   static bool   numa_topology_changed();
 242   static int    numa_get_group_id();
 243