当前位置:   article > 正文

freertos学习-任务调度

freertos学习-任务调度

目录

优先级

状态

任务如何管理运行

任务调度

什么情况下task会中途放弃运行


优先级

~高优先级的任务可以优先执行,也可以抢占低优先级的任务

~高优先级的任务不停止,低优先级的任务永远无法执行

~同等优先级的任务轮换执行

状态

~运行态:running

~就绪态:ready

~阻塞态:blocked,等待某件事

~暂停:suspend,休息,不是为了等待某件事

任务如何管理运行

有高级运行高级,无高级轮流排队运行。

任务调度

当函数延迟一定的时间的时候,任务就会被放到阻塞列表。当延迟时间到达之后。就会再次被放入就序列表

什么情况下task会中途放弃运行

~主动放弃:vtaskdelay、queue消息延迟或者阻塞时

~被动放弃:例如有gpio给更高优先级的task输入队列消息,唤醒其task则高优先级的任务会马上抢占低优先级的任务

空闲任务礼让

~如果有同是优先级为0的其他就绪任务,空闲任务主动放弃一次运行机会。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/513833
推荐阅读
  

闽ICP备14008679号