< prev index next >

src/os/linux/vm/os_linux.hpp

Print this page

        

*** 97,106 **** --- 97,109 ---- static char* reserve_memory_special_shm(size_t bytes, size_t alignment, char* req_addr, bool exec); static char* reserve_memory_special_huge_tlbfs(size_t bytes, size_t alignment, char* req_addr, bool exec); static char* reserve_memory_special_huge_tlbfs_only(size_t bytes, char* req_addr, bool exec); static char* reserve_memory_special_huge_tlbfs_mixed(size_t bytes, size_t alignment, char* req_addr, bool exec); + static char* reserve_memory_with_backing_file(size_t bytes, char* requested_addr, + size_t alignment_hint, const char* backingFileDir); + static bool release_memory_special_impl(char* base, size_t bytes); static bool release_memory_special_shm(char* base, size_t bytes); static bool release_memory_special_huge_tlbfs(char* base, size_t bytes); static void print_full_memory_info(outputStream* st);
*** 247,256 **** --- 250,265 ---- static void set_numa_tonode_memory(numa_tonode_memory_func_t func) { _numa_tonode_memory = func; } static void set_numa_interleave_memory(numa_interleave_memory_func_t func) { _numa_interleave_memory = func; } static void set_numa_set_bind_policy(numa_set_bind_policy_func_t func) { _numa_set_bind_policy = func; } static void set_numa_all_nodes(unsigned long* ptr) { _numa_all_nodes = ptr; } static int sched_getcpu_syscall(void); + + static int create_tmpfile(const char* dir, size_t size, bool exec); + static char* reserve_memory_with_backing_file_aligned(size_t size, size_t alignment, int fd); + static char* reserve_memory_with_backing_file_at(size_t bytes, char* requested_addr, int fd); + + public: static int sched_getcpu() { return _sched_getcpu != NULL ? _sched_getcpu() : -1; } static int numa_node_to_cpus(int node, unsigned long *buffer, int bufferlen) { return _numa_node_to_cpus != NULL ? _numa_node_to_cpus(node, buffer, bufferlen) : -1; }
< prev index next >