< prev index next >
src/share/vm/runtime/os.hpp
Print this page
*** 119,130 ****
_page_sizes[0] = default_page_size;
_page_sizes[1] = 0; // sentinel
}
static char* pd_reserve_memory(size_t bytes, char* addr = 0,
! size_t alignment_hint = 0);
! static char* pd_attempt_reserve_memory_at(size_t bytes, char* addr);
static void pd_split_reserved_memory(char *base, size_t size,
size_t split, bool realloc);
static bool pd_commit_memory(char* addr, size_t bytes, bool executable);
static bool pd_commit_memory(char* addr, size_t size, size_t alignment_hint,
bool executable);
--- 119,130 ----
_page_sizes[0] = default_page_size;
_page_sizes[1] = 0; // sentinel
}
static char* pd_reserve_memory(size_t bytes, char* addr = 0,
! size_t alignment_hint = 0, int file_desc = -1);
! static char* pd_attempt_reserve_memory_at(size_t bytes, char* addr, int file_desc = -1);
static void pd_split_reserved_memory(char *base, size_t size,
size_t split, bool realloc);
static bool pd_commit_memory(char* addr, size_t bytes, bool executable);
static bool pd_commit_memory(char* addr, size_t size, size_t alignment_hint,
bool executable);
*** 304,318 ****
const char* base,
const size_t size);
static int vm_allocation_granularity();
static char* reserve_memory(size_t bytes, char* addr = 0,
! size_t alignment_hint = 0);
static char* reserve_memory(size_t bytes, char* addr,
size_t alignment_hint, MEMFLAGS flags);
! static char* reserve_memory_aligned(size_t size, size_t alignment);
! static char* attempt_reserve_memory_at(size_t bytes, char* addr);
static void split_reserved_memory(char *base, size_t size,
size_t split, bool realloc);
static bool commit_memory(char* addr, size_t bytes, bool executable);
static bool commit_memory(char* addr, size_t size, size_t alignment_hint,
bool executable);
--- 304,320 ----
const char* base,
const size_t size);
static int vm_allocation_granularity();
static char* reserve_memory(size_t bytes, char* addr = 0,
! size_t alignment_hint = 0, int file_desc = -1);
! static char* reserve_memory(size_t bytes, int file_desc);
static char* reserve_memory(size_t bytes, char* addr,
size_t alignment_hint, MEMFLAGS flags);
! static char* reserve_memory_aligned(size_t size, size_t alignment, int file_desc = -1);
! static char* attempt_reserve_memory_at(size_t bytes, char* addr, int file_desc = -1);
!
static void split_reserved_memory(char *base, size_t size,
size_t split, bool realloc);
static bool commit_memory(char* addr, size_t bytes, bool executable);
static bool commit_memory(char* addr, size_t size, size_t alignment_hint,
bool executable);
*** 340,349 ****
--- 342,357 ----
static bool unguard_memory(char* addr, size_t bytes);
static bool create_stack_guard_pages(char* addr, size_t bytes);
static bool pd_create_stack_guard_pages(char* addr, size_t bytes);
static bool remove_stack_guard_pages(char* addr, size_t bytes);
+ // Map the given address to the file descriptor.
+ static char* map_memory_to_file(char* base, size_t size, int fd);
+
+ // Helper function to create a new file with template jvmheap.XXXXXX
+ static int create_file_for_heap(const char* dir, size_t size);
+
static char* map_memory(int fd, const char* file_name, size_t file_offset,
char *addr, size_t bytes, bool read_only = false,
bool allow_exec = false);
static char* remap_memory(int fd, const char* file_name, size_t file_offset,
char *addr, size_t bytes, bool read_only,
< prev index next >