Abstract
Strong mobility enables migration of entire computations combining code, data, and execution state (such as stack and program counter) between sites of computation. This is in contrast to weak mobility where migration is confined to just code and data. Strong mobility is essential for many applications where reconstruction of execution states is either difficult or even impossible: load balancing, reduction of network latency and traffic, and resource-related migration, just to name a few. This paper presents a model, programming abstractions, implementation, and evaluation of thread-based strong mobility. The model extends and takes advantage of a distributed programming model based on automatic synchronization through dataflow variables. It comes as a natural extension of dataflow computing which carefully separates issues concerning distribution and mobility. The programming abstractions capture various migration scenarios which differ in how the source and destination site relate to the site initiating migration. The implementation is based on replicating concurrent lightweight threads between sites controlled by migration managers.
This work was partially funded at KTH by the European project PEPITO IST-2001-33234.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Fuggetta, A., Picco, G.P., Vigna, G.: Understanding Code Mobility. IEEE Transactions on Software Engineering 24, 342–361 (1998)
Smolka, G.: The Oz programming model. In: van Leeuwen, J. (ed.) Computer Science Today. LNCS, vol. 1000, pp. 324–343. Springer, Heidelberg (1995)
Van Roy, P., Haridi, S.: Concepts, Techniques, and Models of Computer Programming. MIT Press, Cambridge (2004)
Van Roy, P., Haridi, S., Brand, P., Smolka, G., Mehl, M., Scheidhauer, R.: Mobile objects in Distributed Oz. ACM Transactions on Programming Languages and Systems 19, 804–851 (1997)
Haridi, S., Van Roy, P., Brand, P., Mehl, M., Scheidhauer, R., Smolka, G.: Efficient logic variables for distributed computing. ACM Transactions on Programming Languages and Systems 21, 569–626 (1999)
Haridi, S., Van Roy, P., Brand, P., Schulte, C.: Programming languages for distributed applications. New Generation Computing 16, 223–261 (1998)
Haridi, S., Franzén, N.: Tutorial of Oz. The Mozart Consortium (1999), http://www.mozart-oz.org/
Duchier, D., Kornstaedt, L., Müller, T., Schulte, C., Van Roy, P.: System Modules. The Mozart Consortium (1999), http://www.mozart-oz.org/
Mozart Consortium: The Mozart programming system (1999) Available from, http://www.mozart-oz.org/
Hagimont, D., Ismail, L.: A performance evaluation of the mobile agent paradigm. In: Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, pp. 306–313. ACM Press, New York (1999)
Suri, N., Bradshaw, J.M., Breedy, M.R., Groth, P.T., Hill, G.A., Jeffers, R.: Strong mobility and fine-grained resource control in nomads. In: Kotz, D., Mattern, F. (eds.) MA 2000, ASA/MA 2000, and ASA 2000. LNCS, vol. 1882, pp. 2–15. Springer, Heidelberg (2000)
Jul, E., Levy, H., Hutchinson, N., Black, A.: Fine-grained mobility in the Emerald system. ACM Transactions on Computer Systems 6, 109–133 (1988)
Conchon, S., Fessant, F.L.: Jocaml: Mobile agents for Objective-Caml. In: First International Symposium on Agent Systems and Applications (ASA 1999)/Third International Symposium on Mobile Agents (MA 1999), Palm Springs, CA, USA (1999)
Cardelli, L.: Obliq: A language with distributed scope. Technical report, Digital Equipment Corporation Systems Research Center, 130 Lytton Avenue, Palo Alto, California 94301, USA (1994)
Peine, H., Stolpmann, T.: The architecture of the Ara platform for mobile agents. In: Rothermel, K., Popescu-Zeletin, R. (eds.) MA 1997. LNCS, vol. 1219, pp. 50–61. Springer, Heidelberg (1997)
Gray, R.S., Kotz, D., Cybenko, G., Rus, D.: Mobile agents: Motivations and state-of-the-art systems. Technical Report TR2000-365, Dartmouth College, Hanover, NH (2000)
Gray, R.S.: Agent Tcl: A flexible and secure mobile-agent system. Dr. Dobbs Journal 22, 18–27 (1997)
Acharya, A., Ranganathan, M., Saltz, J.: Dynamic linking for mobile programs. In: Tschudin, C.F., Vitek, J. (eds.) MOS 1996. LNCS, vol. 1222, pp. 245–262. Springer, Heidelberg (1997)
Bouchenak, S., Hagimont, D.: Zero overhead java thread migration. Technical Report 0261, INRIA (2002)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Havelka, D., Schulte, C., Brand, P., Haridi, S. (2005). Thread-Based Mobility in Oz. In: Van Roy, P. (eds) Multiparadigm Programming in Mozart/Oz. MOZ 2004. Lecture Notes in Computer Science, vol 3389. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-31845-3_12
Download citation
DOI: https://doi.org/10.1007/978-3-540-31845-3_12
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-25079-1
Online ISBN: 978-3-540-31845-3
eBook Packages: Computer ScienceComputer Science (R0)