Sensor node operating system provides a limited number of common services for developers to construct applications for wireless sensor networks. The sensor network community selected TinyOS as the de facto standard with most existing applications, libraries and device d More
Sensor node operating system provides a limited number of common services for developers to construct applications for wireless sensor networks. The sensor network community selected TinyOS as the de facto standard with most existing applications, libraries and device drivers available for TinyOS. The programming model of TinyOS is event-based and is not easy to use. In this paper, we present a new task scheduler for TinyOS that includes a new computation concept, named Job. Jobs are a collaborative and non-preemptive way of multitasking. On the next step, we propose a programming model which combines the asynchronous basis of event-driven systems with a more classical programming interface for the developer. As a result, developer that uses such an interface in his application will be provided with the sequential view we wanted. This programming model is suitable for applications that have long running computations and there is a data flow dependency between different tasks.
Manuscript profile