2012-04-01から1ヶ月間の記事一覧

os::signal_notify(int sig)

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) void os::signal_notify(int sig) { Atomic::inc(&pending_signals[sig]); ::sem_post(&sig_sem); }

os::signal(int signal_number, void* handler)

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) void* os::signal(int signal_number, void* handler) { struct sigaction sigAct, oldSigAct; sigfillset(&(sigAct.sa_mask)); sigAct.sa_flags = SA_RESTART|SA_SIGINFO; sigAct.sa_handler = CAS…

os::signal_raise(int signal_number)

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) void os::signal_raise(int signal_number) { ::raise(signal_number); }

os::signal_wait()

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) int os::signal_wait() { return check_pending_signals(true); }

os::signal_lookup()

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) int os::signal_lookup() { return check_pending_signals(false); }

os::user_handler()

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) void* os::user_handler() { return CAST_FROM_FN_PTR(void*, UserHandler); }

os::terminate_signal_thread()

- //Linux版(jdk7/hotspot/src/share/vm/runtime/os.cpp) void os::terminate_signal_thread() { if (!ReduceSignalUsage) signal_notify(sigexitnum_pd()); }

os::sigexitnum_pd()

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) // Will be modified when max signal is changed to be dynamic int os::sigexitnum_pd() { return NSIG; }

os::init_random(long initval)

- //Linux版(jdk7/hotspot/src/share/vm/runtime/os.cpp) void os::init_random(long initval) { _rand_seed = initval; }

os::os_exception_wrapper(...)

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) // This does not do anything on Linux. This is basically a hook for being // able to use structured exception handling (thread-local exception filters) // on, e.g., Win32. void os::os_…

os::check_or_create_dump(...)

- //Linux版(jdk7/hotspot/src/os/posix/vm/os_posix.cpp) // Check core dump limit and report possible place where core can be found void os::check_or_create_dump(void* exceptionRecord, void* contextRecord, char* buffer, size_t bufferSize) { …

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp)

os::current_thread_cpu_time(bool user_sys_cpu_time)

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) jlong os::current_thread_cpu_time(bool user_sys_cpu_time) { if (user_sys_cpu_time && os::Linux::supports_fast_thread_cpu_time()) { return os::Linux::fast_thread_cpu_time(CLOCK_THREAD_C…

os::current_thread_cpu_time()

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) jlong os::current_thread_cpu_time() { if (os::Linux::supports_fast_thread_cpu_time()) { return os::Linux::fast_thread_cpu_time(CLOCK_THREAD_CPUTIME_ID); } else { // return user + sys s…

os::thread_cpu_time(Thread *thread, bool user_sys_cpu_time)

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) jlong os::thread_cpu_time(Thread *thread, bool user_sys_cpu_time) { if (user_sys_cpu_time && os::Linux::supports_fast_thread_cpu_time()) { return os::Linux::fast_thread_cpu_time(thread…

os::thread_cpu_time(Thread* thread)

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) jlong os::thread_cpu_time(Thread* thread) { // consistent with what current_thread_cpu_time() returns if (os::Linux::supports_fast_thread_cpu_time()) { return os::Linux::fast_thread_cp…

os::current_thread_cpu_time_info(jvmtiTimerInfo *info_ptr)

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) void os::current_thread_cpu_time_info(jvmtiTimerInfo *info_ptr) { info_ptr->max_value = ALL_64_BITS; // will not wrap in less than 64 bits info_ptr->may_skip_backward = false; // elaps…

os::thread_cpu_time_info(jvmtiTimerInfo *info_ptr)

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) void os::thread_cpu_time_info(jvmtiTimerInfo *info_ptr) { info_ptr->max_value = ALL_64_BITS; // will not wrap in less than 64 bits info_ptr->may_skip_backward = false; // elapsed time …

os::is_thread_cpu_time_supported()

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) bool os::is_thread_cpu_time_supported() { return true; }

os::loadavg(double loadavg[], int nelem)

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) // System loadavg support. Returns -1 if load average cannot be obtained. // Linux doesn't yet have a (official) notion of processor sets, // so just return the system wide load averag…

os::obsolete_option(const JavaVMOption *option)

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.inline.hpp) inline bool os::obsolete_option(const JavaVMOption *option) { return false; }

os::get_line_chars(int fd, char* buf, const size_t bsize)

- //Linux版(jdk7/hotspot/src/share/vm/runtime/os.cpp) // Read file line by line, if line is longer than bsize, // skip rest of line. int os::get_line_chars(int fd, char* buf, const size_t bsize){ size_t sz, i = 0; // read until EOF, EOL or…

os::find(address addr, outputStream* st)

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) bool os::find(address addr, outputStream* st) { Dl_info dlinfo; memset(&dlinfo, 0, sizeof(dlinfo)); if (dladdr(addr, &dlinfo)) { st->print(PTR_FORMAT ": ", addr); if (dlinfo.dli_sname …

os::dont_yield()

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) // Used to convert frequent JVM_Yield() to nops bool os::dont_yield() { return DontYieldALot; }

os::print_statistics()

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) void os::print_statistics() { }

os::set_native_priority(Thread* thread, int newpri)

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) OSReturn os::set_native_priority(Thread* thread, int newpri) { if ( !UseThreadPriorities || ThreadPriorityPolicy == 0 ) return OS_OK; int ret = setpriority(PRIO_PROCESS, thread->osthre…

os::get_native_priority(const Thread* const thread, int *priority_ptr)

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) OSReturn os::get_native_priority(const Thread* const thread, int *priority_ptr) { if ( !UseThreadPriorities || ThreadPriorityPolicy == 0 ) { *priority_ptr = java_to_os_priority[NormPri…

os::hint_no_preempt()

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) // Hint to the underlying OS that a task switch would not be good. // Void return because it's a hint and can fail. void os::hint_no_preempt() {}

os::pause()

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) void os::pause() { char filename[MAX_PATH]; if (PauseAtStartupFile && PauseAtStartupFile[0]) { jio_snprintf(filename, MAX_PATH, PauseAtStartupFile); } else { jio_snprintf(filename, MAX…

os::socket_available(int fd, jint *pbytes)

- //Linux版(jdk7/hotspot/src/os/linux/vm/os_linux.cpp) int os::socket_available(int fd, jint *pbytes) { // Linux doc says EINTR not returned, unlike Solaris int ret = ::ioctl(fd, FIONREAD, pbytes); //%% note ioctl can return 0 when success…