Exploiting Transiently Shared Tuple Spaces for Location Transparent Code Mobility

  • Gian Pietro Picco
  • Marco L. Buschini
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2315)


Code mobility greatly improves the flexibility of the architecture of a distributed application. However, currently available platforms do not exploit fully the potential of mobile code. For instance, remote dynamic linking of code is often restrained to a well-known site, and applications are prevented from manipulating their own code base. In this paper, we use the notion of transiently shared tuple space, originally introduced in the Lime coordination model, to overcome these limitations. We allow tuples to contain classes, and tuple spaces become the code base associated to the loading mechanism in the mobile code runtime support. Transient sharing allows for location transparent retrieval of classes, and accommodates changes determined by the reconfiguration of the system, e.g., due to mobility. In doing this, we effectively define a new coordination approach that deals uniformly with code and data. The presentation is completed by a proof-of-concept prototype, built by extending an existing Java-based mobile code toolkit.


Mobile Agent Mobile Host Code Base Mobile Unit Code Fragment 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    T. Berners-Lee, R. Fielding, and L. Masinter. Uniform Resource Identifiers (URI): Generic Syntax. IETF Network Working Group, RFC 2396, August 1998.Google Scholar
  2. 2.
    C. Bryce, M. Oriol, and J. Vitek. Secure object spaces: A coordination model for agents. In Proc. of COORDINATION’99, LNCS 1594, pages 4–20. Springer, 1999.Google Scholar
  3. 3.
    N. Busi and G. Zavattaro. Some Thoughts on Transiently Shared Tuple Spaces. In Proc. of Workshop on Software Engineering and Mobility, co-located with the 23rd Int. Conf. on Software Engineering (ICSE01), May 2001.Google Scholar
  4. 4.
    B. Carbunar, M.T. Valente, and J. Vitek. Lime Revisited—Reverse Engineering an Agent Communication Model. In Proc. of the 5th Int. Conf. on Mobile Agents (MA 2001), LNCS 2240, pages 54–69. Springer, December 2001.Google Scholar
  5. 5.
    P. Ciancarini, F. Franzè, and C. Mascolo. Using a Coordination Language to Specify and Analyze Systems Containing Mobile Components. ACM Trans. on Software Engineering and Methodology, 9(2):167–198, April 2000.CrossRefGoogle Scholar
  6. 6.
    Ad Astra Engineering. Jumping BeansWeb page.
  7. 7.
    A. Fuggetta, G.P. Picco, and G. Vigna. Understanding Code Mobility. IEEE Transactions on Software Engineering, 24(5):342–361, May 1998.CrossRefGoogle Scholar
  8. 8.
    D. Gelernter. Generative Communication in Linda. ACM Computing Surveys, 7(1):80–112, Jan. 1985.zbMATHGoogle Scholar
  9. 9.
    C.G. Harrison, D.M. Chess, and A. Kershenbaum. Mobile Agents: Are they a good idea? In J. Vitek and C. Tschudin, editors, Mobile Object Systems: Towards the Programmable Internet, LNCS 1222, pages 25–47. Springer, April 1997.Google Scholar
  10. 10.
    IBM Research. TSpaces Web page.
  11. 11.
    D.B. Lange and M. Oshima, editors. Programming and Deploying Java Mobile Agents with Aglets. Addison-Wesley, 1998.Google Scholar
  12. 12.
    M. Corson, J. Macker, and G. Cinciarone. Internet-Based Mobile Ad Hoc Networking. Internet Computing, 3(4), 1999.Google Scholar
  13. 13.
    A.L. Murphy, G.P. Picco, and G.-C. Roman. Lime: A Middleware for Physical and Logical Mobility. In Proc. of the 21st Int. Conf. on Distributed Computing Systems (ICDCS-21), pages 524–533, May 2001.Google Scholar
  14. 14.
    G.P. Picco. μCode: A Lightweight and Flexible Mobile Code Toolkit. In Proc. of Mobile Agents: 2nd Int. Workshop MA’98, LNCS 1477, pages 160–171. Springer, September 1998.Google Scholar
  15. 15.
    G.P. Picco, A.L. Murphy, and G.-C. Roman. Lime: Linda Meets Mobility. In Proc. of the 21st Int. Conf. on Software Engineering (ICSE’99), pages 368–377, May 1999.Google Scholar
  16. 16.
    M. Straßer, J. Baumann, and F. Hohl. Mole—A Java Based Mobile Agent System. In M. Mühlaüser, editor, Special Issues in Object-Oriented Programming: Workshop Reader of the 10th European Conf. on Object-Oriented Programming ECOOP’96, pages 327–334. dpunkt, July 1996.Google Scholar
  17. 17.
    Sun Microsystems. JavaSpaces Web page.
  18. 18.
    Sun Microsystems. Jini Web page.

Copyright information

© Springer-Verlag Berlin Heidelberg 2002

Authors and Affiliations

  • Gian Pietro Picco
    • 1
  • Marco L. Buschini
    • 1
  1. 1.Dipartimento di Elettronica e InformazionePolitecnico di MilanoMilanoItaly

Personalised recommendations