当前位置: 首页 > news >正文

FreeRTOS篇4:任务调度

1.什么是任务调度?

调度器就是使用相关的调度算法来决定当前需要执行的哪个任务。

FreeRTOS中开启任务调度的函数是 vTaskStartScheduler() ,但在 CubeMX 中被封装为

osKernelStart() 。

2.FreeRTOS的任务调度规则是怎样的?

FreeRTOS 是一个实时操作系统,它所奉行的调度规则:

1) 高优先级抢占低优先级任务,系统永远执行最高优先级的任务(即抢占式调度)

2) 同等优先级的任务轮转调度(即时间片调度) 还有一种调度规则是协程式调度,但官方已明确表示不更新,主要是用在小容量的芯片上,用得 也不多。

3.抢占式调度运行过程

Task 1:玩游戏

Task 2:老妈喊你吃饭

Task 3:女朋友喊你看电视 总结:

1)高优先级任务,优先执行;

2)高优先级任务不停止,低优先级任务无法执行;

3)被抢占的任务将会进入就绪态

4.时间片调度运行过程

 

总结:

1)同等优先级任务,轮流执行,时间片流转;

2)一个时间片大小,取决为滴答定时器中断周期;

3)注意没有用完的时间片不会再使用,下次任务 Task3 得到执行,还是按照一个时间片的时钟 节拍运行

 

 


http://www.mrgr.cn/news/41354.html

相关文章:

  • python numpy np.fromstring方法介绍
  • C++七种异常处理
  • 练习题 - DRF 3.x Validators 验证使用示例和配置方法
  • 命令按钮QLink
  • 记一次RCE漏洞的利用
  • 用Python实现运筹学——Day 9: 线性规划的灵敏度分析
  • “国酒茅台”商标曾被几十家异议,有的带“国”却下证!
  • 电子连接器温升仿真教程 二
  • 浅谈UDP和TCP的区别
  • TypeScript 算法手册【快速排序】
  • 在 FastAPI 中设置 CORS 头
  • 24C256 (i2c)指令及时序(代码含单个字节和整页字节的写入)
  • 【rCore OS 开源操作系统】Rust 练习题题解: Structs
  • 微调学习记录
  • 为什么有必要由母语人士翻译应用程序界面
  • HarmonyOS/OpenHarmony 自定义弹窗页面级层级控制解决方案
  • idea环境下vue2升级vue3
  • 绘制随k变化的等熵面积比公式
  • 【折半查找】
  • 体系结构论文(五十三):Featherweight Soft Error Resilience for GPUs 【22‘ MIRCO】