4.FreeRTOS_任务调度算法

可抢占调度与合作调度模式

在FreeRTOS中,可以配置相应的宏configUSE_PREEMPTION来设置调度的模式。

含义

可抢占调度模式:

高优先级的任务可以打断低优先级的任务,只有当高优先级的任务进入阻塞或挂起时,低优先级的任务才可以执行。

合作调度模式:

禁止抢占,不论优先级高低,都遵循谁先来到,谁运行。前面的任务不进入阻塞或挂起,后面的任务就不能够执行。

宏开关

在FreeRTOSConfig.h中,设置宏开关。具体操作如下:

当这个宏为1时,设置为可抢占调度模式。

当这个宏为0时,设置为合作调度模式。

在FreeRTOS中,常用的设置为可抢占调度模式。

时间片轮转

在FreeRTOS中,可以配置相应的宏configUSE_TIME_SLICING来设置是否进行时间片轮转。

含义

时间片轮转对应的是同级别优先级的任务,这需要先设置为可抢占调度模式。

允许时间片轮转:

同级别的优先级的任务交替执行,交替执行的周期可以设置,默认为1ms。交替执行的周期设置可以查看博文“FreeRTOS_任务管理”中的“多任务交替执行的原理”章节,下面是博文链接:

FreeRTOS_任务管理-优快云博客

禁止时间片轮转:

同级别的优先级的任务禁止交替执行,遵循谁先来到,谁运行。前面的任务不进入阻塞或挂起,

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值