Dynamic Updating For The JVM
Date: Feb 24
Room: CGN room C004
Title: Thesis defense: Dynamic Updating for the JVM using Load-time Structural Reflection
Programs evolve over time. They are updated to fix unwanted and
unintended properties of a program that cause it to malfunction, or to
make beneficial additions and changes to its functionality.
There are applications that must execute continuously without
interruption, e.g. in life-critical domains such as aviation,
air-traffic control and medical engineering, and hence execution
cannot be terminated in favor of an update.
The thesis describes a novel approach to dynamic software updating,
i.e. the task of updating parts of a program without having to
terminate its execution, for the Java virtual machine. The Java virtual
machine specification describes an abstract computing machine
responsible for hardware and operating system independence. Our approach
allows dynamic updating of classes without depending on extraordinary
service of this runtime system by defining a taxonomy of transformations
applied to Java class files.