[应用相关] stm32 入门RT-Thread内核 ——线程优先级和时间片

[复制链接]
1256|10
 楼主| 一路向北lm 发表于 2021-1-10 18:34 | 显示全部楼层 |阅读模式
优先级和时间片是线程的两个重要参数,分别描述了线程竞争处理器资源的能力和持有处理器时间长短的能力。RT-Thread最大支持256个优先级(数值越小的优先级越高,0为最高优先级,最低优先级预留给空闲任务),可以通过rt_config.h 中的RT_THREAD_PRIORITY_MAX 宏来修改最大支持单位优先级,针对STM32默认最大支持32个优先级。

 楼主| 一路向北lm 发表于 2021-1-10 18:34 | 显示全部楼层
时间片只有在相同优先级的就绪态线程中起作用,系统对优先级相同的就绪态线程采用时间片轮转调度的方式进行调度,时间片起到约束线程单次运行时长的作用,其单位是一个系统节拍(OS Tick)
 楼主| 一路向北lm 发表于 2021-1-10 18:34 | 显示全部楼层
如果系统中有两个相同的就绪态线程A与B,A线程时间片为10,B线程时间片为5,此系统中不存在比A和B优先级高的线程时,系统在对A和B线程执行来回切换,并且每次A线程执行10个节拍长,B线程执行5个节拍长。 861625ffad83e53b4e.png
随风而去吧 发表于 2021-1-10 19:44 | 显示全部楼层
很棒棒哦,值得学习
 楼主| 一路向北lm 发表于 2021-1-10 21:58 | 显示全部楼层
随风而去吧 发表于 2021-1-10 19:44
很棒棒哦,值得学习

后面还有更精彩的
玛尼玛尼哄 发表于 2021-1-10 23:10 | 显示全部楼层
这个有深度
guanjiaer 发表于 2021-2-3 23:05 | 显示全部楼层
后边的是说的另一个帖子吗
heimaojingzhang 发表于 2021-2-3 23:07 | 显示全部楼层
只需要在这两个地方进行修改就可以吗
keaibukelian 发表于 2021-2-3 23:09 | 显示全部楼层
难以想象256个优先级被占用 哈哈哈
labasi 发表于 2021-2-3 23:12 | 显示全部楼层
会不会有点出栈入栈的赶脚
paotangsan 发表于 2021-2-3 23:15 | 显示全部楼层
时间片可以自己定义吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

293

主题

3837

帖子

81

粉丝
快速回复 在线客服 返回列表 返回顶部