CODEWEAVE: Exploring Fine-Grained Mobility of Code
Purchase on Springer.com
$39.95 / €34.95 / £29.95*
Rent the article at a discountRent now
* Final gross prices may vary according to local VAT.
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. In '97),vol. 1282 of LNCS, Springer, 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., and Gordon, A.D. 2002. Types for the ambient calculus. Journal of Information and Computation, 177(2):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., and Remy, D. 1996. A calculus of mobile agents. In '96),vol. 1119 of LNCS, Springer, pp. 406–421.
- Fuggetta, A., Picco, G.P., and Vigna, G. 1998. Understanding code mobility. IEEE Transactions on Software Engineering, 24(5):342–361.
- Gelernter, D. 1985. Generative communication in linda. ACM Transactions on Programming Languages and Systems, 7(1):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., and Rus, D. 2002. D'Agents: Applications and performance of a mobile-agent system. Software: Practice and Experience, 32(6):543–573.
- Javasoft.Java Remote Method Invocation Specification.Available at www.javasoft.com/products/jdk/rmi.
- Kiniry, J. and Zimmerman, D. 1997. A hands-on look at Java mobile agents. IEEE Internet Computing, 1(4):21–30.
- Lange, D.B. and Oshima, M. (eds.) 1998. Programming and Deploying Java Mobile Agents with Aglets.Addison-Wesley.
- McCann, P.J. and Roman, G.-C. 1998. Compositional programming abstractions for mobile computing. IEEE Transactions on Software Engineering, 24(2):97–110.
- Milner, R. 1999. Communicating and Mobile Systems: The π-Calculus. Cambridge University Press.
- De Nicola, R., Ferrari, G., and Pugliese, R. 1998. KLAIM: A kernel language for agents interaction and mobility. IEEE Transactions on Software Engineering, 24(5):315–330.
- Picco, G.P. 1998. µCode: A lightweight and flexible mobile code toolkit. In K. Rothermel and F. Hohl, editors, Proceedings 2nd International Workshop on Mobile Agents,vol. 1477 of LNCS, pp. 26–37, Springer, Stuttgart, Germany.
- Picco, G.P., Roman, G.-C., and McCann, P.J. 2001. Reasoning about code mobility with mobile unity. ACM Transactions on Software Engineering and Methodology (TOSEM), 10(3):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., and Moore, D. 1999. Java-based mobile agents. Communications of the ACM, 42(3):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