第 6 章 无线传感器网络开发环境的构建及应用实践
2
6.1 无线传感器网络操作系统概述
在某种程度上可以将传感器网络看做一种由大量微型、
廉价、能量有限的多功能传感器节点组成的、可协同工作的、
面向分布式自组织网络的计算机系统。因此,针对传感器网
络应用多样、硬件功能有限、资源有限、节点微型化和分布
式多协作等特点,研究和设计新的基于传感器网络的操作系
统就成为当前提高无线传感器网络性能的一个重要课题。当
前,有些研究人员认为传感器网络的硬件很简单,没有必要
设计一个专门的操作系统,可以直接在硬件上设计应用程序。
这种观点在实际应用中会碰到很多问题。首先就是面向
第 6 章 无线传感器网络开发环境的构建及应用实践
3
传感器网络的应用开发难度会加大,应用开发人员不得不直
接面对硬件进行编程,无法得到像传统操作系统那样的丰富
服务;其次是软件的重用性差,程序员无法继承已有的软件
成果,降低了开发效率,增加了开发成本。
另外,一些设计人员认为,可以直接使用现有的嵌入式
操作系统,如 、 、 、 等。这
些系统中有基于微内核架构的嵌入式操作系统,如
、 等,也有基于单体内核架构的嵌入式操作系统,
如 等。由于这些操作系统主要面向嵌入式领域相对复
杂的应用,其功能也比较复杂,如它们可提供内存动态分配、
虚拟内存实时性支持、文件系统支持等,但是系统代码尺寸
相对较大。而传感器网络的硬件等资源极为有限,上述操作
系统很难在无线传感器网络这样的硬件资源上高效运行。
第 6 章 无线传感器网络开发环境的构建及应用实践
5
6.2 TinyOS 操作系统
是一个典型的无线传感器网络操作系统,能够
很好地满足无线传感器网络操作的要求。 是由加州
大学伯克利分校开发的一个开源的嵌入式操作系统。它采用
一种基于组件 !"#!$% 的开发方式,能够快速实
现各种应用。 的程序核心往往都很小 一般来说核
心代码和数据大概为 &''()% ,这样能够突破传感器存储资
源少的限制,让 有效运行在无线传感器网络上。它
还提供一系列可重用的组件,可以简单方便地编制程序,用
来获取和处理传感器的数据并通过无线电来传输信息。一个
应用程序可以使用这些组件,方法是通过连接配置文件