* src/vm/os.hpp (os::getpid): Added system function wrapper.
* configure.ac: Added check for getpid function.
AC_CHECK_FUNCS([gethostname])
AC_CHECK_FUNCS([getloadavg])
AC_CHECK_FUNCS([getpagesize])
+AC_CHECK_FUNCS([getpid])
AC_CHECK_FUNCS([getrusage])
AC_CHECK_FUNCS([getsockname])
AC_CHECK_FUNCS([getsockopt])
jboolean result;
switch (att) {
+ case JMM_VERBOSE_GC:
+ result = opt_verbosegc;
+ break;
+ case JMM_VERBOSE_CLASS:
+ result = opt_verboseclass;
+ break;
default:
log_println("jmm_GetBoolAttribute: Unknown attribute %d", att);
return false;
TRACEJMMCALLS(("jmm_SetBoolAttribute(env=%p, att=%d, flag=%d)", env, att, flag));
switch (att) {
+ case JMM_VERBOSE_GC:
+ opt_verbosegc = flag;
+ break;
+ case JMM_VERBOSE_CLASS:
+ opt_verboseclass = flag;
+ break;
default:
log_println("jmm_SetBoolAttribute: Unknown attribute %d", att);
return false;
case JMM_JVM_INIT_DONE_TIME_MS:
result = VM::get_current()->get_inittime();
break;
+ case JMM_OS_PROCESS_ID:
+ result = os::getpid();
+ break;
default:
log_println("jmm_GetLongAttribute: Unknown attribute %d", att);
return -1;
static inline int gethostname(char* name, size_t len);
static inline int getloadavg(double loadavg[], int nelem);
static inline int getpagesize(void);
+ static inline pid_t getpid(void);
static inline int getsockname(int s, struct sockaddr* name, socklen_t* namelen);
static inline int getsockopt(int s, int level, int optname, void* optval, socklen_t* optlen);
static inline int listen(int sockfd, int backlog);
#endif
}
+inline pid_t os::getpid(void)
+{
+#if defined(HAVE_GETPID)
+ return ::getpid();
+#else
+# error getpid not available
+#endif
+}
+
inline int os::getsockname(int s, struct sockaddr* name, socklen_t* namelen)
{
#if defined(HAVE_GETSOCKNAME)