NesC: A Component-Oriented Language for Networked Embedded Systems, Matt Welsh, Harvard University and Intel Research Berkeley

Wireless sensor networks -- consisting of thousands of tiny, low-power devices with a small amount of memory and computational power -- demand new approaches to software engineering, concurrency, and resource management. Sensor network nodes execute concurrent, reactive programs that must operate under severe memory and power constraints. In this talk, I will describe NesC, a new variant of C that supports the special needs of this domain by exposing a programming model that incorporates event-driven execution, a flexible concurrency model, and component-oriented application design. By imposing restrictions on the programming model, the NesC compiler is also able to perform whole-program analyses, including static data-race detection and aggressive function inlining.

The NesC language has been used to implement TinyOS, a small operating system for sensor networks, as well as several significant sensor applications. NesC and TinyOS have been adopted by a large number of sensor network research groups, and our experience and evaluation of the language shows that it is effective at supporting the complex, concurrent programming style demanded by this new class of deeply networked systems.

mdw@eecs.harvard.edu">Matt Welsh is a senior researcher at Intel Research in Berkeley, California, and will be joining the Computer Science faculty at Harvard University in July. His research interests span many aspects of complex distributed systems, with a recent focus on Internet services and sensor networks. Matt holds a Ph.D. in Computer Science from UC Berkeley.

 
Date and Time:
 Tuesday, April 22, 2003.  2:45 PM.
Approximate duration of 1 hour(s).
Location:
Gates B03  [Map]
URL:
Audience:
Category:
Lectures/Readings
Sponsor:
Armando Fox
Admission:
Free
Download:
Last Modified:
April 18, 2003