< prev index next >

src/share/vm/runtime/os.hpp

Print this page
rev 10257 : 8149036: Add tracing for thread related events at os level
Reviewed-by:


 632   // We don't attempt to become a debugger, so we only follow frames if that
 633   // does not require a lookup in the unwind table, which is part of the binary
 634   // file but may be unsafe to read after a fatal error. So on x86, we can
 635   // only walk stack if %ebp is used as frame pointer; on ia64, it's not
 636   // possible to walk C stack without having the unwind table.
 637   static bool is_first_C_frame(frame *fr);
 638   static frame get_sender_for_C_frame(frame *fr);
 639 
 640   // return current frame. pc() and sp() are set to NULL on failure.
 641   static frame      current_frame();
 642 
 643   static void print_hex_dump(outputStream* st, address start, address end, int unitsize);
 644 
 645   // returns a string to describe the exception/signal;
 646   // returns NULL if exception_code is not an OS exception/signal.
 647   static const char* exception_name(int exception_code, char* buf, size_t buflen);
 648 
 649   // Returns the signal number (e.g. 11) for a given signal name (SIGSEGV).
 650   static int get_signal_number(const char* signal_name);
 651 





 652   // Returns native Java library, loads if necessary
 653   static void*    native_java_library();
 654 
 655   // Fills in path to jvm.dll/libjvm.so (used by the Disassembler)
 656   static void     jvm_path(char *buf, jint buflen);
 657 
 658   // Returns true if we are running in a headless jre.
 659   static bool     is_headless_jre();
 660 
 661   // JNI names
 662   static void     print_jni_name_prefix_on(outputStream* st, int args_size);
 663   static void     print_jni_name_suffix_on(outputStream* st, int args_size);
 664 
 665   // Init os specific system properties values
 666   static void init_system_properties_values();
 667 
 668   // IO operations, non-JVM_ version.
 669   static int stat(const char* path, struct stat* sbuf);
 670   static bool dir_is_empty(const char* path);
 671 




 632   // We don't attempt to become a debugger, so we only follow frames if that
 633   // does not require a lookup in the unwind table, which is part of the binary
 634   // file but may be unsafe to read after a fatal error. So on x86, we can
 635   // only walk stack if %ebp is used as frame pointer; on ia64, it's not
 636   // possible to walk C stack without having the unwind table.
 637   static bool is_first_C_frame(frame *fr);
 638   static frame get_sender_for_C_frame(frame *fr);
 639 
 640   // return current frame. pc() and sp() are set to NULL on failure.
 641   static frame      current_frame();
 642 
 643   static void print_hex_dump(outputStream* st, address start, address end, int unitsize);
 644 
 645   // returns a string to describe the exception/signal;
 646   // returns NULL if exception_code is not an OS exception/signal.
 647   static const char* exception_name(int exception_code, char* buf, size_t buflen);
 648 
 649   // Returns the signal number (e.g. 11) for a given signal name (SIGSEGV).
 650   static int get_signal_number(const char* signal_name);
 651 
 652   // Returns the name for a given errno (e.g. "EINVAL" for EINVAL). The returned string
 653   // is a static constant and does not have to be freed, so in contrast to strerror, this
 654   // function is threadsafe. For unknown errno values, "unknown" is returned.
 655   static const char* errno_name(int err_no);
 656 
 657   // Returns native Java library, loads if necessary
 658   static void*    native_java_library();
 659 
 660   // Fills in path to jvm.dll/libjvm.so (used by the Disassembler)
 661   static void     jvm_path(char *buf, jint buflen);
 662 
 663   // Returns true if we are running in a headless jre.
 664   static bool     is_headless_jre();
 665 
 666   // JNI names
 667   static void     print_jni_name_prefix_on(outputStream* st, int args_size);
 668   static void     print_jni_name_suffix_on(outputStream* st, int args_size);
 669 
 670   // Init os specific system properties values
 671   static void init_system_properties_values();
 672 
 673   // IO operations, non-JVM_ version.
 674   static int stat(const char* path, struct stat* sbuf);
 675   static bool dir_is_empty(const char* path);
 676 


< prev index next >