×

网络传感器的嵌入式操作系统设计方案解析

消耗积分:1 | 格式:rar | 大小:0.5 MB | 2017-11-06

分享资料个

 引言
  网络传感器是集传感器技术、嵌入式计算技术、现代网络及通信技术、分布式信息处理技术于一身的资源受限的嵌入式设备,是“普适计算”在微型嵌入式领域的一种重要应用模式。
  网络传感器的研究过去一直受限于硬件平台而发展缓慢。随着半导体技术、通信技术、微电子技术和微机械技术的不断进步,低功耗、低价格、多功能的传感器网络系统得到了快速发展,使得制作微小、有弹性、低功耗的传感器节点成为现实。
  背景
  应用特点
  网络传感器应用有其自身的特点,主要有以下几个方面:小尺寸和低功耗、并发密集操作、有限的物理并行性和控制层次、多样化的设计和使用。一方面,传感器资源极其有限,给底层嵌入式程序设计带来较大的限制;另一方面,传感器上运行的应用程序和系统内核通常是紧密结合在一起的,且运行时需要的任务数量、执行时间、执行结果以及内存消耗等是可以较好预计的。
  此外,传感器种类繁多,针对不同应用场合需要不同种类的传感器;在军事应用、空间探索等特定应用场合下,更是需要大量的不同种类的传感器协同合作来完成特定应用事件。因而传感器上运行的软件系统如果能够具备相对较好的灵活性、可配置性和可
  重用性,将能更好地满足应用需求。
  现有嵌入式OS比较
  当前存在众多的嵌入式操作系统,其中具有代表性的如Vxwork、WindowsCE,pSOS和Neculeus等,它们的优点是:功能强大;具有丰富的API和嵌入式应用软件;具备良好的实时性能,尤以Vxwork为代表;具备良好的稳定性。缺点是:价格昂贵;源代码不公开,以及由此导致的诸如对设备的支持、应用软件的移植等一系列的问题;另外对于传感器器件来说,这些嵌入式OS都显得过于“庞大”了一些。 uc/os和嵌入式Linux当前正获得越来越广泛的应用。
  它们的优点是:执行效率高、占用空间小、可扩展性能好,同时是免费且源代码公开的。uc/os具备良好的实时性能,嵌入式Linux的实时性能有待进一步提高。缺点是:它们都是相对通用的嵌入式操作系统,不能完全适应传感器应用领域的需求,如嵌入式Linux最小仍然需要上百K的ROM和RAM空间才能工作,而uc/os的内核尽管可缩减至几K,但是对于某些传感器应用来说,仍然显得不够精简。
  UC Berkeley设计开发了无线传感器网络应用的嵌入式操作系统TinyOS以及系统编程语言nesC。我们在剖析现有嵌入式OS特别是TinyOS的基础之上,设计实现了支持网络传感器的微型嵌入式操作系统γOS,并开发了系统编程语言AntC。
  γOS设计
  γOS是以网络传感器应用为目标的微型嵌入式操作系统,针对网络传感器的前述应用特点,γOS的设计具备几个特性:支持足够微小的硬件系统,便于传感器设备在检测环境中的任意撒布;支持足够低的系统功耗,保证传感器设备具备足够长的生命期;支持集成可与物理世界交互的传感设备,实现数据的采集和传输;同时兼顾适度灵活的可重用性、可配置性。
  γOS还必须解决传感器网络的两个突出问题:
  1)由于网络传感器操作的并发密集性,因而必须保证众多不同数据流的并发即时传输;
  2)系统必须提供高效的模块化管理策略,具体硬件设备和具体应用组件必须紧密地结合在一起,减小处理和存储开销。为此,γOS的设计重点主要集中在以下几个方面:低能耗的微型内核;微线程的系统架构;组件化的功能设计;支持传感通信的接口。
  支持低能耗的微型内核
  为了降低能耗,γOS设计了一种相对简单的内核机制,它由两部分组成:系统初始化代码以及一个微小的核心调度组件。系统初始化代码具有平台相关性;核心调度组件实现基于优先级的两级调度机制,它分别由两个调度队列组成:事件队列和任务队列。事件队列优先级高于任务队列的优先级,每个队列内部基于FIFO调度机制。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !