ACM Home Page
Please provide us with feedback. Feedback
Interface contracts for TinyOS
Full text PdfPdf (357 KB)
Source
Information Processing In Sensor Networks archive
Proceedings of the 6th international conference on Information processing in sensor networks table of contents
Cambridge, Massachusetts, USA
SESSION: OS and services table of contents
Pages: 158 - 165  
Year of Publication: 2007
ISBN:978-1-59593-638-X
Authors
Will Archer  University of Utah
Philip Levis  Stanford University
John Regehr  University of Utah
Sponsors
ACM: Association for Computing Machinery
SIGBED: ACM Special Interest Group on Embedded Systems
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 12,   Downloads (12 Months): 88,   Citation Count: 4
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1236360.1236382
What is a DOI?

ABSTRACT

TinyOS applications are built with software components that communicate through narrow interfaces. Since components enable fine-grained code reuse, this approach has been successful in creating applications that make very efficient use of the limited code and data memory on sensor network nodes. However, the other important benefit of components---rapid application development through black-box reuse---remains largely unrealized because in many cases interfaces have implied usage constraints that can be the source of frustrating program errors. Developers are commonly forced to read the source code for components, partially defeating the purpose of using components in the first place. Our research helps solve these problems by allowing developers to explicitly specify and enforce component interface contracts. Due to the extensive reuse of the most common interfaces, implementing contracts for a small number of frequently reused interfaces permitted us to extensively check a number of applications. We uncovered some subtle and previously unknown bugs in applications that have been in common use for years.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
 
2
3
4
 
5
6
7
 
8
Philip Levis. Amqueue implementation, 2006. http://tinyos.cvs.sourceforge.net/*checkout*/tinyos/tinyos-2.x/tos/system/AMQueueImplP.nc.
 
9
Philip Levis. TinyOS Extension Proposal (TEP) 107: TinyOS 2.x Boot Sequence, 2006. http://tinyos.cvs.sourceforge.net/*checkout*/tinyos/tinyos-2.x/doc/html/tep107.html.
 
10
Philip Levis. TinyOS Extension Proposal (TEP) 116: Packet Protocols, 2006. http://tinyos.cvs.sourceforge.net/*checkout*/tinyos/tinyos-2.x/doc/html/tep116.html.
 
11
 
12
13
14
 
15
Ram Kumar Rengaswamy, Eddie Kohler, and Mani Srivastava. Software-based memory protection in sensor nodes. In Proc. of the 3rd Workshop on Embedded Networked Sensors (EmNets), Cambridge, MA, May 2006.
16
 
17
 
18


Collaborative Colleagues:
Will Archer: colleagues
Philip Levis: colleagues
John Regehr: colleagues