update 说明文档/CosyOS原理与应用.md.

Signed-off-by: 零中断延迟的RTOS <cosyos@139.com>
This commit is contained in:
零中断延迟的RTOS
2024-02-01 00:19:15 +00:00
committed by Gitee
parent 5053ef058a
commit 470be4bff4

View File

@@ -113,19 +113,18 @@ CosyOS的 **任务调度时机** 分为 **定时调度** 与 **临时调度**。
* **临时调度** <br>
**一、自动调度** <br>
当满足特定条件时,由系统自动触发的临时性的任务调度。<br>
1、当前任务被阻塞、挂起、删除时会立即触发任务调度。<br>
1、当前任务被阻塞、挂起、删除时将不再具备运行权限,会立即触发任务调度。<br>
2、恢复任务时如果该任务被恢复后可以运行并且它的优先级高于当前任务的优先级会立即触发任务调度。<br>
3、设置任务优先级时如果该任务可以运行并且它的新优先级高于当前任务的优先级会立即触发任务调度。<br>
4、设置阻塞时间为零或清除阻塞时,该任务会转为就绪状态,如果它的优先级高于当前任务的优先级,会立即触发任务调度。<br>
5、归还互斥信号量完成时,如果发生了优先级继承(任务优先级被提升),会恢复该任务的优先级,立即触发任务调度。<br>
6、归还二值信号量时,如果有任务因获取该信号量而阻塞,会立即触发任务调度。<br>
7、归还计数信号量时,如果有任务因获取该信号量而阻塞,会立即触发任务调度。<br>
8、给予二值信号量时,如果有任务因获取该信号量而阻塞,如果该任务的优先级高于当前任务的优先级,会立即触发任务调度。<br>
9、给予计数信号量时,如果任务因获取该信号量而阻塞,如果该任务的优先级高于当前任务的优先级,会立即触发任务调度。<br>
A、发送私信至某任务时,如果任务因接收信而阻塞,如果该任务的优先级高于当前任务的优先级,会立即触发任务调度。<br>
B、发送飞信时,如果有任务因接收该箱的飞信而阻塞,如果该任务的优先级高于当前任务的优先级,会立即触发任务调度。<br>
C、发送邮件时,如果有任务因接收该邮箱的邮件而阻塞,如果该任务的优先级高于当前任务的优先级,会立即触发任务调度。<br>
D、发送消息时如果有任务因接收该队列的消息而阻塞如果该任务的优先级高于当前任务的优先级会立即触发任务调度。<br>
4、设置自身任务优先级时,如果自身任务的优先级被拉低,将被视为是一种禅让行为,会立即触发任务调度。<br>
5、设置阻塞时间为零或清除阻塞时,该任务会转为就绪状态,如果它的优先级高于当前任务的优先级,立即触发任务调度。<br>
6、归还互斥信号量完成时,如果发生了优先级继承(任务优先级被提升),会恢复该任务的原优先级,并立即触发任务调度。<br>
7、给予二值信号量时,如果有任务因获取该信号量而阻塞,如果该任务的优先级高于当前任务的优先级,会立即触发任务调度。<br>
8、给予计数信号量时,如果有任务因获取该信号量而阻塞,如果该任务的优先级高于当前任务的优先级,会立即触发任务调度。<br>
9、发送私信至某任务时,如果任务因接收私信而阻塞,如果该任务的优先级高于当前任务的优先级,会立即触发任务调度。<br>
A、发送飞信时,如果任务因接收该信箱的飞信而阻塞,如果该任务的优先级高于当前任务的优先级,会立即触发任务调度。<br>
B、发送邮件时,如果有任务因接收该箱的邮件而阻塞,如果该任务的优先级高于当前任务的优先级,会立即触发任务调度。<br>
C、发送消息时,如果有任务因接收该队列的消息而阻塞,如果该任务的优先级高于当前任务的优先级,会立即触发任务调度。<br>
**二、手动调度** <br>
由用户手动触发的临时性的任务调度,包括 **无条件调度****任务优先级调度**。<br>
**1、无条件调度** :无需任何条件,直接触发任务调度。<br>