The concept of time is paramount in sensing systems. Surprisingly, this concept is seldom explicitly captured by programming-language constructs or by operating-system primitives. From the programmer’s viewpoint, a system’s temporal behavior can be hardly defined explicitly, because it is implicitly managed by relying on priority mechanisms and the like. Moreover, temporal behavior depends on hidden policies in the kernel, which are not visible to the application programmer and subject to change in different versions of the OS platform. Ultimately, the timing of sensing activities is somehow nondeterministic, as long as the software cannot define it deterministically. A set of architectural abstractions has been identified that raises time to the level of a first-class concept. It includes a collection of hierarchically organized virtual clocks, whose speed can be tuned at the application level. Atomic actions to be performed are arranged in timelines, whose advancement is driven by the virtual clocks. Therefore, temporal behavior is explicitly defined and can be dynamically controlled by tuning the speeds of the virtual clocks. Moreover, temporal behavior can be observed and tested, even in an emulation environment. A prototype version of the platform was developed and tested for certain experimental applications
Fiamberti, F., Micucci, D., Tisato, F. (2013). A Time-Driven Approach to Sensing Systems. In Proceedings of DSP Application Day (pp.67-77).
A Time-Driven Approach to Sensing Systems
FIAMBERTI, FRANCESCO;MICUCCI, DANIELA;TISATO, FRANCESCO
2013
Abstract
The concept of time is paramount in sensing systems. Surprisingly, this concept is seldom explicitly captured by programming-language constructs or by operating-system primitives. From the programmer’s viewpoint, a system’s temporal behavior can be hardly defined explicitly, because it is implicitly managed by relying on priority mechanisms and the like. Moreover, temporal behavior depends on hidden policies in the kernel, which are not visible to the application programmer and subject to change in different versions of the OS platform. Ultimately, the timing of sensing activities is somehow nondeterministic, as long as the software cannot define it deterministically. A set of architectural abstractions has been identified that raises time to the level of a first-class concept. It includes a collection of hierarchically organized virtual clocks, whose speed can be tuned at the application level. Atomic actions to be performed are arranged in timelines, whose advancement is driven by the virtual clocks. Therefore, temporal behavior is explicitly defined and can be dynamically controlled by tuning the speeds of the virtual clocks. Moreover, temporal behavior can be observed and tested, even in an emulation environment. A prototype version of the platform was developed and tested for certain experimental applicationsI documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.