hotspot/src/share/vm/runtime/os.hpp
changeset 33593 60764a78fa5c
parent 31963 641ed52732ec
child 33766 3290cae587f9
equal deleted inserted replaced
33579:01ade4446d96 33593:60764a78fa5c
    94 // Executable parameter flag for os::commit_memory() and
    94 // Executable parameter flag for os::commit_memory() and
    95 // os::commit_memory_or_exit().
    95 // os::commit_memory_or_exit().
    96 const bool ExecMem = true;
    96 const bool ExecMem = true;
    97 
    97 
    98 // Typedef for structured exception handling support
    98 // Typedef for structured exception handling support
    99 typedef void (*java_call_t)(JavaValue* value, methodHandle* method, JavaCallArguments* args, Thread* thread);
    99 typedef void (*java_call_t)(JavaValue* value, const methodHandle& method, JavaCallArguments* args, Thread* thread);
   100 
   100 
   101 class MallocTracker;
   101 class MallocTracker;
   102 
   102 
   103 class os: AllStatic {
   103 class os: AllStatic {
   104   friend class VMStructs;
   104   friend class VMStructs;
   261   // exception processing)  There are guard pages, and above that shadow
   261   // exception processing)  There are guard pages, and above that shadow
   262   // pages for stack overflow checking.
   262   // pages for stack overflow checking.
   263   static bool uses_stack_guard_pages();
   263   static bool uses_stack_guard_pages();
   264   static bool allocate_stack_guard_pages();
   264   static bool allocate_stack_guard_pages();
   265   static void bang_stack_shadow_pages();
   265   static void bang_stack_shadow_pages();
   266   static bool stack_shadow_pages_available(Thread *thread, methodHandle method);
   266   static bool stack_shadow_pages_available(Thread *thread, const methodHandle& method);
   267 
   267 
   268   // OS interface to Virtual Memory
   268   // OS interface to Virtual Memory
   269 
   269 
   270   // Return the default page size.
   270   // Return the default page size.
   271   static int    vm_page_size();
   271   static int    vm_page_size();
   720   // random number generation
   720   // random number generation
   721   static long random();                    // return 32bit pseudorandom number
   721   static long random();                    // return 32bit pseudorandom number
   722   static void init_random(long initval);   // initialize random sequence
   722   static void init_random(long initval);   // initialize random sequence
   723 
   723 
   724   // Structured OS Exception support
   724   // Structured OS Exception support
   725   static void os_exception_wrapper(java_call_t f, JavaValue* value, methodHandle* method, JavaCallArguments* args, Thread* thread);
   725   static void os_exception_wrapper(java_call_t f, JavaValue* value, const methodHandle& method, JavaCallArguments* args, Thread* thread);
   726 
   726 
   727   // On Posix compatible OS it will simply check core dump limits while on Windows
   727   // On Posix compatible OS it will simply check core dump limits while on Windows
   728   // it will check if dump file can be created. Check or prepare a core dump to be
   728   // it will check if dump file can be created. Check or prepare a core dump to be
   729   // taken at a later point in the same thread in os::abort(). Use the caller
   729   // taken at a later point in the same thread in os::abort(). Use the caller
   730   // provided buffer as a scratch buffer. The status message which will be written
   730   // provided buffer as a scratch buffer. The status message which will be written