COMPILING FOR FAST STATE CAPTURE OF MOBILE AGENTS

Christian Wicke, Lubomir Bic, Michael B. Dillencourt · 2000

Saving, transporting, and restoring the state of a mobile agent is one of the main problems in implementing a mobile agents system. We present an approach, implemented as part of our Messengers system, that represents a trade-off between the unrestricted use of pointers and the ability to perform fully transparent state capture. When writing the code for an agent, the programmer has a choice between two types of functions. C functions are fully general and may use unrestricted pointers, but they are not allowed to invoke any migration commands. Messengers functions may cause migration but their use of pointers is restricted to only a special type of a dynamic array structure. Under these restrictions, the local variables, the program counter, and the calling stack of an agent can all be made machine-independent and can be captured/restored transparently during migration. 1 Introduction Saving, transporting, and restoring the state of a mobile agent is one of the main problem in implem...

Read the paper · More papers on PaperTik