OS操作系统:硬件资源管理;软件统一接口
充分实现CPU资源使用
分为STOS(分时操作系统:可以多任务/多用户的系统实现);RTOS(实时操作系统:保证任务的实时性,如汽车领域和航天领域)
FreeRTOS系统
前后台系统:早期嵌入式开发没有嵌入式操作系统的概念,直接操作裸机,在裸机上写程序,比如用51单片机基本就没有操作系统的概念。通常把程序分为两部分:前台系统和后台系统。前台是中断级,后台是任务级。
RTOS全称为:RealTime OS,就是实时操作系统,强调的是:实时性。实时操作系统又分为硬实时和软实时。硬实时要求在规定的时间内必须完成操作,硬实时系统不允许超时,在软实时里面处理过程超时的后果就没有那么严格。RTOS操作系统的核心内容在于:实时内核。
可剥夺型内核:可剥夺内核顾名思义就是可以剥夺其他任务的CPU使用权,它总是运行就绪任务中的优先级最高的那个任务。
FreeRTOS是一个可裁剪、可剥夺型的多任务内核,而且没有任务数限制。FreeRTOS提供了实时操作系统所需的所有功能,包括资源管理、同步、任务通信等。
“ config”开始的宏和“
INCLUDE_”开始的宏一样,都是用来完成
FreeRTOS
的配置和裁剪的,如:
configCPU_CLOCK_HZ
表示,配置CPU的频率。
FreeRTOS任务特性:
1、简单。
2、没有使用限制。
3、支持抢占
4、支持优先级
5、每个任务都拥有堆栈导致了RAM使用量增大。
6、如果使用抢占的话的必须仔细的考虑重入的问题
四种任务状态:
1、运行态:掌握了CPU使用权
2、就绪态:任务已准备好,高优先级在运行
3、挂起态:任务驻留在内存中,并不被任务内核所调度
4、阻塞态:等待状态,等待事件发生(等待信号量、消息队列等)