首页 > 代码库 > Zstack中任务,事件,消息之间的关系

Zstack中任务,事件,消息之间的关系

  Zstack是Zigbee协议的具体实现,在实现的过程中为了能够更好的对各个模块和功能进行管理,所以加入了OSAL(Operating System Abstraction Layer 操作系统抽象层)(以上为个人见解)。

  在OSAL中,提出了任务,事件,消息三个概念。它们之间的关系如下:

    任务是处理事件的一个功能集合,一般由一个事件处理函数实现(ProcessEvents)

    事件是当前系统中被触发的动作,例如有按键按下,接收到其他节点发送过来的消息等等

    消息则是事件编号和其对应事件内容的集合,发生事件并将其打包到消息队列,供事件处理函数进行处理

    

    大致的流程如下:

    事件发生后-->被打包为消息-->存放到消息队列-->事件处理函数取出消息并进行相应操作

    

    

    

Zstack中任务,事件,消息之间的关系