TinyOS: An Operating System for Sensor Networks

  • P. Levis
  • S. Madden
  • J. Polastre
  • R. Szewczyk
  • K. Whitehouse
  • A. Woo
  • D. Gay
  • J. Hill
  • M. Welsh
  • E. Brewer
  • D. Culler

Abstract

We present TinyOS, a flexible, application-specific operating system for sensor networks, which form a core component of ambient intelligence systems. Sensor networks consist of (potentially) thousands of tiny, low-power nodes, each of which execute concurrent, reactive programs that must operate with severe memory and power constraints. The sensor network challenges of limited resources, event-centric concurrent applications, and low-power operation drive the design of TinyOS. Our solution combines flexible, fine-grain components with an execution model that supports complex yet safe concurrent operations. TinyOS meets these challenges well and has become the platform of choice for sensor network research; it is in use by over a hundred groups worldwide, and supports a broad range of applications and research topics. We provide a qualitative and quantitative evaluation of the system, showing that it supports complex, concurrent programs with very low memory requirements (many applications fit within 16KB of memory, and the core OS is 400 bytes) and efficient, low-power operation.We present our experiences with TinyOS as a platform for sensor network innovation and applications.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    ANSI/IEEE Std 802.11 1999 Edition.Google Scholar
  2. 2.
    TinySec: Link Layer Security for Tiny Devices. http://www.cs.berkeley.edu/nks/tinysec/.Google Scholar
  3. 3.
    G. Asada, M. Dong, T. Lin, F. Newberg, G. Pottie, W. Kaiser, and H. Marcy. Wireless integrated network sensors: Low power systems on a chip. 1998.Google Scholar
  4. 4.
    B. Atwood, B. Warneke, and K. S. Pister. Preliminary circuits for smart dust. In Proceedings of the 2000 Southwest Symposium on Mixed-Signal Design, San Diego, California, February 27–29, 2000.Google Scholar
  5. 5.
    L. Barello. Avrx real time kernel. http://www.barello.net/avrx/.Google Scholar
  6. 6.
    D. Beuche, A. Guerrouat, H. Papajewski, W. Schröder-Preikschat, O. Spinczyk, and U. Spinczyk. The PURE family of object-oriented operating systems for deeply embedded systems. In Proceedings of the 2nd IEEE International Symposium on Object-Oriented Real-Time Distributed Computing, 1999.Google Scholar
  7. 7.
    Bluetooth SIG, Inc. http://www.bluetooth.org.Google Scholar
  8. 8.
    N. Bulusu, V. Bychkovskiy, D. Estrin, and J. Heidemann. Scalable, ad hoc deployable, rf-based localization. In Proceedings of the Grace Hopper Conference on Celebration of Women in Computing, Vancouver, Canada, October 2002.Google Scholar
  9. 9.
    D. W. Carman, P. S. Kruus, and B. J. Matt. Constraints and approaches for distributedsensor network security. NAI Labs Technical Report #00-010, September 2000.Google Scholar
  10. 10.
    Center for Information Technology Research in the Interest of Society. Smart buildings admit their faults. http://www.citris.berkeley.edu/applications/disaster_response/smar_tbuildings.html, 2002.Google Scholar
  11. 11.
    A. Cerpa, J. Elson, D. Estrin, L. Girod, M. Hamilton, and J. Zhao. Habitat monitoring: Application driver for wireless communications technology. In Proceedings of the Workshop on Data Communications in Latin America and the Caribbean, Apr. 2001.Google Scholar
  12. 12.
    L. P. Clare, G. Pottie, and J. R. Agre. Self-organizing distributed microsensor networks. In SPIE 13th Annual International Symposium on Aerospace/Defense Sensing, Simulation, and Controls (AeroSense), Unattended Ground Sensor Technologies and Applications Conference, Apr. 1999.Google Scholar
  13. 13.
    R. Deline and M. Fahndrich. Enforcing High-level Protocols in Low-Level Software. In Proceedings of the ACM SIGPLAN’ 01 Conference on Programming Language Design and Implementation, June 2001.Google Scholar
  14. 14.
    L. Doherty, B. Hohlt, E. Brewer, and K. Pister. SLACKER. http://www-bsac.eecs.berkeley.edu/projects/ivy/.Google Scholar
  15. 15.
    Egnite SoftwareGmbH. Nut/OS. http://www.ethernut.de/en/software.html.Google Scholar
  16. 16.
    J. Elson, L. Girod, and D. Estrin. Fine-grained network time synchronization using reference broadcasts. In Fifth Symposium on Operating Systems Design and Implementation (OSDI 2002), Boston, MA, USA., dec 2002.Google Scholar
  17. 17.
    D. Engler, B. Chelf, A. Chou, and S. Hallem. Checking system rules using system specific, programmer-written compiler extensions. In Proceedings of the Fourth Symposium on Operating Systems Design and Implementation., Oct. 2000.Google Scholar
  18. 18.
    D. Estrin et al. Embedded, Everywhere: A Research Agenda for Networked Systems of Embedded Computers. National Acedemy Press, Washington, DC, USA, 2001.Google Scholar
  19. 19.
    M. Flatt and M. Felleisen. Units: Cool modules for HOT languages. In Proceedings of the ACM SIGPLAN’ 98 Conference on Programming Language Design and Implementation, pages 236–248, 1998.Google Scholar
  20. 20.
    B. Ford, G. Back, G. Benson, J. Lepreau, A. Lin, and O. Shivers. The flux OSKit: A substrate for kernel and language research. In Symposium on Operating Systems Principles, pages 38–51, 1997.Google Scholar
  21. 21.
    L._F. Friedrich, J. Stankovic, M. Humphrey, M. Marley, and J. J.W. Haskins. A survey of configurable component-based operating systems for embedded applications. IEEE Micro, May 2001.Google Scholar
  22. 22.
    D. Ganesan. TinyDiffusion Application Programmer’s Interface API 0.1. http://www.isi.edu/scadds/papers/tinydiffusion-v0.1.pdf.Google Scholar
  23. 23.
    D. Ganesan, B. Krishnamachari, A. Woo, D. Culler, D. Estrin, and S. Wicker. An empirical study of epidemic algorithms in large scale multihop wireless networks. citeseer.nj.nec.com/ganesan02empirical.html, 2002. Submitted for publication, February 2002.Google Scholar
  24. 24.
    D. Gay, P. Levis, R. von Behren, M. Welsh, E. Brewer, and D. Culler. The nesC language: A holistic approach to networked embedded systems. In Proceedings of Programming Language Design and Implementation (PLDI), June 2003.Google Scholar
  25. 25.
    I. Gupta and K. Birman. Holistic operations in large-scale sensor network systems: A probabilistic peer-to-peer approach. In Proceedings of International Workshop on Future Directions in Distributed Computing (FuDiCo), June 2002.Google Scholar
  26. 26.
    T. Ha, B. Blum, J. Stankovic, and T. Abdelzaher. AIDA: Application Independant Data Aggregation in Wireless Sensor Networks. Submitted to Special Issue of ACM TECS, January 2003.Google Scholar
  27. 27.
    J. S. Heidemann, F. Silva, C. Intanagonwiwat, R. Govindan, D. Estrin, and D. Ganesan. Building efficient wireless sensor networks with low-level naming. In Proceedings of the 18th ACM Symposium on Operating Systems Principles, Banff, Canada, October 2001.Google Scholar
  28. 28.
    D. Hildebrand. An Architectural Overview of QNX. http://www.qnx.com/literature/whitepapers/archoverview.html.Google Scholar
  29. 29.
    J. Hill and D. E. Culler. Mica: a wireless platform for deeply embedded networks. IEEE Micro, 22(6):12–24, nov/dec 2002.CrossRefGoogle Scholar
  30. 30.
    J. Hill, R. Szewczyk, A. Woo, S. Hollar, D. E. Culler, and K. S. J. Pister. System architecture directions for networked sensors. In Architectural Support for Programming Languages and Operating Systems, pages 93–104, Boston, MA, USA, Nov. 2000.Google Scholar
  31. 31.
    J. Hui, Z. Ren, and B. H. Krogh. Sentry-based power management in wireless sensor networks. In Proceedings of Second International Workshop on Information Processing in Sensor Networks (IPSN’ 03), Palo Alto, CA, USA, Apr. 2003.Google Scholar
  32. 32.
    N. C. Hutchinson and L. L. Peterson. The x-kernel: An architecture for implementing network protocols. IEEE Transactions on Software Engineering, 17(1):64–76, 1991.CrossRefGoogle Scholar
  33. 33.
    C. Intanagonwiwat, D. Estrin, R. Govindan, and J. Heidemann. Impact of network density on data aggregation in wireless sensor networks. In Proceedings of the International Conference on Distributed Computing Systems (ICDCS), July 2002.Google Scholar
  34. 34.
    C. Intanagonwiwat, R. Govindan, and D. Estrin. Directed diffusion: a scalable and robust communication paradigm for sensor networks. In Proceedings of the International Conference on Mobile Computing and Networking, Aug. 2000.Google Scholar
  35. 35.
    Integrated Chipware, Inc. Integrated Chipware icWORKSHOP. http://www.chipware.com/.Google Scholar
  36. 36.
    Jason Hill. Integrated μ-wireless communication platform. http://webs.cs.berkeley.edu/retreat-1-03/slides/Mote_Chip_Jhill_Nest_jan2003.pdf.Google Scholar
  37. 37.
    C. Karlof, Y. Li, and J. Polastre. ARRIVE: Algorithm for Robust Routing in Volatile Environments. Technical Report UCB//CSD-03-1233, University of California at Berkeley, Berkeley, CA, Mar. 2003.Google Scholar
  38. 38.
    B. Karp and H. T. Kung. GPSR: greedy perimeter stateless routing for wireless networks. In International Conference on Mobile Computing and Networking (MobiCom 2000), pages 243–254, Boston, MA, USA, 2000.Google Scholar
  39. 39.
    O. Kasten and J. Beutel. BTnode rev2.2. http://www.inf.ethz.ch/vs/res/proj/smart-its/btnode.html.Google Scholar
  40. 40.
    B. Kauler. CREEM Concurrent Realitme Embedded Executive for Microcontrollers. http://www.goofee.com/creem.htm.Google Scholar
  41. 41.
    E. Kohler, R. Morris, B. Chen, J. Jannotti, and M. F. Kaashoek. The Click modular router. ACM Transactions on Computer Systems, 18(3):263–297, August 2000.CrossRefGoogle Scholar
  42. 42.
    B. Krishanamachari, D. Estrin, and S. Wicker. The impact of data aggregation in wireless sensor networks. In International Workshop of Distributed Event Based Systems (DEBS), Vienna, Austria, Dec. 2002.Google Scholar
  43. 43.
    P. Levis and D. Culler. Mat’e: A tiny virtual machine for sensor networks. In International Conference on Architectural Support for Programming Languages and Operating Systems, San Jose, CA, USA, Oct. 2002.Google Scholar
  44. 44.
    P. Levis, N. Lee, A. Woo, S. Madden, and D. Culler. Tossim: Simulating large wireless sensor networks of tinyos motes. Technical Report UCB/CSD-TBD, U.C. Berkeley Computer Science Division, March 2003.Google Scholar
  45. 45.
    D. Liu and P. Ning. Distribution of key chain commitments for broadcast authentication in distributed sensor networks. In 10th Annual Network and Distributed System Security Symposium, San Diego, CA, USA, Feb 2003.Google Scholar
  46. 46.
    J. Liu, P. Cheung, L. Guibas, and F. Zhao. A dual-space approach to tracking and sensor management in wireless sensor networks. In Proceedings of First ACM International Workshop on Wireless Sensor Networks and Applications, September 2002.Google Scholar
  47. 47.
    C. Lu, B. M. Blum, T. F. Abdelzaher, J. A. Stankovic, and T. He. RAP: A real-time communication architecture for large-scale wireless sensor networks. In Proceedings of IEEE RTAS 2002, San Jose, CA, September 2002.Google Scholar
  48. 48.
    LynuxWorks. LynxOS 4.0 Real-Time Operating System. http://www.lynuxworks.com/.Google Scholar
  49. 49.
    S. Madden, M. J. Franklin, J. M. Hellerstein, and W. Hong. TAG: A Tiny Aggregation Service for Ad-Hoc Sensor Networks. In OSDI, 2002.Google Scholar
  50. 50.
    S. Madden, W. Hong, J. Hellerstein, and M. Franklin. TinyDB web page. http://telegraph.cs.berkeley.edu/tinydb.Google Scholar
  51. 51.
    A. Mainwaring, J. Polastre, R. Szewczyk, D. Culler, and J. Anderson. Wireless sensor networks for habitat monitoring. In ACM International Workshop on Wireless SensorNetworks and Applications (WSNA’02), Atlanta, GA, USA, Sept. 2002.Google Scholar
  52. 52.
    Microsoft Corporation. Microsoft Windows CE. http://www.microsoft.com/windowsce/embedded/.Google Scholar
  53. 53.
    Microware. Microware Ariel Technical Overview. http://www.microware.com/ProductsServices/Technologies/ariel_technology_bri%ef.html.Google Scholar
  54. 54.
    Microware. Microware OS-9. http://www.microware.com/ProductsServices/Technologies/os-91.html.Google Scholar
  55. 55.
    Millenial Net. http://www.millennial.net/.Google Scholar
  56. 56.
    R. Min, M. Bhardwaj, S.-H. Cho, N. Ickes, E. Shih, A. Sinha, A. Wang, and A. Chandrakasan. Energy-centric enabling technologies for wireless sensor networks. 9(4), August 2002.Google Scholar
  57. 57.
    D. Mosberger and L. Peterson. Making paths explicit in the Scout operating system. In Proceedings of the USENIX Symposium on Operating Systems Design and Implementation 1996, October 1996.Google Scholar
  58. 58.
    Nilsen Elektronikk AS. Nilsen Elektronikk Finite State Machine Operating System. http://www.ethernut.de/en/software.html.Google Scholar
  59. 59.
    R. Nowak and U. Mitra. Boundary estimation in sensor networks: Theory and methods. In Proceedings of 2nd International Workshop on Information Processing in Sensor Networks, Palo Alto, CA, April 2003.Google Scholar
  60. 60.
    Palm, Inc. PalmOS Software 3.5 Overview. http://www.palm.com/devzone/docs/palmos35.html.Google Scholar
  61. 61.
    A. Perrig, R. Szewczyk, V. Wen, D. Culler, and J. D. Tygar. Spins: Security protocols for sensor networks. Wireless Networks, 8(5):521–534, Sep 2002. Previous version of this paper appeared as PSWCT2001.CrossRefGoogle Scholar
  62. 62.
    S. Ping. Something about time syncronization. XXX Lets get this written up as an Intel tech report.Google Scholar
  63. 63.
    J. Polastre. Design and implementation of wireless sensor networks for habitat monitoring. Master’s thesis, University of California at Berkeley, 2003.Google Scholar
  64. 64.
    N. B. Priyantha, A. Miu, H. Balakrishnan, and S. Teller. The Cricket Compass for contextaware mobile applications. In Proceedings of the 7th ACM MOBICOM, Rome, Italy, July 2001.Google Scholar
  65. 65.
    QNX Software Systems Ltd. QNX Neutrino Realtime OS. http://www.qnx.com/products/os/neutrino.html.Google Scholar
  66. 66.
    Red Hat, Inc. eCos v2.0 Embedded Operating System. http://sources.redhat.com/ecos.Google Scholar
  67. 67.
    A. Reid, M. Flatt, L. Stoller, J. Lepreau, and E. Eide. Knit: Component compositionfor systems software. In Proc. of the 4th Operating Systems Design and Implementation (OSDI), pages 347–360, 2000.Google Scholar
  68. 68.
    C. Sharp. Something about the mag tracking demo. XXX Lets get this written up as anIntel tech report.Google Scholar
  69. 69.
    C. Sharp et al. NEST Challenge Architecture. http://www.ai.mit.edu/people/sombrero/nestwiki/index/.Google Scholar
  70. 70.
    J. A. Stankovic, H. Wang, M. Humphrey, R. Zhu, R. Poornalingam, and C. Lu. VEST: Virginia Embedded Systems Toolkit. In IEEE/IEE Real-Time Embedded Systems Workshop, London, December 2001.Google Scholar
  71. 71.
    Symbian. Symbian OS — the mobile operating system. http://www.symbian.com/.Google Scholar
  72. 72.
    uClinux Development Team. uClinux, The Linux/Microcontroller Project. http://www.uclinux.org/.Google Scholar
  73. 73.
    University of California at Berkeley. 800-node self-organized wireless sensor network. http://today.cs.berkeley.edu/800demo/, Aug. 2001.Google Scholar
  74. 74.
    T. von Eicken, D. E. Culler, S. C. Goldstein, and K. E. Schauser. Active messages: a mechanism for integrating communication and computation. In Proceedings of the 19 th Annual International Symposium on Computer Architecture, pages 256–266, May 1992.Google Scholar
  75. 75.
    B. Warneke, M. Last, B. Leibowitz, and K. S. J. Pister. Smart dust: Communicating with a cubic-millimeter computer. IEEE Computer, 32(1):43–51, January 2001.Google Scholar
  76. 76.
    K. Whitehouse. The design of calamari: an ad-hoc localization system for sensor networks. Master’s thesis, University of California at Berkeley, 2002.Google Scholar
  77. 77.
    K. Whitehouse and D. Culler. Calibration as parameter estimation in sensor networks. In ACM International Workshop on Wireless Sensor Networks and Applications (WSNA’02), Atlanta, GA, USA, Sept. 2002.Google Scholar
  78. 78.
    Wind River Systems, Inc. OSEKWorks 4.0. http://www.windriver.com/products/osekworks/osekworks.pdf.Google Scholar
  79. 79.
    Wind River Systems, Inc. pSOSystem Datasheet. http://www.windriver.com/products/html/psosystem ds.html.Google Scholar
  80. 80.
    A. Woo and D. Culler. Evaluation of Efficient Link Reliability Estimators for Low-Power Wireless Networks. Technical report, UC Berkeley, 2002.Google Scholar
  81. 81.
    A. D. Wood and J. A. Stankovic. Denial of service in sensor networks. IEEE Computer, 35(10):54–62, Oct. 2002.Google Scholar
  82. 82.
    M. D. Yarvis, W. S. Conner, L. Krishnamurthy, A. Mainwaring, J. Chhabra, and B. Elliott. Real-World Experiences with an Interactive Ad Hoc Sensor Network. In International Conference on Parallel Processing Workshops, 2002.Google Scholar
  83. 83.
    W. Ye, J. Heidemann, and D. Estrin. An energy-efficient mac protocol for wireless sensor networks. In Proceedings of IEEE Infocom 2002, New York, NY, USA., June 2002.Google Scholar
  84. 84.
    W. Ye, J. Heidemann, and D. Estrin. A flexible and reliable radio communication stack on motes. Technical Report ISI-TR-565, USC/ISI, Aug. 2002.Google Scholar
  85. 85.
    K. M. Zuberi, P. Pillai, and K. G. Shin. EMERALDS: a small-memory real-time microkernel. In Symposium on Operating Systems Principles, pages 277–299, 1999.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • P. Levis
    • 1
  • S. Madden
    • 1
    • 2
    • 3
  • J. Polastre
    • 1
  • R. Szewczyk
    • 1
  • K. Whitehouse
    • 4
  • A. Woo
    • 4
  • D. Gay
    • 2
  • J. Hill
    • 5
  • M. Welsh
    • 2
    • 6
  • E. Brewer
    • 1
  • D. Culler
    • 1
  1. 1.Dept. of Electrical Engineering and Computer SciencesUniversity of CaliforniaBerkeleyUSA
  2. 2.Intel Research BerkeleyBerkeleyUSA
  3. 3.MIT, CSAILCambridgeUSA
  4. 4.Electrical Engineering DepartmentUCLALos AngelesUSA
  5. 5.JLH LabsCapistrano BeachUSA
  6. 6.Division of Engineering and Applied SciencesHarvard UniversityCambridgeUSA

Personalised recommendations