无线传感器网络操作系统TinyOS

简介:

   TinyOS是一款自由和开源的基于元件(component-based)的操作系统和平台,它主要针对无线传感器网络(WSN, wireless sensor network)。TinyOS是用nesC程序编写的嵌入式操作系统,其作为一系列合作项目的结果。 它的首先出现是做为UC Berkeley和Intel Research合作实验室的杰作,用来嵌入智能微塵当中,之后慢慢演变成一个国际合作项目,即TinyOS联盟。

   TinyOS应用程序是用nesC编写,它是C programming language的一个分支对于感知网络的内存限制问题作了优化。它的补充工具主要来自于Java形式和shell script的front-ends。其他的相关的库和工具,例如NesC编译器和Atmel AVRbinutils toolchains,大部分用C编写。

   TinyOS程序由基于组件的软件工程software component建构,它们中一些表现了硬件的抽象概念, 组件用接口互相连接。TinyOS为普通的抽象描述(abstractions)提供了接口和组件,例如数据包通信(packet communication),路由,感知(sensing),行为(actuation)和储存。

   TinyOS完全的non-blocking:它配备了一个单独的堆栈。因此所有的持续超过几百微秒I/O操作都以异步进行并且带有回叫功能(callback)。为了使本地的编译器更加出色地优化交叉呼叫边界(optimize across call boundaries),TinyOS用nesC的特性去连接这些回叫,叫作事件(events)。non-blocking系统可以让TinyOS在单一存储器下保持高度的协同性(concurrency)。它强迫程序用stitching together many small event handlers的方法编写复合逻辑。为了支持更高的计算量,TinyOS提供了任务(tasks),其比Deferred Procedure Call and interrupt handler bottom halves小。

   一个TinyOS组建可以发布一个任务,操作系统可以把它排入列表以待之后执行。任务是没有优先权的并且按照FIFO运行。 这个简单的协同模型是典型的满足了以I/O为中心的应用,但这样的模型对于CPU负荷重的应用程序来说不是太好的,因为它会导致向OS多次提出线程间协同处理的请求(but its difficulty with CPU-heavy applications has led to several proposals for incorporating threads into the OS.)。

   TinyOS代码与程序代码进行静态连接,然后用GNU toolchain。编译到一个小的二进制系统中。 它的联盟为TinyOS的应用,提供完整的开发平台。

http://www.tinyos.net/





     本文转自stock0991 51CTO博客,原文链接:http://blog.51cto.com/qing0991/1869393,如需转载请自行联系原作者



相关文章
|
5月前
|
传感器 数据采集 算法
无线传感器网络(WSN)在物联网中的作用
【6月更文挑战第7天】物联网中的无线传感器网络(WSN)正加速发展,它由微型传感器节点组成,用于环境数据感知和传输。WSN助力实时监测(如农业、工业生产)、资源管理(能源和物流)、智能交通等领域,提供关键数据支持。Python代码示例展示了数据采集和传输过程。尽管面临能量限制和网络挑战,WSN在物联网中的角色不可或缺,将持续推动社会智能化和可持续发展。
237 2
|
6月前
|
安全 物联网 调度
【软件设计师备考 专题 】网络操作系统和嵌入式操作系统基础知识
【软件设计师备考 专题 】网络操作系统和嵌入式操作系统基础知识
121 0
|
6月前
|
编解码 Android开发
Android获取设备各项信息(设备id、ip地址、设备名称、运行商、品牌、型号、分辨率、处理器、国家码、系统语言、网络类型、oaid、android版本、操作系统版本、mac地址、应用程序签名..)1
Android获取设备各项信息(设备id、ip地址、设备名称、运行商、品牌、型号、分辨率、处理器、国家码、系统语言、网络类型、oaid、android版本、操作系统版本、mac地址、应用程序签名..)
363 1
|
11天前
|
安全 Linux 网络安全
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息。本文分三部分介绍 nmap:基本原理、使用方法及技巧、实际应用及案例分析。通过学习 nmap,您可以更好地了解网络拓扑和安全状况,提升网络安全管理和渗透测试能力。
55 5
|
1月前
|
传感器 算法 C语言
基于无线传感器网络的节点分簇算法matlab仿真
该程序对传感器网络进行分簇,考虑节点能量状态、拓扑位置及孤立节点等因素。相较于LEACH算法,本程序评估网络持续时间、节点死亡趋势及能量消耗。使用MATLAB 2022a版本运行,展示了节点能量管理优化及网络生命周期延长的效果。通过簇头管理和数据融合,实现了能量高效和网络可扩展性。
|
6月前
|
编解码 开发工具 Android开发
Android获取设备各项信息(设备id、ip地址、设备名称、运行商、品牌、型号、分辨率、处理器、国家码、系统语言、网络类型、oaid、android版本、操作系统版本、mac地址、应用程序签名..)2
Android获取设备各项信息(设备id、ip地址、设备名称、运行商、品牌、型号、分辨率、处理器、国家码、系统语言、网络类型、oaid、android版本、操作系统版本、mac地址、应用程序签名..)2
419 2
|
2月前
|
传感器 监控 物联网
无线传感器网络的基本架构及其广泛应用
无线传感器网络的基本架构及其广泛应用
257 0
|
3月前
|
缓存 网络协议 算法
这些年背过的面试题——网络和操作系统基础篇
本文是技术人面试系列网络和操作系统基础篇,面试中关于网络和操作系统基础都需要了解哪些内容?一文带你详细了解,欢迎收藏!
|
4月前
|
传感器 算法
基于无线传感器网络的MCKP-MMF算法matlab仿真
MCKP-MMF算法是一种启发式流量估计方法,用于寻找无线传感器网络的局部最优解。它从最小配置开始,逐步优化部分解,调整访问点的状态。算法处理访问点的动态影响半径,根据带宽需求调整,以避免拥塞。在MATLAB 2022a中进行了仿真,显示了访问点半径请求变化和代价函数随时间的演变。算法分两阶段:慢启动阶段识别瓶颈并重设半径,随后进入周期性调整阶段,追求最大最小公平性。
基于无线传感器网络的MCKP-MMF算法matlab仿真
|
3月前
|
安全 网络安全 调度
云计算与网络安全:云服务、网络安全、信息安全等技术领域深入理解操作系统:进程调度的奥秘
【8月更文挑战第27天】本文将探讨云计算与网络安全之间的关联,包括云服务、网络安全、信息安全等技术领域。我们将通过代码示例来展示如何保护云计算环境中的数据和应用程序。最后,我们将讨论如何应对云计算环境中的网络安全挑战,以保护数据和应用程序免受攻击。
下一篇
无影云桌面