skip to main content
article

Maté: a tiny virtual machine for sensor networks

Authors Info & Claims
Published:01 October 2002Publication History
Skip Abstract Section

Abstract

Composed of tens of thousands of tiny devices with very limited resources ("motes"), sensor networks are subject to novel systems problems and constraints. The large number of motes in a sensor network means that there will often be some failing nodes; networks must be easy to repopulate. Often there is no feasible method to recharge motes, so energy is a precious resource. Once deployed, a network must be reprogrammable although physically unreachable, and this reprogramming can be a significant energy cost.We present Maté, a tiny communication-centric virtual machine designed for sensor networks. Maté's high-level interface allows complex programs to be very short (under 100 bytes), reducing the energy cost of transmitting new programs. Code is broken up into small capsules of 24 instructions, which can self-replicate through the network. Packet sending and reception capsules enable the deployment of ad-hoc routing and data aggregation algorithms. Maté's concise, high-level program representation simplifies programming and allows large networks to be frequently reprogrammed in an energy-efficient manner; in addition, its safe execution environment suggests a use of virtual machines to provide the user/kernel boundary on motes that have no hardware protection mechanisms.

References

  1. Smart buildings admit their faults. Lab Notes: Research from the College of Engineering, UC Berkeley. http://cos.berkeley.edu/labnotes/1101.smartbuildings.html, 2001.Google ScholarGoogle Scholar
  2. Small Times: Big News in Small Tech. http://www.smalltimes.comGoogle ScholarGoogle Scholar
  3. Edouard Bugnion, Scott Devine, and Mendel Rosenblum. Disco: Running Commodity Operating Systems on Scalable Multiprocessors. In Proceedings of the Sixteenth ACM Symposium on Operating Systems Principles, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. David Culler, Anurag Sah, Klaus Schauser, Thorsten von Eicken and John Wawrzynek. Fine-grain Parallelism with Minimal Hardware Support: A Compiler-Controlled Threaded Abstract Machine. In Proceedings of the Fourth International Conference on Architectural Support for Programming Languages and Operating Systems, 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Lloyd I. Dickman. Small Virtual Machines: A Survey. In Proceedings of the Workshop on Virtual Computer Systems, 1973. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Wolfgang Emmerich, Cecilia Mascolo, and Anthony Finkelstein. Implementing Incremental Code Migration with XML. In Proceedings of the 22nd International Conference on Software Engineering, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Deborah Estrin, Ramesh Govindan, John Heidemann, and Satish Kumar. Next Century Challenges: Scalable Coordination in Sensor Networks. In Proceedings of the ACM/IEEE International Conference on Mobile Computing and Networking, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Virginie Galtier, Kevin L. Mills, Yannick Carlinet, Stefan Leigh, and Andrew Rukhin. Expressing Meaningful Processing Requirements Among Heterogeneous Nodes in an Active Network. In Proceedings of the Second International Workshop on Software and Performance, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. John Heidemann, Fabio Silva, Shalermek Intanagonwiwat, Ramesh Govindan (USC/ISI), Deborah Estrin, Deepak Ganesan (UCLA). Building Efficient Wireless Sensor Networks with Low-Level Naming. In Proceedings of the 18th ACM Symposium on Operating System Principles, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Jason Hill and David Culler. A wireless embedded sensor architecture for system-level optimization. Intel Research IRB-TR-02-00N, 2002.Google ScholarGoogle Scholar
  11. Jason Hill, Robert Szewczyk, Alec Woo, Seth Hollar, David Culler, and Kristofer Pister. System Architecture Directions for Networked Sensors. In the Ninth International Conference on Architectural Support for Programming Languages and Operating Systems, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Victor Hsu, Joseph M. Kahn, and Kristofer Pister. Wireless Communications for Smart Dust. Electronics Research Laboratory Technical Memorandum Number M98/2, 1998.Google ScholarGoogle Scholar
  13. Chalermek Intanagonwiwat, Deborah Estrin, Ramesh Govindan, and John Heidemann. Impact of Network Density on Data Aggregation in Wireless Sensor Networks. Technical Report 01-750, University of Southern California Computer Science Department, 2001.Google ScholarGoogle Scholar
  14. Chalermek Intanagonwiwat, Ramesh Govindan, and Deborah Estrin. Directed Diffusion: A Scalable and Robust Communication Paradigm for Sensor Networks. In Proceedings of the ACM/IEEE International Conference on Mobile Computing and Networking, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Java 2 Platform Micro Edition (J2ME) Technology for Creating Mobile Devices White Paper. http://java.sun.com/j2me/docs/Google ScholarGoogle Scholar
  16. Java Card Technology. http://java.sun.com/products/javacard/Google ScholarGoogle Scholar
  17. Richard K. Johnsson, John D. Wick. An Overview of the Mesa Processor Architecture. In Proceedings of the Symposium on Architectural Support for Programming Languages and Operating Systems, 1982. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Joseph M. Kahn, Randy H. Katz, Kristofer Pister. Next Century Challenges: Mobile Networking for "Smart Dust." In Proceedings of the ACM/IEEE International Conference on Mobile Computing and Networking, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Philip J. Koopman, Jr. Modern Stack Computer Architecture. In System Design and Network Architecture Conference, 1990.Google ScholarGoogle Scholar
  20. Tim Lindholm and Frank Yellin. The Java Virtual Machine Specification, Second Edition. Addison-Wesley, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Samuel R. Madden, Michael J. Franklin, Joseph M. Hellerstein, and Wei Hong. TAG: A Tiny AGgregation Service for Ad-Hoc Sensor Networks. In submission.Google ScholarGoogle Scholar
  22. Samuel R. Madden, Mehul A. Shah, Joseph M. Hellerstein, and Vijayshankar Raman. Continuously Adaptive Continuous Queries over Streams. In Proceedings of the ACM SIGMOD International Conference on Management of Data, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Alan Mainwaring, private communication, 2002.Google ScholarGoogle Scholar
  24. Dejan S. Milojicic, Fred Douglas, Yves Paindaveine, Richard Wheeler, and Songnian Zhou. Process Migration. In ACM Computing Surveys, Volume 32, Issue 3, September 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Charles H. Moore and Geoffrey C. Leach. FORTH - A Language for Interactive Computing. 1970.Google ScholarGoogle Scholar
  26. Michael Noakes, Deborah Wallach, and William J. Dally. The J-Machine Multicomputer: An Architectural Evaluation. In Proceedings of the 20th International Symposium on Computer Architecture, 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Brian D. Noble, M. Satyanarayanan, Dushyanth Narayanan, James Eric Tilton, Jason Flinn and Kevin R. Walker. Agile application-aware adaptation for mobility. In Proceedings of the Sixteenth ACM Symposium on Operating Systems Principles, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Charles E. Perkins, Elizabeth M. Belding-Royer, and Samir Das. Ad Hoc On Demand Distance Vector (AODV) Routing. IETF Internet draft, draft-ietf-manet-aodv-09.txt, November 2001 (Work in Progress). Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Adrian Perrig, Robert Szewczyk, Victor Wen, David Culler and J. D. Tygar. SPINS: Security Protocols for Sensor Networks. In The Proceedings of Mobicom 2001, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Phillip Stanley-Marbell and Liviu Iftode. Scylla: A Smart Virtual Machine for Mobile Embedded Systems. In Proceedings of The 3rd IEEE Workshop on Mobile Computing Systems and Applications, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Robert Szewczyk, private communcation, 2002.Google ScholarGoogle Scholar
  32. David L. Tennenhouse and David J. Wetherall. Towards an Active Network Architecture. In Computer Communication Review, Vol. 26, No. 2, April 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Thorsten von Eicken, David Culler, Seth Goldstein, and Klaus Schauser. Active Messages: A Mechanism for Integrated Communication and Computation. In Proceedings of the 19th International Symposium on Computer Architecture, 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. David J. Wetherall, John V. Guttag and David L. Tennenhouse. ANTS: A Toolkit for Building and Dynamically Deploying Network Protocols. IEEE OPENARCH '98, 1998.Google ScholarGoogle Scholar
  35. Alexander L. Wolf, Dennis Heimbigner, John Knight, Premkumar Devanbu, Michael Gertz, and Antonio Carzaniga. Bend, Don't Break: Using Reconfiguration to Achieve Survivability. Third Information Survivability Workshop, October 2000.Google ScholarGoogle Scholar

Index Terms

  1. Maté: a tiny virtual machine for sensor networks
    Index terms have been assigned to the content through auto-classification.

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    Full Access

    • Published in

      cover image ACM SIGARCH Computer Architecture News
      ACM SIGARCH Computer Architecture News  Volume 30, Issue 5
      Special Issue: Proceedings of the 10th annual conference on Architectural Support for Programming Languages and Operating Systems
      December 2002
      296 pages
      ISSN:0163-5964
      DOI:10.1145/635506
      Issue’s Table of Contents
      • cover image ACM Conferences
        ASPLOS X: Proceedings of the 10th international conference on Architectural support for programming languages and operating systems
        October 2002
        318 pages
        ISBN:1581135742
        DOI:10.1145/605397

      Copyright © 2002 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 1 October 2002

      Check for updates

      Qualifiers

      • article

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader