Date: 18 Jul 2002

A Simple Extension of Java Language for Controllable Transparent Migration and its Portable Implementation

* Final gross prices may vary according to local VAT.

Get Access


A scheme has been developed that enables a Java program to be migrated across computers while preserving its execution state, such as the values of local variables and the dynamic extents of try-and-catch blocks. This scheme provides the programmer with exible control of migration, including transparent migration. It is based on source-code-level transformation. The translator takes as input code a Java program written in a Java language extended with language constructs for migration, and outputs pure Java source code that uses JavaRMI. The translated code can run on any Java interpreter and can be compiled by any just-in-time compiler.We have measured some execution performance for several application programs, and found that the translated programs are only about 20% slower than the original programs. Because migration is completely controlled by using only three language constructs added to the Java language (go, undock and migratory), the programmer can write programs to be migrated easily and succinctly. Our system is available in the public domain.