【精品】tinyos操作系统开发技术及实践(西电版第1章tinyos概述(可编辑.ppt
《【精品】tinyos操作系统开发技术及实践(西电版第1章tinyos概述(可编辑.ppt》由会员分享,可在线阅读,更多相关《【精品】tinyos操作系统开发技术及实践(西电版第1章tinyos概述(可编辑.ppt(55页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、TinyOS操作系统开发技术及实践(西电版)第1章 TinyOS概述第1章 TinyOS概述 2 2 1.1 无线传感器网络无线传感器网络 1.1.1 关键技术关键技术当前无线传感网研究热点主要集中在以下几个方面,它们也被普遍认为是无线传感网的关键技术:时间同步:是完成实时信息采集的基本要求,并且是提高定位精度的关键手段。拓扑控制:在满足网络覆盖度和连通度的前提下,通过功率控制或层次拓扑控制,最小化网络的能量消耗。定位技术:包括节点自定位和网络区域内的目标定位跟踪。网络安全:密钥管理、身份认证和数据加密方法、攻击检测与抵御、安全路由协议和隐私问题。第1章 TinyOS概述 3 3网络通信:核心
2、问题是能量有效性或能力节省。主要热点集中在网络层和链路层,例如链路层MAC协议如何节省能力,网络层新路由协议提出或路由协议改进。系统软件:WSN是深度嵌入的网络系统,因此要求操作系统既要能完成网络系统要求的各项功能,又不能过于复杂。目前看,TinyOS是最成功的WSN专用系统。数据管理:包括分布式动态实时数据管理以及信息融合。能量供给:包括能量的获取和存储。第1章 TinyOS概述 4 41.1.2 特点特点无线传感网与传统的无线网络(如Ad hoc网络、GSM、CDMA、3G、Beyond3G、4G、WLAN和WMAN等)有着不同的设计思想,它的特点主要表现在以下几方面:节点规模:节点数目庞
3、大,可以达到成千上万。节点部署:节点在部署完成之后大部分节点不会再移动,网络拓扑结构是静态的。工作模式:多对一通信,路由协议以数据为中心。无线传感网的详细特点介绍请参见本书所属系列教材无线传感器网络技术原理及应用的第一章。第1章 TinyOS概述 5 51.2 WSN操作系统操作系统 无线传感器网络操作系统(简称为WSN操作系统或WSNOS)是无线传感器网络的关键支撑技术之一(即系统软件技术)。WSN操作系统可以有效地管理硬件资源和执行任务,降低传感器网络的应用开发难度,提高软件的重用性。当前比较流行WSN操作系统有TinyOS、Contiki、MANTIS、SOS,它们的特点及对比如表1-1
4、所示。第1章 TinyOS概述 6 6第1章 TinyOS概述 7 7第1章 TinyOS概述 8 82.项目发展项目发展TinyOS是开源项目,目前已不再由UCB单独开发和维护,从0.4版到2.0版,TinyOS由SourceF(全球最大开源软件开发平台和仓库)的一个开放项目,逐渐演变成了一个国际合作项目。从2012年12月开始,TinyOS的开发和维护(包括开发邮件列表和BUG跟踪记录)逐渐过渡到GitHub(一个逐渐流行起来的分布式版本控制系统)上,至2013年1月项目迁移完毕。TinyOS在GitHub上的虚拟主机地址是:https:/ TinyOS概述 9 9图1-1 TinyOS产
5、品标志第1章 TinyOS概述 10 103.版本变化版本变化从1999年TinyOS平台(官方取名为WEC)由UBC开发后,到2003年8月TinyOS的最新版本2.1.2,TinyOS不断改进。其中,在1.0版本以前TinyOS都是由C语言写成(混合少量Perl脚本)的,后来用nesC语言重新编写。其重要版本变化情况如表1-2所示。第1章 TinyOS概述 11 11第1章 TinyOS概述 12 121.3.2 体系结构体系结构TinyOS操作系统采用组件式分层体系结构,这种体系结构可以快速地实现各种应用,详细内容请参见本书第3章。第1章 TinyOS概述 13 131.3.3 硬件支持
6、硬件支持TinyOS可运行于不同的硬件平台和微处理器上,并支持多款射频芯片,且支持NOR Flash设备。以2.1.1版为例的TinyOS支持以下硬件:硬件平台:TinyOS支持多达十几种不同的硬件平台(每种平台代表着一类处理器、射频、存储和IO引脚的组合)。TinyOS支持的硬件平台有:telos家族(包括telosa和telosb)、micaZ、IRIS、shimmer、epic、mulle、tinynode、span以及iMote2等。微处理器:TI公司的MSP430、Atmel公司的ATMega128、Intel公司的px27ax微处理器。第1章 TinyOS概述 14 14射频芯片:
7、TI的CC1000和CC2420(经过移植后还可支持CC2430和CC2530)、Atmel公司的RF212和RF230、Infineon公司的TDA5250、Semtech公司的XE1205。Flash芯片:TinyOS支持两款NOR Flash芯片,即Atmel公司的AT45DB芯片和STMicroelectronics公司的STM25P芯片。第1章 TinyOS概述 15 151.3.4 网络功能网络功能TinyOS有较为丰富的网络支持,主要包括多跳路由协议和最新的IPv6协议:多跳路由协议,主要包括数据分发协议和汇聚协议。分发协议:用于网络中数据共享,网络中每个节点都保存一份数据的副本
8、。TinyOS主要支持两种分发协议库,即Drip和DIP。汇聚协议:用于将网络中的数据收集到某个点(称为root或根节点),典型的用法如将通过root传输给PC。TinyOS支持的标准汇聚协议叫“汇聚树协议”(英语简称CTP)。IPv6,即用于无线通信网络的6LoWPAN(2.1.1版本以后)。第1章 TinyOS概述 16 161.3.5 特点特点1.优点优点TinyOS的优点体现在以下几方面:TinyOS有成千上万的用户,现有的体系结构已有5年以上的历史,代码可靠、有效,错误极少,这对工程项目来说至关重要。支持低功耗和并发执行模型,因此特别适合于无线传感器节点。支持技术上优异的网络协议,如
9、汇聚协议CTP和6LoWPAN协议(用于无线网络的IPv6协议)等。第1章 TinyOS概述 17 172.缺点缺点TinyOS有两大弱点:它的组件式编程模型对于新手来说需要一段时间来适应。对于计算密集型程序需要程序员将计算分成若干小部分,逐个执行,即需要使用TinyOS的“分阶段作业”机制(Split Phase),此类程序比较难写。第1章 TinyOS概述 18 181.4 开发环境简介开发环境简介 1.4.1 开发环境开发环境TinyOS本质上是一个编程框架,它的完整开发环境包括以下内容:操作系统:TinyOS需要在Linux环境下进行开发,如果要在Windows上进行开发,需要安装模拟
10、Linux操作系统的Cygwin程序包。JAVA JDK:TinyOS部分工具命令需要JAVA支持,另外JAVA还可用于某个硬件平台(如mote)与PC机进行数据交互的模拟程序编写,以方便用户观看运行结果。TinyOS操作系统:TinyOS编程框架本身。第1章 TinyOS概述 19 19编译工具链:当前官方发布的是三个工具,包括nesC语言编译器、Deputy工具和tinyos-tools。GraphViz可视化工具:TinyOS编译工具包括一个nesdoc工具,可以将用户nesC源码中的组件调用关系生成HTML文档,期间用到的GraphViz工具可绘制“调用关系图”。本地编译器:nesC编
11、译器生成的C程序最终还需要特定硬件平台的编译器编译成硬件可运行的二进制代码,例如若使用CC2530,可安装IAR For 51编译器。代码编辑器:在Linux下可以使用vim、emacs、gedit等,如果是在Windows下使用Cygwin进行TinyOS开发,推荐使用EditPlus。第1章 TinyOS概述 2020本书使用的开发环境如下:硬件平台:与本书配套的Zigbee开发套件。操作系统:基于Windows的Cygwin。TinyOS操作系统:tinyos-2.1.0-2.cygwin.noarch.rpm。TinyOS工具链:nesc-1.3.0-1.cygwin.i386.rpm
12、、tinyos-deputy-1.1-1.cygwin.i386.rpm、tinyos-tools-1.3.0-1.cygwin.i386.rpm。本地编译器:IAR For 51。代码编辑器:EditPlus 3.30。其他工具:jdk1.6、graphviz-1.10。开发环境的详细安装过程,请参见本书实践篇。第1章 TinyOS概述 21 211.4.2 编程特点编程特点TinyOS操作系统由nesC语言写成,从程序员角度看,它的基本作用就是提供了一组API接口(包括可调用的组件库、部分C语言结构体和数据类型),以及一些编程规则。具体来说,基于nesC语言的TinyOS编程行为具有以下特
13、点:平台化编程:实际开发时,首先要根据用户选定的硬件平台移植TinyOS,后续开发都在这个“特定平台”上进行工作(本书所有示例是基于TI CC2530芯片的代号为mytinyos的开发平台)。第1章 TinyOS概述 2222兼容C语法:使用nesC进行TinyOS编程时可以使用C语言中几乎所有的结构体、函数等语法。事实上,nesC仅仅是在较高的层次上增加了一些新的数据结构(即接口和组件)和并发执行模型。组件式编程:组件类似于面向对象语言(如C+或JAVA)的类对象,可以提供或使用接口(interface),并且有自己的内部实现(implementation),程序员使用代码确定组件之间的连接
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精品 【精品】tinyos操作系统开发技术及实践西电版第1章 tinyos概述可编辑 tinyos 操作系统 开发 技术 实践 西电版第 概述 编辑
限制150内