The JVM is not observable enough (and what to do about it)

  • Authors:
  • Stephen Kell;Danilo Ansaloni;Walter Binder;Lukáš Marek

  • Affiliations:
  • University of Lugano, Lugano, Switzerland;University of Lugano, Lugano, Switzerland;University of Lugano, Lugano, Switzerland;Charles University, Prague, Czech Rep

  • Venue:
  • Proceedings of the sixth ACM workshop on Virtual machines and intermediate languages
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

Bytecode instrumentation is a preferred technique for building profiling, debugging and monitoring tools targeting the Java Virtual Machine (JVM), yet is fundamentally dangerous. We illustrate its dangers with several examples gathered while building the DiSL instrumentation framework. We argue that no Java platform mechanism provides simultaneously adequate performance, reliability and expressiveness, but that this weakness is fixable. To elaborate, we contrast internal with external observation, and sketch some approaches and requirements for a hybrid mechanism.