System Checkpointing Using Reflection and Program Analysis

  • Authors:
  • John Whaley

  • Affiliations:
  • -

  • Venue:
  • REFLECTION '01 Proceedings of the Third International Conference on Metalevel Architectures and Separation of Crosscutting Concerns
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper describes a technique for checkpointing a running system by a combination of reflective introspection and program analysis. By using an extension to Java's Reflection API which allows activation frames and other aspects of execution state to be reflectively inspected and modified, we can halt at and restart from arbitrary points in the execution. We apply this checkpointing technique to an area that is not typically associated with reflection -- optimization of memory footprint and startup time. We have successfully used this technique in the joeq virtual machine to reduce the heap size and the application startup time significantly.