Static analysis by abstract interpretation of functional properties of device drivers in TinyOS

A Ouadjaout, A Miné, N Lasla, N Badache - Journal of Systems and …, 2016 - Elsevier
Journal of Systems and Software, 2016Elsevier
In this paper, we present a static analysis by Abstract Interpretation of device drivers
developed in the TinyOS operating system, which is considered as the de facto system in
wireless sensor networks. We focus on verifying user-defined functional properties
describing safety rules that programs should obey in order to interact correctly with the
hardware. Our analysis is sound by construction and can prove that all possible execution
paths follow the correct interaction patterns specified by the functional property. The …
Abstract
In this paper, we present a static analysis by Abstract Interpretation of device drivers developed in the TinyOS operating system, which is considered as the de facto system in wireless sensor networks. We focus on verifying user-defined functional properties describing safety rules that programs should obey in order to interact correctly with the hardware. Our analysis is sound by construction and can prove that all possible execution paths follow the correct interaction patterns specified by the functional property. The soundness of the analysis is justified with respect to a preemptive execution model where interrupts can occur during execution depending on the configuration of specific hardware registers. The proposed solution performs a modular analysis that analyzes every interrupt independently and aggregates their results to over-approximate the effect of preemption. By doing so, we avoid reanalyzing interrupts in every context where they are enabled which improves considerably the scalability of the solution. A number of partitioning techniques are also presented in order to track precisely some crucial information, such as the hardware state and the tasks queue. We have performed several experiments on real-world TinyOS device drivers of the ATmega128 MCU and promising results demonstrate the effectiveness of our analysis.
Elsevier