3986.net
小网站 大容量 大智慧
当前位置:首页 >> 信息与通信 >>

无线传感器网络操作系统-TinyOS_图文

第 1卷, 4 5 第 期 
20 0 8年 1 月  2

中国传媒大学学报 自然科学版 

V l5N ? o1 ,o   ? 4
!: !:  

J U N LO   O O R A  FC MMU IA IN U I E ST   FC I A (CE C     NC TO   N V R IY O   H N S I N E A

无 线 传 感 器 网络操 作 系统 一TnO   i S y
赵得斌 ,   陈远知 ,  杨仕勇  
( .中国传媒大学 1 广播 电视数字化工程 中心 , 北京 10 2   0 0 4; 2 .北京比特威 尔科技 有限公 司 , 北京 10 8   0 05)

摘要 : 无线传感器 网络( N) WS 综合 了传感 器技术 、 嵌入式计 算技 术 、 现代 网络及 无线通 信技 术 , 备受 关注 的新 兴  是 前 沿研 究热点。本 文将 对其专用操作 系统 TnO i S的特 点, 架结构 , y 框 运行 机制 三个方 面进行 阐述 , 为更好 地 了解 

传感 器网络操作 系统和开发其应用软件提供 了参考和依据 。  
关 键 词 : 线 传 感 器 网络 ; 作 系统 ;iy S 无 操 TnO  

中图分类号 :N 2 文献标识码 : 文章编号 :6 3- 7 3 2 0 ) 4— 0 1 5 T 99 A 1 7 4 9 (0 8 0 0 7 —0 

The Ope a i g S se Of W ie e s S n o   tTi y     r tn   y t m    r ls   e s r Ne ? n OS
Z HAO Debn C   . i , HEN Yu n z i Y   a .h , ANG  h—o g S iy n  
( .E g er gC ne f i tl u i Vdo C mm nct nU i r t o hn , e ig10 2 ; 1 ni ei  e t o  g a A do& i , o uia o  nv sy f ia B in  00 4  n n r Di   e i e i  C . j 2 B r gBt r eh o g  oLd e i  0 0 5  . e n  i eT c nl yC . t,B in 10 8 ) i Wa o jg

Absr c : mb ne   t  h  e h l g   fs n o" t a t Co i d wih t e t c noo y o  e s l  ̄,e mbe d d s se ,me h r   n   r l s  o d e  y tm s wo k a d wiee sc mmu i  n-

c t n ,W S   sa n w r s a c   os o .T i p p rp e e t  e fa u e , r me sr cu e a d o e ai g ai s o N i   e   e e r h h tp t h s a e   r s n s t  e t r s fa   t t r   n   p r t       h u n me h n s o  h   e i ae   p r t g s se T n OS t  r v d   ee e c   d b ss f r u d rt n i g cai m  f t e d d c t d o e ai   y tm— i y   o p o i e r f r n e a   a i o   n e sa d n   n n  
s n o   ewok o e a i   y t m  n   e eo i g a p i ai n s f r e . e srn t r  p rt ng s se a d d v l p n   p lc to   o t wa  

Ke   r s W i l s  e s r N t o k ;Op r t g S s m ;T n OS y wo d : r e s S n o   e w r s e eai   y t n e iy  

1 引言   
无线传感器 网络 ( N) WS 综合 了传感器技术、 嵌  人式计算技术、 现代网络 、 无线通信技术及分布式信  息处理技术 , 是备受关注的新兴前沿研究热点 ,   可以 实现 人 与 自然 物 以及 物与 物对 话 的无处 不在 的通 讯  和计 算 。从 矿 山 探 测 到 军 事 “ 能 尘 埃 ”( m r 智 S at   D s 到辅助足球裁判 , ut ) 广阔的应用前景掀起了国内   外对 WS N的研究 热潮 。   WS N具有动态性 、 适应性和分布处理 能力 , 它 

由以通讯为中心的、 大量的、 小型和微型采集设备构  成  。它是一种特殊 的 A   o J dH c网络 , 相对 于传 统 

无线 网络 , 其特点为网络节点密度高、 数据传输具有  突发性和间断性、 网络节点 间可 自 组织通信、 拓扑变 
化频繁、 具备容错能力等 ; 这些特点要求有一个精心  设计的系统软件来很好地管理各硬件资源以最大限  度地降低运算 功耗 和通讯功耗 。T y S是加州伯  iO n 克利分校研发的 WS N嵌入式操作 系统 , 源码公开 ,   主要 应用 在其 研 发 的 MIA 系列 节 点 上 , 然 由于  C 当 其 源 码公 开 , 以别 的系列 节点 也 可 以借 鉴 , 所 只要做  


些 适 当 的改 动 。  

收 稿 日期 :0 8— 1 0   20 0 — 5

基金项 目: 向项 目( 0 1 ) 横 HG 74 

作者简介 : 赵得斌 , 18 ( 94一) 男 ( , 汉族 ) 中国传媒大学硕士研究生 . ma : d 18 @g i tm。 , E i z b 94 ma. o   lh l

7  2

中国传媒大学学报 自然科学版 

第 l 5卷 

这个 消息 后 , 会把 消息 中的数据 作 为参数 , 就 传递 给 

2 TnO   i S的 基 本 特 点  y
TnO iy S是 专 为 无 线 传 感 器 网络 设 计 的 低 功 耗 

应用 层 的处理 器进 行处 理 。应用 层处 理器 一般完 成 

消息数据的解包、 计算处理或发送响应消息等工作 。   的嵌入式操作系统。 目前 , 已经被成功的应用到  它 多种硬件平台上 , 具有很高的应用价值和研究意义。   TnO iy S的特 点 主要 体 现在 以下 几个 方 面 :  
() 1 组件 化 编程 ( o pnne C m oet d—B sdAcic  ae  rht — e
tr) iy S包 含 了经过 特殊 设 计 的组 件模 型 , ue 。Tn O 其 

由上看出,i O 操作系统很好地适应 了 WS   T yS n N 的要求。下面将从框架体系和任务调度机制两个方 
面对 系统 进行 详细介 绍 。  

3 Tn O   iy S的框 架 结构 
在 TnO i S中, y 操作系统和应用程序 的区分并不 
明显 。它们 在 主机 上一 起 被 编 译 , 后 烧 写 到 目标  然 节点上, 目标代 码 中同时 包含 了两 者 。另外 , 操作 系 

目 标是高效 率的模块化 和易 于构造组件 型应用软 
件。   ( )事 件 驱 动 模 式 ( vn 2 E e t—D i n A c i c r e   rh e. v t  

t e 。T y S中, u ) iO r n 当一个 任务 完成后 , 就可 以使其  触发 一个 事件 , 后 TnO 然 iy S就会 自动地 调 用相 应 的 
处 理 函数 。  

统和应用程序在 同一地址 空间上运行 , 它们对硬件  的访问权限相同, 也就是说应用程序可 以直接操 纵  硬件资源 , 以在本质上 , 所 所有代码都是应用程序。  
TnO i S为 了提 高可靠 性 而 又 不牺 牲性 能 , 立  y 建

( ) 务 和 事 件 并 发 模 式 ( ak  n  vns 3 任 T ssA dE et  

C nu ec  oe 。任务之间是平等的 , ocr nyM d1 r ) 即在执行  时是按 顺序 先 后 来 的 , 不 能 相互 抢 占。事 件 用在  而 对 于 时间 的要求 很 严 格 的 应 用 中 , 且 它 可 以优 先  而
于 任务 执行 。  
() 4 分段 执行 ( pi—P aeO ea o s 。在 T. Sl t h s  p rt n ) i i  

了高效的组件模型。组件模型允许应用程序开发人 
员方 便快 捷地 将 独立 组 件 组 合 到 各层 配件 文 件 中 ,  

并在面向应用程序的顶层配件文件中完成应用的整  体装 配 。  
组件 包括 两 类 : 块 ( oue 和 配 置 ( ofu  模 m d l) cn g— i rt n  , ao ) 组件 问通过 配置 文 件连 接在 一起 , 成 一  i 形

nO y S中 由于任务 之 间不 能互 相抢 占执行 , 以 Tn  所 i. y S没 有提 供任 何 阻塞 操 作 , 了让 一 个 耗 时 较 长  O 为 的操 作尽 快完 成 , 般 来 说都 是 将 对 这 个 操 作 的 需  一 求 和这个 操作 的完 成 分 开 来 实 现 , 以便 获 得 较 高 的  执 行效 率 。   ( )主动 消息模 式 (ci   s g) 5 atemes e 。每 一个 消  v a 息都 维 护一 个应 用层 和处 理 器 ]当 目标节 点 收 到  ,

个可执行程序。每个组件 由一组命令和事件组成 ,   这 些命 令 和事件 成 为该 模 块 的接 口 , 口实 现 了组  接
件 之 间 的相 互联 系 , 就是 TnO 这 iy S的框 架结 构 。   图 1 TnO 是 iy S的 总 体 框 架 。物 理 层 硬 件 为 组  件的最底层 , 传感器、 收发器以及 时钟等硬件抽象层  对上 层组 件屏 蔽 了底 层 硬件 的特 性 , 而 实现上 层  从

图 1 框架结构示意 图 

第4 期 

赵得斌 等 : 无线传感器网络操作 系统 一 my   T OS

7  3

组 件 的硬件 无关 性 , 方便 程 序 移 植 。模 块 可 以通  以

过接 口调用底层硬件 , 触发事件的发生 , 交由上层处 
理 ; 对下 层 的组 件 也 能触 发 事 件 , 由上 层 处 理 ; 相 交  

合成硬件组件 、 高层 次的软件组件。硬件抽象组件  将物理硬件映射为 TnO i S组件模型 ; y 合成硬件组件 

而上层会发出命令要求下层执行。  
3 1 组件 介绍  . 

模拟高级硬件的行 为; 高层次软件模块完成控制、 路  由以及数据传输等。以下是一个支持多跳无线通信 
的组 件集 合 , 通过 该 组 件集 合 我 们 就 可 以 了解 到不  同组 件 的不 同功 能 。  

 ̄nO y S中的 组 件 可 分 为 三 类 : 件 抽 象 组 件 、 硬  

多 跳 通 信 应 用 程 序 
▲ 
1    r

主 动 消 息 
1r    

无 线 消 息 包 
1  

Ra i   t   d o Rv e
I  
L  

1  r  

1           r   1r 1r 1r  

1r   

  l 无线发送模块  

J时     钟

传感器  

图 2 支持无线 多跳通 信的组件结构 

在 图 中无线 发 送模 块 是 硬 件 抽 象 组 件 的 代 表 ,  

它发布命令以操作与其相连 的各个单独 IO引脚 , /   为事件提供信号 , 通过数据 的发送和接收与其他组  件交换信息  ; 该组件 的帧包含模块 当前状态 , 如  收发器处于发送模式还是接收模式、 当前数据传输  速率等 ; 在该组件 中没有任务 , 因为硬件 自身提供了  
并 发控 制 , 以说它 是从 物理 硬件 到 TnO 所 iy S组件 上  的映射 。  

3 2 接 口介绍  .

组 件 提供 或 使 用 接 口, 些 接 口是 双 向 的并 且  这

是访 问组件的唯一途径。每个接 口都定义了一系列  函数 , 包括命令 (o m n ) cm ad 和事件 (vn) eet两类。对 
于命 令 , 口的提 供 者 必 须 实 现 它 ; 对 于 事 件 , 接 而 接  口的使用 者必 须 提 供 实 现 。接 口可 以带类 型参 数 ,  

接 口的类型参数放在一对尖括号 内, 如果提供者和 
使用者 的接 口都 带有类 型 参数 , 么在连 接 的时候 , 那   它们 的类 型必 须 匹配 。   TnO iy S接 口具有 如下 特 点 :   ( )提供 的未 必 有 组 件 使 用 , 使 用 的 一 定要  1 但 有 组件 提供 , 则会 出现编译 错误 。 否  

图中 R d  y 组件是合成硬件组 件的代表 , ai B t o e   它 以字 节为 单位 与 上 层组 件 交 换 数 据 , 以位 为 单 位  与下面的无线发送模块交互 ; 组建 内部 的任务完成  数据 的 简单 编 、 码工 作 ; 模块 可 以看 成是 一个 能  解 该 够直 接构 成增 强 型硬件 的状 态机 。  

图中主动消息模块等上层组件属于高层次软件 
模 块 ; 动消息 模 块 履行 在 传 输 前 填 充 缓 冲 区 以及  主 将 收 到 的消息 分发 给相 应任 务 的功 能 。高层 次软 件 

( )组件之间可 以由多个 同样的接 口连接 , 2 叫  作 多扇 人 或多扇 出 J  。
( )一个模块可 以同时提供一组相同的接 口, 3   又称为参数化接 口, 表明该模块可提供多份 同类 资  料, 同时给多个模块分享 。   接 口把所有 的组件链 接起来 , 而形成一个完  从

组件在系统 中占了相 当大的 比例 , 是我们研究的重 

点 , 由算法 、 路 数据集合计算都属于这一类型。  

7  4

中国传媒 大学学报 自然科学版 

第 1 5卷 

整 的 系统 。  

统通知相应程序作一些适 当处理的场合 。  
采用 事件 驱 动执 行模 型对 节省 能量 有 十分重 要  的作用。如果在持续的一段时间内没有 中断事件发 

4 Tn O   iy S任 务 调 度 机 制 
在 TnO 程 序 模 型 中 , 于 最 上 层 的 是 Ma   iy S 处 i n

生, 即任务队列为空 , i O 就可使处理器进入休  Tn S y 眠模 式 。  
4 2 任务 队 列  . 

组件。该组件 由操作系统提供 , 传感器上 电复位后  会 首 先执 行该 组件 中 的 函数 , 主要 功 能 是 初 始 化  其 硬件 、 启动任务调度器 以及执行用户组件的初始化  函数、 打开中断 。每个 TnO 程序至少应该具有一  i S y
个 用 户组件 , 用 户 组 件通 过 接 口调 用 下 层 组 件 提  该

T yS i O 具有一个 长度为 8个单元 的环形任务  n 队列 , 每个单元用于存储任务函数人 口地址 , 两个指  针FL U L和 F E R E分别指 向最早进入 队列 的任务单  元和第一个为空的单元。提交一个任务就是将任务 
函数人 口地 址 填 入 到 F E 指 针 所 指 向 的 队 列 单  RE

供 的服务 、 实现程序功能 , 如数据采集 、 数据处理、 数  据收发等。   完 成 了对 用户 组件 的初 始化 以后 开始 运行 队列 
中 的任务 。TnO iy S的 任 务 调 度 采 用 先 进 先 出 的 简 

元, 然后将 F E R E指针移至下一个单元 ; 任务调度器  在 执行 一个 任 务 后 , 把 F L 将 U L指 针 移 至 下 一 个 单  元。如果 F E R E指针与 F L U L指 针相等 , 明队列  表 中无任务 , 系统将进人睡眠状态。  
由前所 述 ,iy S调 度模 型具 有 以下特 点 : TnO  

单 的策略 , 任务之 间不允许互相抢 占。在通用操作 
系统 里 , 种先 进先 出的调 度策 略是 不可 接受 的 , 这 因  为长 任务 一旦 占据 了处 理 器 , 它 任 务 无 论 是 否 紧  其

急, 都必须一直等待至长任务执行完毕。T y S之  iO n 所 以可 以采 用 先进先 出 的调 度策 略基 于 这样一 个 事  实: 在传感器网络绝大多数应用 中, 所需要执行 的任  务都是短任务。典型的任务有: 采集一个数据 , 接收 


() 1 任务单线程 运行到结束 , 只分配单个任务 
栈, 这对 内存 受 限 的系统 很有 利 。   ( ) 有 进 程 管 理 的 概 念 , 任 务 按 简 单 的  2没 对 FF IO队列 进 行 调 度 ; 资源 采 取 预 先 分 配 , 目前  对 且 这 个 队列里 最 多只能 有 7个待 运 行 的任务 。   ( ) IO 的 任 务 调 度 策 略 是 电 源 敏 感 的  。 3 FF   当任务 队列 为空 时 , 理 器休 眠 , 处 随后 由外 部事 件唤 

条 消息 , 发送 一条 消 息 。尽管 如此 , 进一 步缩 减  为

任 务 的运行 时间 ,iy S采 用 了分 阶段 操 作 模 式 来  TnO 减 少任 务 的运行 时 间 j 。在 该 操作 模 式 下 , 据 采  数 集 、 收消 息 、 送 消息 等需要 和低速 外部 设备 交互  接 发

的操作都被分为两个 阶段进行 : 第一阶段 , 程序启动 
硬 件操 作后 迅速返 回 ; 二 阶段 , 第 硬件完 成 操作后 通  知程 序 。分 阶段操 作 的实 质就 是使 请求 操作 的过程  与 实 际操作 的过 程相 分离 。  
4 1 中断处 理  . 

醒 C U进行任务调度。 P   () 4 两级 调度 结构 可 以实 现优 先 执 行 少 量 同事  件相关的处理 , 同时打断长时间运行的任务 。   ( ) 于 事 件 的调 度 策 略 , 需 少 量 空 间 就 可  5基 只
获得 并 发性 , 并允 许 独 立 的组 件 共享 单 个 执行 上 下 

文; 同某一事件相关的任务集合可以很快被处理 , 不  允许 阻塞 , 有高 度并 发性 。 具  
尽管 TnO 被 广 泛使 用 , 且得 到 了相 当 的认  iy S 并 可 , 这并 不 意 味 着 TnO 但 iy S能够 适 用 于 WS 的所  N 有 应用 场合 。事实 上 , 在某些 场 合 TnO iy S工作 得 并  非 很 好 , 能 出现 过 载 问 题 , 致 任 务 丢 失 、 信 吞  可 导 通 吐量下 降 , 因此 需 要 设 计 多 任 务 系统 。而 多 任 务 系  统 对 硬件 资源 提 出 了更 高 的要 求 , 推 动 相 关 技 术  将 进 一 步 向前发 展 。  

T y S的中断处 理程序具 有 比所有任 务更高  iO n 的优先级 , 一旦发生 中断, 处理器将停止执行任务 ,   转 而 执行 相应 的 中断 服 务程 序 。不 同 的是 , iy S TnO   中断处理程序往往是提交一个任务 , 而其它操作系 
统 的中断 处理 程序 则一 般会 向等待该 中断事 件而 被 

阻塞的任务 发送一条消息。TnO i S的这种运 行方  y 式被称为事件驱动机制。   事件 驱 动 分 为硬 件 事 件 驱 动 和 软件 事 件 驱 动 。  
硬件事 件 驱动就 是 一 个 硬 件 发 出 中断 , 后 进 人 中  然 断 处理 函数 ; 软 件 事 件 驱 动 则 是 通 过 s nl 键  而 ia关 g 字 触发 一个 事件 , 主要用 于 在特 定 的操作 完成 后 , 系 

5 结束 语   
传 感 器 网络是 一 种 新 的信 息获 取 和 处 理技 术 ,  

第4 期 

赵得斌等 : 无线传感器网络操作 系统 ~ iy   Tn OS

7  5

( 上接第 4 3页 )  

[ ] PSw l A pi  I  r f uoi , aur  3  e e. p ldP —ABi   trl Jnay 1 e eT a
19 9 9. L cu e n ts frt e M ah tI sr ci n l e t r   o e  o h   t f   n tu t a  i o

19 . 9 9 

[] 5 

H  r v l F L n Ga a e ,   a g,R  t e c Ma e s u.An Ov r iw    eve

Me tn   i ei g Ol  Re e t Ad a c s i   ma tc  a d c n   v n e   n Se n i s n  
Ty s f r pe   o Co u n y: The r  a  Pr ci e, nc  ̄e c o y nd a tc  

o A P 0 1 c]D cm e 0 1 f D 20 [ . ee br 0. C 2   [ ] 徐 晓飞 , 6  战德 臣 , 叶丹 .动 态 联 盟企 业 组 织方  法体 [ ] J .计 算 机 集 成 制 造 系 统 一CMS  I ,
1 9 , ( ) 7—1 . 9 95 1 : 2  

J l  9 8 uy 1 9 .  
s n. a a a w r o  [   J Vie G Ca t g a Se l— A Fr me o k f r 4]   tk,
S c r   b l  mmu i ai n I   n e n tP o  e u e Mo ie Co n c to . n I t r e  r .
g a mi g r m n  La g a e , L n u gs NCS 1 8     6, S rn e   6 p i g r,

( 责任编辑 : 宋金宝)  


网站首页 | 网站地图 | 学霸百科 | 新词新语
3986 3986.net
文档资料库内容来自网络,如有侵犯请联系客服。zhit325@qq.com