- Computer Science Laboratory Sorbonne Université - CNRS UMR 7606

LIP6 supports the Pink October campaign for breast cancer awareness.

Synchronous Programming of Device Drivers for Global Resource Control in Embedded Operating Systems

Monday, 五月 7, 2012
Nicolas Berthier, Florence Maraninchi (Verimag)

In embedded systems, controlling a shared resource like the bus, or improving a property like power consumption, may be hard to achieve when programming device drivers individually. In this paper, we propose a global resource control approach, based on a centralized view of the devices’ states. The solution we propose operates on the hardware/software interface. It involves a simple adaptation of the application level, to communicate with the hardware via a control layer. The control layer itself is built from a set of simple automata: the device drivers, whose states correspond to functional or power consumption modes, and a controller to enforce global properties. All these automata are programmed using a synchronous language, and compiled into a single piece of C code. We take as example the node of a sensor network. We explain the approach in details, demonstrate its use and benefits with an event-driven or multithreading operating system, and draw guidelines for its use in other contexts.

Gille.Muller (at) nulllip6.fr