这个笔记主要依据韦东山freertos快速入门系列记录,感谢韦东山老师的总结。
什么是实时操作系统?
操作系统是一个控制程序,负责协调分配计算资源和内存资源给不同的应用程序使用,并防止系统出现故障。
操作系统通过一个调度算法和内存管理算法尽可能把资源公平且有效率地分配给不同的程序。
应用程序通过调用操作系统提供的API接口获得相应资源完成指定的任务。
一个通用操作系统提供的主要功能有:
- 任务(应用程序)的调度管理
- 堆栈和内存管理
- 文件管理
- 队列管理
- 中断和定时器管理
- 资源管理
- 输入输出管理
实时性的含义
实时操作系统(RTOS-Real Time Operating System)中实时(Real Time)指的是任务(Task)或者说实现一个功能的线程(Thread)必须在给定的时间(Deadline)内完成。
一个实时操作系统能尽力保障每个任务能在一个已知的最大运行时间(Maximum Response Time)内完成,包括
- 对中断和内部异常的处理
- 对安全相关的事件的处理
- 任务调度机制等
FreeRTOS
FreeRTOS是一个迷你的实时操作系统内核。作为一个轻量级的操作系统,功能包括:任务管理、时间管理、信号量、消息队列、内存管理、记录功能、软件定时器、协程等,可基本满足较小系统的需要