Migratory Applications
Krishna A. Bharat,
Graphics, Visualization & Usability Center
College of Computing, Georgia Institute of Technology
Atlanta, GA 30332-0280
E-mail: kb@cc.gatech.edu
Luca Cardelli
Digital, Systems Research Center
130, Lytton Avenue
Palo Alto, CA 94301
E-mail: luca@src.dec.com
We introduce a new genre of user interface applications that can migrate from one machine
to another, taking their user interface and application contexts with them, and continue
from where they left off. Such applications are not tied to one user or one machine, and
can roam freely over the network, rendering service to a community of users, gathering
human input and interacting with people. We envisage that this will support many new
agent-based collaboration metaphors. The ability to migrate executing programs has
applicability to mobile computing as well. Users can have their applications travel
with them, as they move from one computing environment to another. We present an
elegant programming model for creating migratory applications and describe an implementation.
The biggest strength of our implementation is that the details of migration are completely
hidden from the application programmer; arbitrary user interface applications can be
migrated by a single "migration" command. We address system issues such as robustness,
persistence and memory usage, and also human factors relating to application design,
the interaction metaphor and safety.
KEYWORDS: Application Migration, Collaborative Work, Interactive Agents,
Application Checkpointing, Mobile Computing, Ubiquitous Computing, Safety.
Back to the advance program
Back to UIST '95 home page