Priority Scheduling in TinyOS : A Case Study

Venkita Subramonian
2002
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
more » ... s 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... Read complete abstract on page 2. Complete Abstract: 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. Abstract: In recent years, networked sensors are nding use in a variety of di erent applications ranging from temperature monitoring to battle eld 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 su cient 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 e ects that this could cause. We show use-cases where certain "important" tasks could be given less preference when compared to other "notso-important" tasks. We propose a new mechanism at the programming model level Campus Box 1045 -St. Louis, MO -63130 -ph: (314) 935-6160 Abstract 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 "notso-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.
doi:10.7936/k72r3q08 fatcat:54uz7omnmnccnanarqxd35y7zu