基于软件总线的TinyOS集成开发环境研究与设计.docVIP

基于软件总线的TinyOS集成开发环境研究与设计.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于软件总线的TinyOS集成开发环境研究与设计   摘要:集成开发环境是支持无线传感器网络应用系统开发的重要系统软件,如何设计一个具备良好扩展性的开发环境, 对开发环境能灵活地可配置、可裁剪。针对传统结构化的IDE系统不宜动态修改,运行时不可以动态配置以及集成性较差的不足,该文提出了一种基于软总线的集成开发环境(TosIDE),并引入TosIDE构件集成机制及通信机制对传统无线传感器网络IDE存在的扩展性弱、模块间通信问题进行了有效地解决。   关键词:集成开发环境;软件总线;构件;无线传感器网络;TinyOS   中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)11-20374-03      1 引言      TinyOS是由UCBerkeley分校的研究人员针对无线传感器网络资源有限,通信响应要求及时的特点而设计的一种嵌入式操作系统。由于TinyOS为非商业的操作系统,未提供开发环境。如何构造一集成开发环境,既满足不同开发阶段及不同领域开发者的需求,又兼顾未来新的开发方法的需要,一直是值得关心的问题。目前出现了许多基于TinyOS的开发平台,但这些开发平台存在的主要问题是:结构化的体系结构,运行时不可以动态配置模块,扩展性及集成性不强。在认真研究当前的基于无线传感器网络开发平台的优缺点后,本文提出了基于软件总线的传感器网络集成开发环境TosIDE,该平台采用“软总线+软构件”的体系结构,满足特定功能模块在开发环境中灵活安装,卸载和替换,具备良好的扩展性。      2 传统IDE结构及其存在的问题      目前无线传感器网络应用系统的IDE结构可以分为两种[1,2]:   (1)单块式(Monolithic)结构:该结构开发平台一般由一个功能模块集组成,一个模块可能由多个过程组成,任一过程可以调用其它过程,这样模块间的交互关系是网状关系,关系复杂,扩展这类开发平台比较困难,修改一个过程或模块可能会导致多个相关的过程或模块发生错误(如图1所示)。   (2)层次(layered)式结构:该结构将开发平台划分为若干模块,然后将它们按层组织起来。每个模块提供一组其他模块可以调用的功能,并且任何一层的代码只能调用较低层的的功能。层次化结构有助于组织开发平台的开发过程,减少诊断和修改错误的工作。一个完整的层的功能实现可以整个被代替,而不会影响系统其他部分。层次化方法的不足是每一层都有明确的功能,对某一层的功能上的较大改变会对与其直接关联的上下层产生很大的影响,因此难以实现对开发平台的裁剪。针对以上传统开发方式的不足,本集成开发环境采用基于构件的软总线开发方法(如图2所示)。      3 软件总线定义及数学描述      从软件体系结构的角度看,软件总线作为一种连接件(Connector) ,为构件提供了通信、协作和便利的服务,实现了构件集成设施和构件逻辑处理功能的分离,将构件集成设施从以前的隐式方式改为显式方式,是用于构件集成的结构性软件部件[5]。   从一般性的角度出发,我们首先给出软总线的数学描述,对于软件总线的软件体系架构,有如下数学描述[3]:   定义1:软件总线架构TBA = {C,I,M,S,R},其中C是系统的构件集,I是软件总线接口集,S是系统的状态空间集,M是软件总线方法集,软件总线的方法是系统状态改变的触发源m = ( si →sj ) , R 是约束规则。   定义2:软件构件C={(ti,ai,s)|s=ai→ti},其中t是工具构件,a 是构件适配器。   定义3:软件总线接口I={m ∈M|Selector (m,Qi)} ,其中Selector(m,Qi) 是选择函数,函数接收方法集中的方法,返回满足条件为Qi 的接口I中的方法。   以上为软件总线的基本数学描述定义。在此基础上,人们进一步将软件总线结构建立在软件重用的思想上,形成一种“软总线+软构件”的体系结构。图3为一种“软总线+软构件”结构示意图,各个构件通过与软总线相连组成一个实现某种功能的复合构件。      在此种结构中,构件之间不再直接连接,而是以软总线作为连接件,集成为一个整体,各构件之间的交互通过总线间接连接,大大降低构件的耦合度,各构件在接口不变的情况下可独立修改,有利于各构件的并行开发[4]。      4 基于软总线的IDE体系结构      TosIDE的结构如图4所示:      根据子系统、适配器及软件总线在消息传递过程中所出的位置和功能,TosIDE的体系结构分为三层:最上一层为构件应用层,软件总线为该层提供接口,欲加入总线的子系统需符合接口规范(软件总线接口定义),才能加入集成开发环境中;应用层的构件由负责实现项目开发

文档评论(0)

heroliuguan + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8073070133000003

1亿VIP精品文档

相关文档