1.FreeRtos基础知识
FreeRtos是实时操作系统,免费开源的,可以用与商业什么的,反正就是目前用FreeRtos的很多,所以说还是很有必要学习一下
2.任务调度器
(1)抢占式任务调度器
这个就是实时操作系统很重要的东西,实时操作系统讲究的就是实时性,任务优先级高的任务可以打断任务优先级低的任务
假设我有三个任务Task1,Task2,Task3,任务优先级分别为1,2,3,Task3先执行(再Freertos中创建任务后都会加入就绪列表),只要Task3不被阻塞或者被挂起,Task2和Task1就永远无法执行,Task3被阻塞后,Task2会执行
(2)时间片调度
就是每个任务有一个时间片,比如10ms,task1先执行10ms后切换task2执行10ms,在FreeRtos中假如任务优先级是一样的就是时间片调度,时间片大小取决于滴答定时器
3.FreeRtos任务的四种状态
直接上图吧,只能有一个处于运行态,只有就绪态能变为运行态
任务调度器总是会在就绪态列表中选择优先级高的去执行