论文部分内容阅读
无线传感器网络是在微电子、无线通信和嵌入式系统等技术的飞速发展中产生的一种新的信息获取和处理模式。它在工业、农业、军事国防、生物医疗、抢险救灾以及环境监测等许多重要领域都有广泛的应用前景。本文主要利用TinyOS操作系统作为无线传感器网络的平台,并以此提出TinyOS调度机制的改进方案。在无线传感器网络中,操作系统作为必要的软件来支持更多复杂的调度和管理。它运行在每个网络节点上,是其上层应用的基础。TinyOS作为一种典型的无线传感器网络操作系统得到广泛采用,它当前的调度机制采用先到先服务(first-come-first-served, FCFS)方式。但这种方式不能够确保系统的响应性能。由于重要的任务不能进行及时可靠地得到响应,引起通信性能下降等情况的发生。针对TinyOS调度机制的不足,本文提出一种递增优先级调度和一种可抢占优先级调度机制。在递增优先级调度中,通过在任务插入队列的时候调整任务的优先级。重要任务由于具有较高优先级被排在队列头部优先执行。对于低优先级任务,为避免其因高优先级任务的频繁插入而长期得不到响应,将新插入任务的后面任务的优先级增加1。该调度机制不仅保证了重要任务响应速度,也能保证低优先级任务不会被频繁投递的高优先级任务所阻塞。在可抢占优先级调度中,刚到达队列的高优先级任务可以通过抢占方式先执行,通过抢占能够使它的执行更加及时。另外,可以通过设置抢占次数来避免低优先级任务被频繁抢占。本文在不需要增加额外堆栈空间的前提下实现了可抢占算法。该调度机制更加适用于对可靠性有更高要求的应用程序中。通过TOSSIM仿真实验表明,所提出的两种调度机制,在总能耗增加很少的情况下,可以有效地提高发送任务和接收任务的数量,降低了系统丢包率,并极大地改善了传感器网络的通信性能。