Abstract
In this paper we describe a way to save and restore the state of a running Java program. We achieve this on the language level, without modifying the Java virtual machine, by instrumenting the programmer's original code with a preprocessor. The automatically inserted code saves the runtime information when the program requests state saving and re-establishes the program's runtime state on restart. The current preprocessor prototype is used in a mobile agent scenario to offer transparent agent migration for Java-based mobile agents, but could generally be used to save and re-establish the execution state of any Java program.
Similar content being viewed by others
References
Baumann J, Hohl F, Rothermel K, Strasser M. Mole: concepts of a mobile agent system. WWW J, Special issue on applications and techniques of Web agents. Balzer, 1998; 1(3):123–137
Smith JM. A survey of process migration mechanisms. Operating System Rev 1998;22(3):28–40
Mira da Silva M. Mobility and persistence. In: Mobile Object Systems (Lecture Notes in Computer Science 1222) Springer Berlin Heidelberg New York, 1997; 157–175
Sun Microsystems. Object serialisation specification. JDK Online Documentation ‘docs/guide/serialisation/spec’, 1996, 1997
Peine H, Stolpmann T. The architecture of the Ara platform for mobile agents. In: Rothermel K, Popescu-Zeletin R (eds) Mobile agents. Proceedings of MA'97. (Lécture Notes in Computer Science 1219) Springer, Berlin Heidelberg New York, 1997; 50–61
Ranganathan M, Acharya A, Sharma S, Saltz J. Networkaware mobile programs. In: Proceedings of Usenix'97, Anaheim, CA, 1997
Gray R. AgentTcl: a transportable agent system. In: Proceedings of CIKM'95 Workshop of Intelligent Information Agents, 1995
Java Compiler Compiler,http://www.suntest.com/JavaCC/
White JE. Telescript technology: the foundation for the electronic marketplace. Whitepaper by General Magic, Inc., Sunnyvale, CA
Douglis F, Ousterhout J. Transparent process migration: design alternatives and the Sprite implementation software — practice and experience (SPE), August 1991; 757–785
Fünfrocken S. How to integrate mobile agents into Web servers. In: Proceedings of the WETICE'97 Workshop on Collaborative Agents in Distributed Web Applications, Boston, MA, 18–20 June, 1997, 94–99
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Fünfrocken, S. Transparent migration of Java-based mobile agents: Capturing and re-establishing the state of Java programs. Personal Technologies 2, 109–116 (1998). https://doi.org/10.1007/BF01324941
Issue Date:
DOI: https://doi.org/10.1007/BF01324941