Hotswap

From JVMLangSummit
Revision as of 11:26, 17 September 2009 by Twuerthinger (talk | contribs) (Background)
Jump to navigationJump to search

Hotswap

Thomas Wuerthinger - Sun

Patch + Technical Documentation

[1]

Slides
File:File.pdf

Abstract

The current hotswapping mechanism in the HotSpot VM only allows changing the bodies of methods at runtime. We are working on an approach that allows arbitrary changes. This talk is about our experiences implementing a prototype in HotSpot that supports adding and deleting of methods and fields as well as performing changes to the class hierarchy. What are the conditions for dynamic code evolution to have a clear semantics and what kind of changes should be forbidden? What are meaningful applications of dynamic code evolution for Java and their requirements? The talk will conclude with ideas for future work to make dynamic code evolution stable and performant.

Background

Part of a long-term collaboration between the HotSpot compiler group at Sun Microsystems and the Institute of System Software at the Johannes Kepler University Linz.

For a list of publications that were results of this collaboration (topics include SSA form, linear scan register allocation, ABCE, object inlining, escape analysis, compiler graph visualization tools) see:

JKU Publications

Current Status

Future

Key Issues for Discussion

(please expand cooperatively)