The hotspotTM serviceability agent: an out-of-process high level debugger for a JavaTM virtual machine

  • Authors:
  • Kenneth Russell;Lars Bak

  • Affiliations:
  • Sun Microsystems and Palo Alto, CA;Sun Microsystems and Computer Science Department, Aarhus University, Aarhus N, Denmark

  • Venue:
  • JVM'01 Proceedings of the 2001 Symposium on JavaTM Virtual Machine Research and Technology Symposium - Volume 1
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

The HotSpotTM Serviceability Agent (SA) is a set of APIs for the Java programming language which model the state of Sun Microsystems' JavaTM HotSpot Virtual Machine. Unlike most previous debugging systems for dynamic languages which assume a "cooperative" model in which the target process runs code to assist in the debugging process, the SA requires no code to be run in the target VM. Instead, it uses primitives like symbol lookup and reading of process memory to implement its functionality. The SA can transparently examine either live processes or core files, making it suitable for debugging both the VM itself and Java programs in production. We describe the design and implementation of the SA, comparing it to other debugging systems for both statically compiled and dynamic languages, and illustrate future directions for this architecture.