CODEWEAVE: Exploring Fine-Grained Mobility of Code
Rent the article at a discountRent now
* Final gross prices may vary according to local VAT.Get Access
This paper is concerned with an abstract exploration of code mobility constructs designed for use in settings where the level of granularity associated with the mobile units exhibits significant variability. Units of mobility that are both finer and coarser grained than the unit of execution are examined. To accomplish this, we take the extreme view that every line of code and every variable declaration are potentially mobile, i.e., it may be duplicated or moved from one program context to another on the same host or across the network. We also assume that complex code assemblies may move with equal ease. The result is CODEWEAVE, a model that shows how to develop new forms of code mobility, assign them precise meaning, and facilitate formal verification of programs employing them. The design of CODEWEAVE relies greatly on Mobile UNITY, a notation and proof logic for mobile computing. Mobile UNITY offers a computational milieu for examining a wide range of constructs and semantic alternatives in a clean abstract setting, i.e., unconstrained by compilation and performance considerations traditionally associated with programming language design. Ultimately, the notation offered by CODEWEAVE is given exact semantic definition by means of a direct mapping to the underlying Mobile UNITY model. The abstract and formal treatment of code mobility offered by CODEWEAVE establishes a technical foundation for examining competing proposals and for subsequent integration of some of the mobility constructs both at the language level and within middleware for mobility.
- Amadio, R. (1997) An asynchronous model of locality, failure, and process mobility. '97) 1282: pp. 374-391
- Cardelli, L. 1995. A language with distributed scope. In Proc.22nd ACM Symp.on Principles of Programming Languages (POPL), pp. 286–297.
- Cardelli, L., Ghelli, G., Gordon, A.D. (2002) Types for the ambient calculus. Journal of Information and Computation 177: pp. 160-194
- Emmerich, W., Mascolo, C., and Finkelstein, A. 2000. Implementing incremental code migration with XML. In Proc.of the 22nd Int.Conf.on Software Engineering (ICSE2000), pp. 397–406.
- Fournet, C., Gonthier, G., Levy, J.J., Maranget, L., Remy, D. (1996) A calculus of mobile agents. '96) 1119: pp. 406-421
- Fuggetta, A., Picco, G.P., Vigna, G. (1998) Understanding code mobility. IEEE Transactions on Software Engineering 24: pp. 342-361
- Gelernter, D. (1985) Generative communication in linda. ACM Transactions on Programming Languages and Systems 7: pp. 80-112
- Gray, R. 1995. Agent Tcl: A transportable agent system. In Proceedings of the CIKM Workshop on Intelligent Information Agents.
- Gray, R.S., Cybenko, G., Kotz, D., Peterson, R.A., Rus, D. (2002) D'Agents: Applications and performance of a mobile-agent system. Software: Practice and Experience 32: pp. 543-573
- Javasoft.Java Remote Method Invocation Specification.Available at www.javasoft.com/products/jdk/rmi.
- Kiniry, J., Zimmerman, D. (1997) A hands-on look at Java mobile agents. IEEE Internet Computing 1: pp. 21-30
- Lange, D.B. and Oshima, M. (eds.) 1998. Programming and Deploying Java Mobile Agents with Aglets.Addison-Wesley.
- McCann, P.J., Roman, G.-C. (1998) Compositional programming abstractions for mobile computing. IEEE Transactions on Software Engineering 24: pp. 97-110
- Milner, R. 1999. Communicating and Mobile Systems: The π-Calculus. Cambridge University Press.
- De Nicola, R., Ferrari, G., Pugliese, R. (1998) KLAIM: A kernel language for agents interaction and mobility. IEEE Transactions on Software Engineering 24: pp. 315-330
- Picco, G.P. µCode: A lightweight and flexible mobile code toolkit. In: Rothermel, K., Hohl, F. eds. (1998) Proceedings 2nd International Workshop on Mobile Agents. Springer, Stuttgart, Germany, pp. 26-37
- Picco, G.P., Roman, G.-C., McCann, P.J. (2001) Reasoning about code mobility with mobile unity. ACM Transactions on Software Engineering and Methodology (TOSEM) 10: pp. 338-395
- Vitek, J. and Castagna, G. 1999. Seal: A framework for secure mobile computations. In Internet Programming Languages, LNCS, Springer, pp. 47–60.
- White, J. 1996. Telescript technology: Mobile agents. In J. Bradshaw, editor, Software Agents, AAAI Press/MIT Press.
- White, T. and Pagurek, B. 1998. Towards multi-swarm problem problem solving in networks. In Proceedings 3rd International Conferences on Multi-Agent Systems (ICMAS'98), pp. 333–340.
- Wong, D., Paciorek, N., Moore, D. (1999) Java-based mobile agents. Communications of the ACM 42: pp. 92-102
- CODEWEAVE: Exploring Fine-Grained Mobility of Code
Automated Software Engineering
Volume 11, Issue 3 , pp 207-243
- Cover Date
- Print ISSN
- Online ISSN
- Kluwer Academic Publishers
- Additional Links
- code mobility
- specification and semantics
- distributed systems
- Industry Sectors
- Author Affiliations
- 1. Department of Computer Science, University College London, Gower Street, London, WC1E 6BT, UK
- 2. Dipartimento di Elettronica e Informazione, Politecnico di Milano, P.za Leonardo da Vinci 32, 20133, Milano, Italy
- 3. Department of Computer Science and Engineering, Washington University, Campus Box 1045, One Brookings Drive, Saint Louis, MO, 63130-4899, USA