调度器学习笔记三:HSM状态机理解
来源:互联网 发布:北京鼎泰网络推广公司 编辑:程序博客网 时间:2024/05/20 14:23
今天心情不错,突然想明白了困扰自己几个月的HSM(层次状态机)问题,“顿悟”的感觉真是舒畅。这也再次证明不够聪明的人(我),应该勤能补拙。废话少说,把自己的体会总结如下。
HSM被称为层次状态机,用一个专业术语就是具有行为继承,类似OOP中的类继承。那怎么去理解这个行为继承呢,稍后再说。
首先来说说FSM,状态机?如果我们把每个状态都认为是一个函数,并且函数返回下一个函数指针,那么我们就可以实现一个很灵活的状态机,这个状态机我感觉类似mesh网络,具有“任意跳能力”。怎么理解呢?就是我的子状态可以跳到下一个任意子状态,这种编程思想非常灵活,并且能够复用函数。但是这个网络有一个问题,就是这种状态跳转都是一个平面的,不存在多个平面状态嵌套问题。
那么问题来了,我也是用mesh网络这种思路去考虑HSM状态机?于是我怎么也不理解行为继承?难道简单的FSM状态嵌套就是HSM?当然不是。这个时候我发现我的出发点错了,同一个平面的状态机,我可以把它理解为Mesh网络,但是不同平面的状态机就必须理解为树形网络,这样行为继承才能够实现。
行为继承怎么实现的呢?子状态只负责处理自己感兴趣的消息,即只处理自己的事物,其它一切都交给父状态去处理,这样就可以认为子状态具有父状态的处理能力,也就是具有行为继承。
图1 mesh网络拓扑
图2 tree网络拓扑
0 0
- 调度器学习笔记三:HSM状态机理解
- 开源HSM学习笔记---状态机的运行
- HSM层次状态机实战
- 状态机调度设计学习小结
- 开源hsm代码学习笔记---数据结构的定义
- 开源HSM学习笔记---状态相关的行为动作
- 状态机的三段 理解
- Hadoop学习笔记(三):作业调度器
- verilog状态机学习笔记
- OS学习笔记三:处理器调度
- OpenGL学习笔记:状态机理念
- FX3学习笔记5-状态机
- 状态机学习笔记(一)
- CFS 调度器学习笔记
- CFS 调度器学习笔记
- CFS 调度器学习笔记
- CFS 调度器学习笔记
- CFS 调度器学习笔记 .
- 盒模型、内外边距和边框
- 【NOIP2016提高A组集训第4场11.1】平衡的子集
- 面向对象多方法3
- xenomai 实时linux驱动编写实例
- maven(一)----------创建多模块项目
- 调度器学习笔记三:HSM状态机理解
- 深入类加载器----线程上下文类加载器
- maven(二)----------创建的maven项目没有resource这个目录
- Linux-Tomacat-SSL单双向认证说明文档
- 身所迷茫,心有所虑
- css学习之动画效果
- 请回答1988-最后的德善旁白
- Html5移动应用开发入门——框架选择
- 网络通信学习笔记-Java