🚀 开篇导读:两个最重要的概念
2025/8/22小于 1 分钟
🚀 开篇导读:两个最重要的概念

高优先级任务 本来就能抢占,但要靠调度点,调度点默认是SysTick 中断(1ms),如果你在低优先级任务中主动 taskYIELD(),就是把调度点变得更密集了,相当于“更快地释放 CPU 控制权”
✅ 互斥信号量(Mutex)有:
- 优先级继承机制:当低优先级任务持有 Mutex,导致高优先级任务阻塞时,调度器会临时把低优先级任务的优先级“抬高”到高优先级任务的级别,让它尽快完成并释放资源。
- 设计目标就是用来保护临界资源,防止 优先级翻转。
❌ 二值信号量(Binary Semaphore)没有:
- 它只是个“通知机制”:一个任务释放,另一个任务去接收。
- 不会处理优先级翻转的问题,因为它不是为“资源保护”设计的。
- 所以如果用它来保护资源,遇到优先级翻转就真的会卡住。

