论文部分内容阅读
无线传感器网络(WSN-Wireless Sensor Network)节点能执行环境数据(温度、湿度、光照等)采集、信息处理,并能与网络中的其他节点进行无线通信。近十几年来,WSN技术已广泛应用到农业、工业、军事、医疗、家居等领域。WSN研究的难点问题之一是如何使用有限的WSN节点资源运行日益复杂且多样化的WSN应用。针对此问题的有效解决方法之一是设计并实现一个专用于WSN节点的操作系统。通过此操作系统,可一方面对WSN节点受限的平台资源进行高效管理,另一方面可对WSN复杂多样化的应用提供良好的服务。当前,WSN操作系统依然是一个热门的研究主题,许多WSN操作系统(TinyOS、Contiki、SOS、mantisOS、openWSN等)均已设计并实现。这些系统具有不同的特性,且适用于不同的WSN应用。TinyOS采用组件结构,具有较低的内存消耗;SOS能动态更新各个服务模块,具有良好的故障修复以及节点重编程性能;mantisOS采用多线程调度机制,可并行执行多任务WSN应用;openWSN则实现了一套完整的WSN协议栈,对WSN技术与IoT技术进行了融合。尽管这些系统的开发对于WSN操作系统的发展起到了完善与促进作用,许多操作系统研究方面的挑战依然存在,例如,如何在内存资源高度受限的WSN节点上实现实时调度;如何降低节点能耗以延长节点户外工作寿命;如何提高WSN应用程序重编程性能,以及如何提高WSN系统可靠性等。针对上述挑战,本文设计并实现了一种实时可靠且用户友好的新型操作系统LiveOS。LiveOS采用了一些新型的研究方法与实现技术,有效地解决了WSN操作系统中一些难点问题。一方面,LiveOS结合了多核硬件技术与软件技术,从而有效地降低了节点工作能耗、提高了节点对上下文感知的能力、改善了节点的可靠性,并实现了一种新型系统调试方法。另一方面,LiveOS改变了传统操作系统的一些设计理念,采用了混合型调度机制(同时实现事件驱动调度机制与多线程调度机制)以及共享堆栈型多线程调度机制,从而有效地降低了实时系统内存消耗量,使实时系统在内存资源高度受限的WSN节点上运行成为可行。此外,LiveOS还嵌入了一种新型的中间层软件EMIDE,此中间层软件不仅降低了WSN应用程序开发复杂度,还提高了WSN应用程序重编程性能。通过上述各种机制的实现,LiveOS系统具有了以下特性:1)能高效地利用节点有限的内存资源与能量资源,因此,适合在成本低、体积小、资源受限的WSN节点上使用。2)具有实时调度功能,能运行实时WSN应用(医疗监护、发动机智能控制、化工污染实时监控等)。3)工作寿命长、系统可靠性良好、且可支持远程无线重编程,因此,可避免对部署在恶劣环境中WSN节点通过人工回收而进行能量补充、应用程序重编程以及故障修复的成本。LiveOS系统的这些特点对于WSN技术的发展与市场推广具有重要意义。