Bridging the Gap: Programming Sensor Networks with Application Specific Virtual Machines

Philip Levis, David Gay and David Culler

EECS Department
University of California, Berkeley
Technical Report No. UCB/CSD-04-1343
2004

http://www2.eecs.berkeley.edu/Pubs/TechRpts/2004/CSD-04-1343.pdf

We propose application specific virtual machines as a method to safely and efficiently program sensor networks. Although sensor networks encompass a wide range of application domains, any given network supports a single one. A VM tailored to a particular deployment can provide retasking flexibility within its application class while keeping programs efficient. We present Mate, an architecture for customizing VMs over a wide range of sensor network applications. Customizing the instruction set and triggering events allows for language flexibility, provides very high code density, and enables a wide range of applications.

We evaluate Mate by comparing custom built VMs to two existing proposals for user-level sensor network programming, abstract regions and tree-based aggregation (TinyDB). We show that a VM implemented in our architecture can provide equivalent functionality to the current implementations of these proposals while improving efficiency. Additionally, by decomposing application domains into a set of reusable, fine-grained software components, implementing new user-level programming abstractions is greatly simplified.


BibTeX citation:

@techreport{Levis:CSD-04-1343,
    Author = {Levis, Philip and Gay, David and Culler, David},
    Title = {Bridging the Gap: Programming Sensor Networks with Application Specific Virtual Machines},
    Institution = {EECS Department, University of California, Berkeley},
    Year = {2004},
    URL = {http://www2.eecs.berkeley.edu/Pubs/TechRpts/2004/5259.html},
    Number = {UCB/CSD-04-1343},
    Abstract = {We propose application specific virtual machines as a method to safely and efficiently program sensor networks. Although sensor networks encompass a wide range of application domains, any given network supports a single one. A VM tailored to a particular deployment can provide retasking flexibility within its application class while keeping programs efficient. We present Mate, an architecture for customizing VMs over a wide range of sensor network applications. Customizing the instruction set and triggering events allows for language flexibility, provides very high code density, and enables a wide range of applications. <p> We evaluate Mate by comparing custom built VMs to two existing proposals for user-level sensor network programming, abstract regions and tree-based aggregation (TinyDB). We show that a VM implemented in our architecture can provide equivalent functionality to the current implementations of these proposals while improving efficiency. Additionally, by decomposing application domains into a set of reusable, fine-grained software components, implementing new user-level programming abstractions is greatly simplified.}
}

EndNote citation:

%0 Report
%A Levis, Philip
%A Gay, David
%A Culler, David
%T Bridging the Gap: Programming Sensor Networks with Application Specific Virtual Machines
%I EECS Department, University of California, Berkeley
%D 2004
%@ UCB/CSD-04-1343
%U http://www2.eecs.berkeley.edu/Pubs/TechRpts/2004/5259.html
%F Levis:CSD-04-1343