A Proactive Middleware Platform for Mobile Computing

  • Andrei Popovici
  • Andreas Frei
  • Gustavo Alonso
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2672)


An obvious prerequisite for mobile computing devices is the ability to adapt to different computing environments. Otherwise the devices are forced to carry with them everything they may eventually need during their operational life time. This is neither desirable nor feasible, thereby hinting at the need for dynamic adaptation. The idea would be to let the environment be proactive and adapt the application rather than forcing the application to adapt itself to every possible environment. In this paper we present a platform for doing exactly this. Applications running on our modified JVM can be extended at run time with new functionality. Through this platform, mobile devices can acquire on-the- fly any functionality extension they may need to work properly in a given environment. The functionality extensions are local in time and space: they are active only on a specific site and just for the time they are needed. The platform can be used in both centralized settings (with a base station providing the extensions) or in self configuring mode (extensions are provided by peers). In this paper we describe the platform, how to use it and report on one of the several prototypes that have been constructed.


Mobile Device Mobile Node Mobile Computing Extension Base Native Code 
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.


  1. APW01.
    D. Arregui, F. Pacull, and J. Willamowski. Rule-Based Transactional Object Migration over a Reflective Middleware. In Middleware 2001: IFIP/ACM Intl. Conf. on Distributed Systems Platforms, volume 2218 of LNCS, pages 179–196, 2001.Google Scholar
  2. AWO+99.
    K. Arnold, A. Wollrath, B. O’Sullivan, R. Scheifler, and J. Waldo. The Jini Specification. Addison-Wesley, Reading, MA, USA, 1999.Google Scholar
  3. BC01.
    G. S. Blair and G. Coulson. The Design and Implementation of Open ORB version 2. IEEE Distributed Systems Online Journal, 2(6), 2001.Google Scholar
  4. BCKP95.
    R. Bagrodia, W. Chu, L. Kleinrock, and G. Popek. Vision, Issues, and Architecture for Nomadic Computing. IEEE Personal Communications, 2(6):14–27, 1995.CrossRefGoogle Scholar
  5. BH02.
    J. Baker and W. Hsieh. Runtime Aspect Weaving Through Metaprogramming. In 1st Intl. Conf. on Aspect-Oriented Software Development, Enschede, The Netherlands, pages 86–95, April 2002.Google Scholar
  6. CBCP01.
    M. Clarke, G. S. Blair, G. Coulson, and N. Parlavantzas. An Efficient Component Model for the Construction of Adaptive Middleware. In Middleware 2001: IFIP/ACM Intl. Conf. on Distributed Systems Platforms, volume 2218 of LNCS, pages 160–178, 2001.Google Scholar
  7. CCM97.
    CORBA Component Model RFP. Available at, 1997.
  8. CHS01.
    W.-K. Chen, M. Hiltunen, and R. Schlichting. Constructing adaptive software in distributed systems. In Proc. of the 21st Intl. Conf. on Distributed Computing Systems (ICDCS-01), pages 635–643, Los Alamitos, CA, April 16–19 2001. IEEE Computer Society.Google Scholar
  9. ECDF01.
    C. Efstratiou, K. Cheverst, N. Davies, and A. Friday. An Architecture for the Effective Support of Adaptive Context-Aware Applications. LNCS, 1987, 2001.Google Scholar
  10. EGK+99.
    F. Eliassen, V. Goebel, T. Kristensen, T. Plagemann, A. Andersen, H. Rafaelsen, W. Yu, G. Blair, F. Costa, G. Coulson, and K. Saikoski. Next generation middleware: Requirements, architecture, and prototypes. In The Seventh IEEE Workshop on Future Trends of Distributed Computing Systems, pages 60-, Tunisia, South Africa, December 1999.Google Scholar
  11. Gel85.
    D. Gelernter. Generative communication in Linda. ACM Transactions on Programming Languages and Systems (TOPLAS), 7(1):80–112, 1985.zbMATHCrossRefGoogle Scholar
  12. HSH+99.
    M. A. Hiltunen, R. D. Schlichting, X. Han, M. M. Cardozo, and R. Das. Real-time dependable channels: customizing qoS attributes for distributed systems. IEEE Transactions on Parallel and Distributed Systems, 10(6):600–612, June 1999.CrossRefGoogle Scholar
  13. Jos02.
    Jose Solorzano. leJOS, Java for the RCX., 2002.
  14. KF01.
    E. Kiciman and A. Fox. Separation of Concerns in Networked Service Composition. Position Paper Workshop on Advanced Separation of Concerns in Software Engineering at ICSE 2001, Toronto, Canada, May 2001.Google Scholar
  15. KLM+97.
    G. Kiczales, J. Lamping, A. Menhdhekar, C. Maeda, C. Lopes, J.M. Loingtier, and J. Irwin. Aspect-Oriented Programming. In Mehmet Akşit and Satoshi Matsuoka, editors, In Proc. of ECOOP’97-Jyväskylä, Finland, volume 1241 of LNCS, pages 220–242. Springer-Verlag, New York, NY, June 1997.Google Scholar
  16. KZ01.
    Tim Kindberg and Kan Zhang. Context authentication using constrained channels. Technical Report HPL-2001-84, HP Labs, 2001.Google Scholar
  17. LCX+01.
    T. J. Lehman, A. Cozzi, Y. Xiong, J. Gottschalk, V. Vasudevan, S. Landis, P. Davis, Bruce K., and P. Bowman. Hitting the distributed computing sweet spot with TSpaces. Computer Networks (Amsterdam, Netherlands:1999), 35(4):457–472, March 2001.Google Scholar
  18. Leg.
    Lego. Lego mindstorms robotics invention system. At, 2002. Lego Mindstorms.
  19. LK98.
    C. V. Lopes and G. Kiczales. Recent Developments in AspectJ. In Serge Demeyer and Jan Bosch, editors, Object-Oriented Technology: ECOOP’98 Workshop Reader, volume 1543 of LNCS, pages 398–401. Springer, 1998.CrossRefGoogle Scholar
  20. NSN+97.
    B. D. Noble, M. Satyanarayanan, D. Narayanan, J. E. Tilton, J. Flinn, and K. R. Walker. Agile Application-Aware Adaptation for Mobility. In Sixteenth ACM Symposium on Operating Systems Principles, pages 276–287, Saint Malo, France, 1997.Google Scholar
  21. OL01.
    D. Orleans and K. Lieberherr. DJ: Dynamic Adaptive Programming in Java. In Reflection 2001: Meta-level Architectures and Separation of Crosscutting Concerns, Kyoto, Japan, September 2001. Springer Verlag.Google Scholar
  22. PA02.
    A. Popovici and G. Alonso. Ad-Hoc Transactions for Mobile Sevices. In Proc. of the 3rd VLDB Intl. Workshop on Transactions and Electronic Services (TES’ 02), Hong Kong, China, August 2002.Google Scholar
  23. PAG02.
    A. Popovici, G. Alonso, and T. Gross. Design and evaluation of spontaneous container services. Technical report no. 368, Computer Science Department, Swiss Federal Institute of Technology, 2002.Google Scholar
  24. PAG03.
    A. Popovici, G. Alonso, and T. Gross. Just in time aspects: Effcient dynamic weaving for java. In 2nd Intl. Conf. on Aspect-Oriented Software Development, Boston, USA, 2003.Google Scholar
  25. PGA02.
    A. Popovici, T. Gross, and G. Alonso. Dynamic Weaving for Aspect Oriented Programming. In 1st Intl. Conf. on Aspect-Oriented Software Development, Enschede, The Netherlands, April 2002.Google Scholar
  26. PLF+01.
    S. R. Ponnekanti, B. Lee, A. Fox, P. Hanrahan, and T. Winograd. ICrafter: A Service Framework for Ubiquitous Computing Environments. LNCS, 2201, 2001.Google Scholar
  27. SAW94.
    B. Schilit, N. Adams, and R. Want. Context-Aware Computing Applications. In IEEE Workshop on Mobile Computing Systems and Applications, Santa Cruz, CA, US, 1994.Google Scholar
  28. SGGB99.
    E.G. Sirer, R. Grimm, A.J. Gregory, and B.N. Bershad. Design and Implementation of a Distributed Virtual Machine for Networked Computers. In Symposium on Operating Systems Principles, pages 202–216, 1999.Google Scholar
  29. SM.
    Sun Microsystems. The Java Security Model.
  30. SOT+00.
    T. Suganuma, T. Ogasawara, M. Takeuchi, T. Yasue, M. Kawahito, K. Ishizaki, H. Komatsu, and T. Nakatani. Overview of the IBM Java Just-in-Time Compiler. IBM Systems Journal, 39(1):175–193, 2000.CrossRefGoogle Scholar
  31. SPE.
    Spec-The Standard Performance Evaluation Corporation. SPECjvm.Web access
  32. Sun02.
    Sun Microsystems. Java 2 Platform, Standard Edition, v 1.4.0: API Specification, 2002.
  33. XC02.
    Xerox Corporation. The AspectJ Programming Guide. Online Documentation, 2002.
  34. YK01.
    S. S. Yau and F. Karim. Reconfigurable Context-Sensitive Middleware for ADS Applications in Mobile Ad-Hoc Network Environments. In 5th International Symposium on Autonomous Decentralized Systems (ISADS), pages 319–326, March 2001.Google Scholar
  35. ZBS97.
    John A. Zinky, David E. Bakken, and Richard E. Schantz. Architectural Support for Quality of Service for CORBA Objects. Theory and Practice of Object Systems, 3(1), 1997.Google Scholar

Copyright information

© IFIP International Federation for Information Processing 2003

Authors and Affiliations

  • Andrei Popovici
    • 1
  • Andreas Frei
    • 1
  • Gustavo Alonso
    • 1
  1. 1.Department of Computer ScienceSwiss Federal Institute of Technology (ETHZ) ETH ZentrumZürichSwitzerland

Personalised recommendations