view agent/doc/ReadMe-JavaScript.text @ 615:c6c601a0f2d6

6797870: Add -XX:+{HeapDump,PrintClassHistogram}{Before,After}FullGC Summary: Call newly created CollectedHeap::dump_{pre,post}_full_gc before and after every stop-world full collection cycle on GenCollectedHeap and ParallelScavengeHeap. (Support for G1CollectedHeap forthcoming under CR 6810861.) Small modifications to existing heap dumping and class histogram implementation, especially to allow multiple on-the-fly histos/dumps by the VM thread during a single safepoint. Reviewed-by: jmasa, alanb, mchung
author ysr
date Mon, 02 Mar 2009 16:37:04 -0800
parents a61af66fc99e
children
line wrap: on
line source

The HotSpot Serviceability Agent (SA) is a debugger for hotspot core
dumps and hung processes. There is a read-only JDI (Java Debugger
Interface) implementation on top of SA. This is part of JDK product and
the classes are in $JDK/tools/sa-jdi.jar.

In addition, there are few serviceability tools in $JDK/bin, namely,
jstack (java stack trace tool), jmap (heap tool), jinfo (Java config
tool) and jsadebugd. The classes for these are also in sa-jdi.jar
file. sa-jdi.jar file is built along with hotspot (libjvm.so) on Solaris
and Linux platforms. On Windows platform, SA-JDI is not included and
serviceability tools do not use SA.

Apart from these, HotSpot SA consists of a number of tools that are
*not* included in JDK product bits.

The sources and makefile for all-of-SA (including non-productized stuff)
are under $HOTSPOT_WS/agent directory. The makefile $HOTSPOT/agent/make
directory and shell scripts (and batch files) are used to build and run
SA non-product tools. There is also documentation of SA under
$HOTSPOT/agent/doc directory.

To build complete SA, you need to have Rhino Mozilla jar (js.jar)
version 1.5R5 under $HOTSPOT/agent/src/share/lib directory. Rhino is
JavaScript interpreter written in Java. Rhino is used to implement SA
features such as

* SA command line debugger's JavaScript interface
 - refer to $HOTSPOT/agent/doc/clhsdb.html
 - refer to $HOTSPOT/agent/doc/jsdb.html
* SA simple object query language (SOQL) 
 - language to query Java heap. 

Rhino's "js.jar" is not included in hotspot source bundles. You need to
download it from http://www.mozilla.org/rhino/download.html.
 
Without js.jar, $HOTSPOT/agent/make/Makefile will fail to build. But,
note that sa-jdi.jar containing the productized portions of SA will
still be built when you build hotspot JVM.