理论教育 ZStackOSAL操作系统简介|物联网开发与应用实践

ZStackOSAL操作系统简介|物联网开发与应用实践

时间:2023-10-27 理论教育 版权反馈
【摘要】:OSAL,翻译为“操作系统抽象层”。图4-12是基于OSAL的ZigBee协议的结构图。当然,我们都知道,ZStack与ZigBee之间并不能完全划等号。ZStack是ZigBee的具体实现,所以存在于ZStack中的OSAL并不一定出现在ZigBee中。OSAL就是以实现多任务为核心的系统资源管理机制。所以OSAL与标准的操作系统还是有很大的区别的。简单而言,OSAL实现了类似操作系统的某些功能,但并不能称之为真正意义上的操作系统。随后TI公司于2007年推出了第一款免费的协议栈软件——ZStack协议栈。

ZStackOSAL操作系统简介|物联网开发与应用实践

OSAL(Operating System Abstraction Layer),翻译为“操作系统抽象层”。如何理解这个复杂的名词呢?表面上看它是作为操作系统存在的,可是为什么又加上“抽象层”呢?它的本质是什么?在ZStack协议栈中,它又扮演了什么角色呢?要解答这些问题,我们必须先从宏观入手,渐渐深入探究,最后答案自然会浮出水面。

图4-12是基于OSAL的ZigBee协议的结构图

978-7-111-44976-8-Chapter04-25.jpg

图4-12 基于OSAL的ZigBee协议的结构图

从结构图中,我们可以很清楚地从宏观上了解ZigBee协议的结构。可是,经过粗略的浏览,我们并没有发现任何OSAL的踪迹。当然,我们都知道,ZStack与ZigBee之间并不能完全划等号。ZStack是ZigBee的具体实现,所以存在于ZStack中的OSAL并不一定出现在ZigBee中。(www.daowen.com)

在ZigBee协议中,协议本身已经定义了大部分内容。在基于ZigBee协议的应用开发中,用户只需要实现应用程序框架即可。从图4-12中可以看出应用程序框架中包含了最多240个应用程序对象。如果我们把一个应用程序对象看作为一个任务的话,那么应用程序框架将包含一个支持多任务的资源分配机制。于是OSAL便有了存在的必要性,它正是ZStack为了实现这样一个机制而存在的。

OSAL就是以实现多任务为核心的系统资源管理机制。所以OSAL与标准的操作系统还是有很大的区别的。简单而言,OSAL实现了类似操作系统的某些功能,但并不能称之为真正意义上的操作系统。

TI公司所提供的ZStack协议栈来实现无线传感器网络。2006年12月,ZigBee联盟发布了ZigBee2006协议标准后,各大芯片厂商在推出对应的无线通信芯片的同时,也都推出了相应的协议栈实现,但有的功能有限、支持不完全,有的则价格昂贵。随后TI公司于2007年推出了第一款免费的协议栈软件——ZStack协议栈。该协议栈功能完全,支持所有拓扑结构,从而使得构建ZigBee网络的成本大大降低,TI公司也成为被选择最多的ZigBee解决方案提供商。虽然TI公司宣传ZStack属于开源软件,但其实并没有提供全部的源代码,其从网络层的部分实现开始,以及往下的几层网络相关协议层,都只提供了接口与库文件。只有应用层、板级硬件层和部分网络层提供了源代码,但此开源程度已足够用户进行对应的修改,形成自己的网络和应用。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈