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

Signed-off-by: 零中断延迟的RTOS <cosyos@139.com>
This commit is contained in:
零中断延迟的RTOS
2024-01-03 04:38:00 +00:00
committed by Gitee
parent 336c8aeb49
commit 9f633b5b12

View File

@@ -46,7 +46,6 @@ CosyOS有三种时间片的定义模式全局时间片、算法时间片、
* **一般用户任务** <br>
对于一般用户任务只要优先级为0级就是空闲任务。用户空闲任务内都要有阻塞事件以保证所有空闲任务都有机会被运行。<br>
最高优先级固定分配给任务管理器和调试任务,建议用户任务不要使用。<br>
<br>
### 五、任务状态
CosyOS的任务状态较传统RTOS划分更为详细以便用户在使用任务管理器监控任务时能够更加精准的判断各任务的运行情况。<br>
@@ -83,10 +82,10 @@ CosyOS的任务状态较传统RTOS划分更为详细以便用户在使用任
![任务状态](../images/task_state.png "任务状态")<br>
—————————— CosyOS-任务状态图 ——————————<br>
<br>
### 六、任务队列
CosyOS全局只有一个任务队列为双向循环链表所有已启动且未删除的任务都会在队列上排队。<br>
* **排队原则** <br>
**1.** 在队列上从头至尾,按任务优先级由大到小排列。<br>
**2.** 如果任务优先级相同,则按任务启动顺序排列(先启动的任务排在前面)。<br>
@@ -99,12 +98,10 @@ CosyOS任务管理器真实的反应了整个任务队列的当前形态。<br>
![任务管理器](../images/taskmgr.png "任务管理器")
![启动钩子](../images/start_hook.png "启动钩子")<br>
—————————— CosyOS-任务管理器 ——————————-———————— CosyOS-启动钩子 ————————<br>
<br>
### 七、任务调度
CosyOS的任务调度类型包括 **抢占式调度****时间片轮转调度** 。不同优先级的任务实行抢占式调度,<br>
相同优先级的任务按先入先出实行时间片轮转调度,“入”指的是加入到任务队列,即启动任务。<br>
CosyOS的任务调度时机分为 **定时调度****临时调度** 。<br>
* **定时调度** <br>
在每个系统滴答周期SysTick_Handler/定时器0中断都会触发一次任务调度。<br>
@@ -119,7 +116,6 @@ CosyOS的任务调度时机分为 **定时调度** 与 **临时调度** 。<br>
**6.** 用户通过调用服务,直接触发的任务调度,包括任务级任务调度和中断级任务调度。<br>
CosyOS的任务调度策略可最大程度的实现尽可能实时高效的任务切换使CosyOS的实时性更为优异。<br>
<br>
### 八、任务栈
* **任务栈模式** <br>