Document Type

Technical Report

Publication Date






Technical Report Number



In recent years, networked sensors are finding use in a variety of different applications ranging from temperature monitoring to battlefield strategy planning. Advances in fabrication techniques have led to the development of sensor-actuator devices called MEMS. It has now become possible to move software closer to where the “action” is, i.e. the sensors themselves. These sensor devices typically have a micro-controller, instruction and data memory, a radio module for wireless communication and an operating system. These devices are severely resource constrained in terms of memory, processing power and energy, since most of these devices are battery driven. A sensor network consists of a number of sensors spread across a geographical area. Each sensor has wireless communication capability and sufficient intelligence for signal processing and networking of the data. In this paper, we discuss a mechanism to achieve prioritized task scheduling in TinyOS. We investigate into the details of how the task scheduling is currently done in TinyOS and the adverse effects that this could cause. We show use-cases where certain ”important” tasks could be given less preference when compared to other ”not-so-important” tasks. We propose a new mechanism at the programming model level to introduce the concept of priority for a task and explain how the scheduling module has to be changed to enforce this priority scheme. Finally, we show empirical results to justify our solution.


Permanent URL: