TinyOS中多优先级任务队列调度策略研究
2014-08-04马文涛李双庆
马文涛,李双庆
重庆大学计算机学院,重庆 400044
TinyOS中多优先级任务队列调度策略研究
马文涛,李双庆
重庆大学计算机学院,重庆 400044
1 引言
无线传感器网络[1]是由部署在监测区域内的大量廉价微型传感器节点组成,通过无线通信的方式形成一种多跳的网络系统,能够通过协作实时监测、感知、和采集网络分布区域内的各种环境或监测对象的信息,并对这些信息进行处理,从而获取更详尽而准确的信息。无线传感器网络操作系统(Wireless Sensor Network Operating System,WSNOS)是无线传感器网络节点的基本软件环境,是众多无线传感器网络应用开发的基础,它的灵活性、高效性和实时性将直接影响到整个网络的性能[2]。根据无线传感器网络节点操作系统的调度系统,调度策略可分为两类,事件驱动单线程系统和多线程系统。作为事件驱动类型操作系统的代表,加州大学伯克利分校开发的TinyOS[3]是一个为网络嵌入式系统定制的一个操作系统,TinyOS操作系统采用最基本的FCFS[4](First Come First Service)调度策略;多线程系统则以MANTIS OS[5]为代表,MANTIS OS采用的是一种类UNIX的调度系统,它提供基于优先级的多线程调度和在同一优先级中时间片轮转调度,两类系统各有优劣。
随着无线传感器应用领域的不断拓展,任务的数量和执行时间明显增加,任务的实时性要求也大大增加,尤其是紧急情况下系统对网络任务的响应。在实时环境中,实时性不足是TinyOS调度策略的一个重要缺陷,文献[6]提出了基于最早截至时限优先的调度策略IS-EDF,有效改善了任务调度成功率,但在任务负载较重时难以保证关键任务的优先执行,同时它为每个任务分配一个堆栈空间,一定程度上增加了内存的开销。……
