优先级与抢占实验

  • 高优先级不阻塞,就高优先级独自运行

  • 优先级数值configMAX_PRIORITIES 定义最大优先级数,数值越大优先级越高。用户任务优先级建议从 1 开始(0 留给空闲任务)。

  • 抢占调度:任何时候,最高优先级的就绪任务获得 CPU。

  • 阻塞 :任务通过 vTaskDelay、等待队列、信号量等进入阻塞态,让出 CPU。

  • 饥饿:高优先级任务不阻塞,导致低优先级任务永远得不到 CPU。

  • 动态优先级vTaskPrioritySet 可以在运行时修改任务优先级,常用于避免优先级反转或实现简单调度策略。

同一优先级 都不阻塞

配置 现象
时间片开启 两个任务交替运行,共享 CPU
时间片关闭 第一个任务独占 CPU,第二个任务永远不运行
相关推荐
山木嵌入式1 天前
【STM32实战】轻量级任务调度器实现
stm32·单片机·rtos·任务调度器·裸机开发
guygg881 天前
基于霍尔传感器的BLDC控制源码
单片机·嵌入式硬件
ytttr8731 天前
DSP 28335 CAN总线通信程序
开发语言·stm32·单片机
一枝小雨1 天前
RISC-V架构sp寄存器 & RISC-V架构下FreeRTOS任务上下文保存与恢复
单片机·架构·嵌入式·risc-v·rtos·内核原理
BW.SU1 天前
PackagingTool 嵌入式资源打包合并工具
单片机·二进制·嵌入式开发·资源合并软件·图片打包
田甲1 天前
STM32开发环境迁移实践:从 CubeMX 生成 CMake 工程到 VS Code 编译与调试
stm32·单片机·嵌入式硬件
hoiii1871 天前
在 STM32F1上读取 BMX055 三轴加速度
stm32·单片机·嵌入式硬件
嵌入式小站1 天前
STM32 零基础可移植教程 04:按键输入,为什么按下去读到的是 0 或 1
chrome·stm32·嵌入式硬件
三佛科技-187366133971 天前
BP8522D贴片SOP7,5V150mA高集成度无VCC电容降压型恒压芯片解析
单片机·嵌入式硬件
csg11071 天前
MSP430F149驱动T8650北斗模块实现短报文通信实战
单片机·嵌入式硬件·物联网·自动化