Summary: | Heterogeneous Process Migration is a technique that allows an active program to
move between computers of differing architectures. While the program is executing,
a migration tool will pause the program, locate the data values within the program's
memory, convert them to a suitable format for the destination machine, then reconstruct
the program on the destination machine so that it will continue executing
correctly.
Although a small number of heterogeneous migration mechanisms have been
proposed, few of them have been constructed, and none have yet resulted in a mature
and efficient implementation. The Tui system has been constructed to provide
an efficient migration tool for use on four common architectures within the Unix
environment. Implementation lessons were learned while optimizing the Tui system
to gain performance.
Tui has been used to derive a definition of migratibility. All other migration
implementations have assumed that the program must be written in a type-safe
language, or in a type-safe subset of a language. Since Tui has been designed to
support heterogeneous migration of common languages that are non-type-safe, a
survey of non-migratible language features has been undertaken. From this study, a
definition for migratibility has been created, a framework for designing a migration
tool has been given, and a comparison between migratibility and type-safety has
shown that the two concepts are similar, yet different.
|