TinyOS任务调度机制与实时调度构件设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

收稿日期:2007-05-09;修回日期:2007-07-18。 基金项目:国家863计划项目(2005AA1Z2120)。 作者简介:刘奎安(1982-),男,四川自贡人,硕士研究生,主要研究方向:无线传感器网络; 郭文生(1976-),男,辽宁铁岭人,讲师,博士研究生,主要研究方向:无线传感器网络、实时网络技术; 桑楠(1964-),男,四川营山人,教授,主要研究方向:嵌入式实时系统。

文章编号:1001-9081(2007)11-2740-03

Tiny OS 任务调度机制与实时调度构件设计

刘奎安,郭文生,桑 楠

(电子科技大学计算机科学与工程学院,成都610054)

(lka10271982@sina .com )

摘 要:Tiny OS 是一个开源的构件化操作系统,它采用构件化描述语言nes C 进行开发,主要针对资源非常有限的无线传感器网络节点而设计。分析了Tiny OS 22.x 的任务调度机制,针对其在实时应用领域的调度缺陷,设计并实现了一种软实时任务调度构件。根据构件在T OSSI M 仿真器中的验证分析,能有效增强Tiny OS 的实时性能。

关键词:无线传感器;Tiny OS;实时;构件设计;T OSSI M 中图分类号:TP316;TP311 文献标识码:A

Schedule m echan is m of T i n yO S and its rea l 2ti m e schedule co m ponen t desi gn

L I U Kui 2an,G UO W en 2sheng,S ANG Nan

(School of Co m puter Science and Engineering,U niversity of Electronic Science and Technology of China,

Chengdu S ichuan 610054,China )

Abstract:Tiny OS is an open 2s ource component operating syste m for sens or net w orks nodes that has very li m ited res ources .Tiny OS was i m p le mented in component 2devel op ing language nes C .Thr ough analyzing the schedule mechanis m of Tiny OS 22.x,a s oft real 2ti m e scheduler componentwas designed and i m p le mented for real 2ti m e app licati ons .Si m ulati on results in T OSSI M demonstrate that the s oft real 2ti m e component i m p r oves the real 2ti m e perfor mance of Tiny OS .

Key words:wireless sens or net w orks;Tiny OS;real 2ti m e;component design;T OSSI M

0 引言

无线传感器网络(W ireless Sens or Net w orks,W S N )是由大量体积较小、能源受限,具有一定计算、存储和无线通信能力的传感器节点组成的无结构网络[1,2]。它综合了传感器、嵌入式、无线网络、分布式信息处理等技术。由于W S N 自身具备的特征,已广泛应用于国防军事、环境监测、交通管理、医疗卫生等领域。无线传感器网络作为一个新兴的研究领域,其中存在大量挑战性的研究课题,节点上的操作系统(W ireless

Sens or Net w orks Operati on Syste m,W S NOS )设计与实现就是其

中之一。

目前,国外许多大学、研究机构着手于W S NOS 的研究,开发出了Tiny OS [3]、Magnet 、MANTI S 、Sen OS 等具有典型特征的W S NOS 。其中,由UC Berkeley 依靠S martdust (智能尘埃)项目开发出的Tiny OS 得到了广泛关注和应用。

Tiny OS 是全新面向W S N 的源码级构件化操作系统,由

构件开发语言nes C [4]开发,其内核只需要400字节的内存空间即可运行起来,是一个轻量级操作系统。但在实时应用中,

Tiny OS 简单的F I F O 调度算法就显得不再适用,在任务数较

多时重要任务的响应时间无法得到保证。因此,针对实时应用的实时性需求,本文深入分析了Tiny OS 22.x 调度机制和调度相关的构件,提出了具有软实时性能的任务调度机制,开发

了相应的系统调度构件,通过在T OSSI M [5]仿真器中进行仿

真分析,此实时系统调度构件能提高Tiny OS 的实时性能。

1 Tiny OS 22.x 的调度机制

1.1 Tiny OS 的任务事件驱动的并发模型

Tiny OS 采用任务和事件驱动[6]

相结合的两级并发模型

(如图1)

图1 Tiny OS 任务事件驱动并发模型示意图

任务机制 任务由用户应用程序定义,可以由应用程序或事件处理程序创建。任务由task 关键字定义,具体定义语

法为:task void myTask (){…}。任务由post 关键字创建,具体语法为:post myTask ()。创建任务时,Tiny OS 的调度器将任务加入任务队列的队尾。核心调度策略中的任务调度器把此任务加入任务队列后就立即返回,任务则延迟执行。在等待执行的任务队列中,各个任务之间采用F I F O 原则进行调

第27卷第11期

2007年11月

计算机应用

Computer App licati ons

Vol .27No .11

Nov .2007

相关文档
最新文档