内容为帮助自己的理解,注明转载。
OSAL,主要是一种机制,一种任务分配资源的机制。从而形成了一个简单多任务的操作系统(今天有个人说这不算是系统,不过我认为这就是系统了)。
首先,OSAL初始化系统,包括软件系统初始化和资源初始化.其中软件系统初始化就是初始化一些变量,比如osal重要的组成部分任务表,任务结构体和序列号.资源初始化主要包括内存,中断,NV等各种设备模块资源。
接着,OSAL通过osal_add_task添加任务到任务表中,形成一个任务链表。这个任务链表是以任务的优先级先后排序的。优先级高的排在前,优先级低者排于后。
最后,开始运行系统,系统是以一个死循环的形式工作的.在循环体当中不断地检测各个任务,看是否要运行等.这就相当于我们平时用的linux和window等多任务系统,把CPU分成N个时间片(有多少任务就分成多少时间片),只要处理频率高,就相当于多任务同时运行了.当然了,OSAL远没有pc系统优化的那么好,但对于我们平时没有采用任何机制的单片机程序,执行效率还是要高得多。。。。这就是为什么,同样是一块51芯片,cc2430能处理这么多事件了.

Zigbee协议栈 OSAL机制相关推荐

  1. zigbee协议栈OSAL分析

    本文从源程序出发,分享本人学习zigbee协议栈的一些理解,介绍zigbee协议栈OSAL任务调度及用户自定义任务的调度处理过程.为了便于抓住本质,理清思路,本文剔除一些无关部分. 程序的入口是ZMa ...

  2. Zigbee协议栈OSAL层API函数

      OSAL层提供了很多的API来对整个的协议栈进行管理.主要有下面的几类:信息管理.任务同步.时间管理.中断管理.任务管理.内存管理.电源管理以及非易失存储管理.看到这些管理是不是感觉越来越像一个操 ...

  3. zigbee协议栈OSAL运行原理-----个人理解

    OSAL运行原理: 前提:OSAL是按照不同层运行的.分别是应用层(App).硬件层(HAL).mac层(MAC).......等多个层.我们现在把每一层可以当成一个任务.也可以比喻每一层是一个房间. ...

  4. ZigBee协议栈之osal浅析

    ZigBee是目前比较流行的一种低功耗无线组网技术,主要用于智能家居控制以及智能工业生产.ZigBee大的特点就是低功耗.自组网. 说到ZigBee就不得不提IEEE802.15和ZigBee联盟,他 ...

  5. CC2530 ZigBee协议栈 学习心得

    最近一直在学习研究cc2530这款单片机,感觉自己的C语言水平还是不够有得提升的空间,但还是有不少收获.    CC2530是一款支持ZigBee无线组网协议的低功耗单片机,cc2530主要的应用场景 ...

  6. zigbee协议栈学习(二)

    协议栈规范的 ID号可以通过查询设备发送的 beacon 帧获得.在设备加入网络之前,首先 需要确认协议栈规范的 ID."特定网络"规范 ID号为0: ZigBee协议栈规范的 I ...

  7. ZIGBEE通讯-7.ZigBee协议栈简介

    想要学习协议栈,必须先知道协议是什么.协议定义的是一系列的通信标准,通信双方需要共同按照这一标准进行正常的数据收发,而协议栈是协议的具体实现形式,通俗的理解为用代码实现的函数库,以便于开发人员调用. ...

  8. Zigbee协议栈ZStack构架

     协议栈版本信息: ZigBee2006\ZStack-1.4.3-1.2.1 1.ZStack协议栈构架 Zigbee协议栈就是将各个层定义的协议都集合在一起,以函数的形式实现,并给用户提供一些 ...

  9. ZigBee协议栈Zstack介绍

    文中所讲述的协议栈是基于ZigBee2006\Zstack-1.4.3-1.2.1 1.ZSTACK协议栈的架构 ZigBee协议栈就是将各个层定义的协议都集合在一起,以函数的形式实现,并给用户提供一 ...

最新文章

  1. 信息互通联动防御 亚信安全翻开融合终端安全新篇章
  2. Node-RED安装图形化节点dashboard实现订阅mqtt主题并在仪表盘中显示温度
  3. 【CV】大神没交棒,但YOLOv5来了!
  4. HttpClient在.NET Core中的正确打开方式
  5. CM,CDH 修改迁移元数据库
  6. Java VisualVM添加远程JMX连接时提示“无法使用service:jmx:rmi:///jndi/rmi******连接到*****”
  7. 从零开始学Kotlin-类的继承(6)
  8. Ubuntu使用记录:直接使用root账户登录
  9. 了解Binder机制原理和底层实现
  10. Ubuntu编译安装Keepalived
  11. imports build constraints exclude all Go files in
  12. 如何用手机远程协助长辈?我找出了6个最佳方法!(免ROOT)
  13. ONLYOFFICE文档转换开发技术
  14. 带孩子们做环球旅行的读后感_天天带孩子的宝妈有多辛苦,男人们就不能温柔一点吗...
  15. 一分钟为网站添加统计功能
  16. 免校准的电量计量芯片_免校准电能计量芯片,让家电智能化更简单
  17. 信号完整性(SI)电源完整性(PI)学习笔记(五)电容的物理基础
  18. 遥感影像去背景 之 数据裁剪
  19. android root截图软件,安卓手机ROOT截图软件与无ROOT截图软件对比
  20. Java程序的基本结构

热门文章

  1. Xv6操作系统导论(第三章)
  2. lammps教程:lj/cut力场使用方法
  3. 认知无线电网络的服务质量——蜻蜓算法的应用(Matlab代码实现)
  4. 基于PHP MYsql的失物招领网站设计(附源码)
  5. 时间敏感网络(TSN)关键协议的介绍
  6. 加快系统启动速度的技巧
  7. 【VS开发】设备控制台 (DevCon.exe) 示例
  8. 在Google地图中显示行政区边界
  9. [Java] 代理模式 Proxy Mode
  10. 使用 Go 编程语言 66 个陷阱:Golang 开发者的陷阱和常见错误指北