Communications of the ACM
The remote processing framework for portable computer power saving
Proceedings of the 1999 ACM symposium on Applied computing
Object serialization for marshalling data in a Java interface to MPI
JAVA '99 Proceedings of the ACM 1999 conference on Java Grande
The aggregate server method for analyzing serialization delays in computer systems
ACM Transactions on Computer Systems (TOCS)
ACM Computing Surveys (CSUR)
Java virtual machine support for object serialization
Proceedings of the 2001 joint ACM-ISCOPE conference on Java Grande
Object serialization analysis and comparison in Java and .NET
ACM SIGPLAN Notices
NWSLite: a light-weight prediction utility for mobile devices
Proceedings of the 2nd international conference on Mobile systems, applications, and services
Compiler-assisted demand paging for embedded systems with flash memory
Proceedings of the 4th ACM international conference on Embedded software
Optimizing the migration of virtual computers
OSDI '02 Proceedings of the 5th symposium on Operating systems design and implementationCopyright restrictions prevent ACM from being able to make the PDFs for this conference available for downloading
Efficient application migration under compiler guidance
LCTES '05 Proceedings of the 2005 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools for embedded systems
Tactics-based remote execution for mobile computing
Proceedings of the 1st international conference on Mobile systems, applications and services
A generic serializer for mobile devices
Proceedings of the 2005 ACM symposium on Applied computing
Live migration of virtual machines
NSDI'05 Proceedings of the 2nd conference on Symposium on Networked Systems Design & Implementation - Volume 2
Obtuse, a scripting language for migratory applications
COOTS'97 Proceedings of the 3rd conference on USENIX Conference on Object-Oriented Technologies (COOTS) - Volume 3
Pickling state in the javaTM system
COOTS'96 Proceedings of the 2nd conference on USENIX Conference on Object-Oriented Technologies (COOTS) - Volume 2
Grid design for mobile thin client computing
Future Generation Computer Systems
Hi-index | 0.00 |
Application migration is a key enabling technology component of mobile computing that allows rich semantics involving location awareness, trust and timeliness of information processing by moving the application where the data is. Seamlessness is one of the key properties of mobile computing and downtime must be eliminated/minimized during the migration to achieve seamlessness. But migration involves large overheads, dominant of which are the overheads due to serialization and de-serialization [1]. To achieve seamless migration, an application state could be pre-serialized during the program's execution, and upon migration, the serialized data could be transmitted and de-serialized to get the execution started. Previous approach to this problem [1] removed dead state but still suffered from large migration overheads due to serialization on-demand that could lead to an unacceptable downtime.In this work, we develop a static compiler analysis plus runtime assisted framework to decrease the migration overhead to almost zero while minimizing the degradation in the program's performance. We achieve such a goal by deciding which data to be pre-serialized through analysis, and pre-serializing the state in the program. A safe state is kept that would allow immediate migration upon the arrival of an interrupt while minimizing frequent pre-serialization. When the migration interrupt comes in, the serialized data can be transmitted directly to the destination machine. This allows an application to resume its execution at the destination machine with almost no interruption (only a small amount of non-serialized data needs to be serialized during migration). The optimization serializes the data in such a way that a maximal number of functions can execute without interruption after migration. Our experiments with multimedia applications show that the migration latency is significantly reduced leading to a small downtime. Thus, the contribution of the paper is to provide an efficient methodology to perform seamless migration while limiting the overhead.