Many sensor network systems expose general interfaces to system developers for dynamically creating and/or manipulating resources of various kinds. While these interfaces allow programmers to accomplish common system tasks simply and efficiently, they also admit the potential for programmers to mismanage resources, for example through leaked resources or improper resource sharing. These kinds of errors are particularly problematic for sensor networks, given the resource constraints and lack of memory protection on current sensor platforms.
Lighthouse is a static analysis technique that brings the safety of static resource management to systems that dynamically manage resources. Our analysis is based on the observation that sensor network applications often manipulate resources in a producer-consumer pattern. In this style, each resource has a unique owner component at any given point in time, who has both the sole capability to manipulate the resource and the responsibility to properly dispose of the resource or transfer ownership to another component. Our analysis enforces this ownership discipline on components at compile time.Lighthouse Website
Status: Inactive Project
Main Research Area: Privacy, Security, and Integrity