uc/os-iii学习笔记-任务同步(信号量、时间标志组)
来源:互联网 发布:制作微课软件 编辑:程序博客网 时间:2024/06/06 11:36
任务同步
两种方式:信号量、事件标志组。
信号量的同步简而言之就是任务或者ISR发送信号量,某任务等待该信号量,收到后进入就绪态准备运行。
事件标志组就是一个任务与多个任务发生同步。
信号量
信号量在我的博文–资源管理中有提到过,具体可以看下:
与资源管理中不同的是,资源管理是为了独占共享资源,是上一把锁,而任务同步则是释放出信号量,在等待区等待该信号量的任务就会进入到就绪态准备运行。
事件标志组
有时候一个任务需要与多个事件同步,这个时候就需要使用事件标志组。事件标志组与任务之间有两种同步机制:“或”同步和“与”同步。
“或”同步:等待多个事件时,任何一个事件发生 ,任务都被同步,这个就称为“或”同步。
“与”同步:当所有的事件都发生时任务才被同步,这种同步机制被称为“与”同步。
在UCOSIII中事件标志组为OS_FLAG_GRP
,如果需要使用事件标志组的时候需要将OS_CFG_FLAG_EN
置1,
具体函数操作就补贴上来了,自己看看源码就好,很容易懂的。
0 0
- uc/os-iii学习笔记-任务同步(信号量、时间标志组)
- uc/os-iii学习笔记-任务管理
- uc/os-iii学习笔记-任务调度
- uc/os-iii学习笔记-任务切换
- uc/os-iii学习笔记-时间管理
- uC/OS-III之任务信号量
- uc/os-iii学习笔记-资源管理(中断、信号、信号量、互斥信号量)
- uC/OS-III之任务同步
- uC/OS-III 学习笔记 (X)
- uC/OS-III之事件标志组
- uc/os-iii学习笔记-任务就绪表
- uc/os-iii学习笔记-任务挂起表
- uC/OS-III 学习笔记(一)——uC/OS-III移植
- uC/OS-III之信号量
- uc/os-iii学习笔记---存储管理(内存管理)
- uc/os-iii学习笔记-OSTaskCreate
- uc/os-iii学习笔记-临界段
- uc/os-iii学习笔记-中断管理
- 聚类 - 3 - 轮廓系数
- Maven 对不同的部署环境打包
- EntityManager使用方法 JPL JPQL
- ubuntu 下安装 qq wechat VirtualBox notepadqq
- Linux写时拷贝技术(copy-on-write)
- uc/os-iii学习笔记-任务同步(信号量、时间标志组)
- JAVA通过C3P0连接数据库
- Java中基本类型和封装类型数据与堆、栈的关系
- cocos2d - JS 创建(菜单)Menu
- java静态方法能否被重写
- 缓冲区溢出攻击
- 抽象工厂模式的认识和学习(含学习案例)
- 聚类 - 4 - 层次聚类、密度聚类(DBSCAN算法、密度最大值聚类)
- Eclipse 插件之Easy Shell