< prev index next >

src/hotspot/share/runtime/os.hpp

Print this page




 254   //     then you bind processes according to that distribution.
 255   // Compute a distribution for number of processes to processors.
 256   //    Stores the processor id's into the distribution array argument.
 257   //    Returns true if it worked, false if it didn't.
 258   static bool distribute_processes(uint length, uint* distribution);
 259   // Binds the current process to a processor.
 260   //    Returns true if it worked, false if it didn't.
 261   static bool bind_to_processor(uint processor_id);
 262 
 263   // Give a name to the current thread.
 264   static void set_native_thread_name(const char *name);
 265 
 266   // Interface for stack banging (predetect possible stack overflow for
 267   // exception processing)  There are guard pages, and above that shadow
 268   // pages for stack overflow checking.
 269   static bool uses_stack_guard_pages();
 270   static bool must_commit_stack_guard_pages();
 271   static void map_stack_shadow_pages(address sp);
 272   static bool stack_shadow_pages_available(Thread *thread, const methodHandle& method, address sp);
 273 




 274   // OS interface to Virtual Memory
 275 
 276   // Return the default page size.
 277   static int    vm_page_size();
 278 
 279   // Returns the page size to use for a region of memory.
 280   // region_size / min_pages will always be greater than or equal to the
 281   // returned value. The returned value will divide region_size.
 282   static size_t page_size_for_region_aligned(size_t region_size, size_t min_pages);
 283 
 284   // Returns the page size to use for a region of memory.
 285   // region_size / min_pages will always be greater than or equal to the
 286   // returned value. The returned value might not divide region_size.
 287   static size_t page_size_for_region_unaligned(size_t region_size, size_t min_pages);
 288 
 289   // Return the largest page size that can be used
 290   static size_t max_page_size() {
 291     // The _page_sizes array is sorted in descending order.
 292     return _page_sizes[0];
 293   }




 254   //     then you bind processes according to that distribution.
 255   // Compute a distribution for number of processes to processors.
 256   //    Stores the processor id's into the distribution array argument.
 257   //    Returns true if it worked, false if it didn't.
 258   static bool distribute_processes(uint length, uint* distribution);
 259   // Binds the current process to a processor.
 260   //    Returns true if it worked, false if it didn't.
 261   static bool bind_to_processor(uint processor_id);
 262 
 263   // Give a name to the current thread.
 264   static void set_native_thread_name(const char *name);
 265 
 266   // Interface for stack banging (predetect possible stack overflow for
 267   // exception processing)  There are guard pages, and above that shadow
 268   // pages for stack overflow checking.
 269   static bool uses_stack_guard_pages();
 270   static bool must_commit_stack_guard_pages();
 271   static void map_stack_shadow_pages(address sp);
 272   static bool stack_shadow_pages_available(Thread *thread, const methodHandle& method, address sp);
 273 
 274   // Find committed memory region within specified range (start, start + size),
 275   // return true if found any
 276   static bool committed_in_range(address start, size_t size, address& committed_start, size_t& committed_size);
 277 
 278   // OS interface to Virtual Memory
 279 
 280   // Return the default page size.
 281   static int    vm_page_size();
 282 
 283   // Returns the page size to use for a region of memory.
 284   // region_size / min_pages will always be greater than or equal to the
 285   // returned value. The returned value will divide region_size.
 286   static size_t page_size_for_region_aligned(size_t region_size, size_t min_pages);
 287 
 288   // Returns the page size to use for a region of memory.
 289   // region_size / min_pages will always be greater than or equal to the
 290   // returned value. The returned value might not divide region_size.
 291   static size_t page_size_for_region_unaligned(size_t region_size, size_t min_pages);
 292 
 293   // Return the largest page size that can be used
 294   static size_t max_page_size() {
 295     // The _page_sizes array is sorted in descending order.
 296     return _page_sizes[0];
 297   }


< prev index next >