FreeRTOS --(0)简介

本文探讨了FreeRTOS,一种轻量级RTOS,用于简化多任务处理在小型MCU上的应用。它强调了其精简代码、任务调度、内存管理和数据传递等特点,适用于资源受限环境。此外,文章还介绍了FreeRTOS的配置选项、支持的编译器和处理器,以及其在嵌入式开发中的重要作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

FreeRTOS 是一个嵌入式实时操作系统,具有相对(相对 Linux、Windows等)较小的体积,使用精简的代码实现了简单的进程调度,内存管理,消息发送,等,常常用在一些需要支持多任务的 MCU 上;

在没有 RTOS 的嵌入式小系统中,代码都跑在 while 1 中,我们称之为 “裸机”,也没有任务的概念;而 RTOS 的出现,使得可以支持多任务执行(宏观并行,微观串行),任务与任务,中断与任务,之间可以通过消息传递数据;

RTOS(Real Time Operation System)实时操作系统的目的是让关键的任务可以得到及时的执行,任务优先级和任务抢占是 RTOS 的特点;

既然是需要兼容跑在小型嵌入式系统中,那么就要求 RTOS 体积必须小,而且效率一定要高,否则引入 RTOS 对小型单片机来说就成为了一种拖累,FreeRTOS 针对性很强,较好的控制了代码体积(几千行),在有限的空间,实现了几乎所有常用到的小型嵌入式常用的特性,使得嵌入式开发变得更加容易和清晰;

FreeRTOS 发展得非常迅速,而且免费。与此同时,已经支持了许多不同编译器(Keil/IAR/GCC/LLVM)和不同的处理器(ARM/RISC-V等),而且有非常多的用户群:

FreeRTOS 中,主要由任务管理、内存管理、队列管理、定时器管理、中断管理、以及一些数据结构构成;FreeRTOS 提供了一个叫做 FreeRTOSConfig.h 的头文件,其中定义了很多 OS 相关的 Feature 开关,以支持根据不同的场景进行增加或者裁剪 Feature,已达到特定需求的最佳配置;

FreeRTOS 的源代码可以通过访问它的官方网站来下载:

https://www.freertos.org/index.html 

在官网的 Resources -> Books and Manuals 中有一些说明文档,主要是针对 FreeRTOS 的内核行为以及一篇 API 文档;

除了纯 RTOS 部分,还提供了一些第三方的组件,能够支持更多的功能(比如网络等);不在这里过多的介绍了;

 

一些参考:

https://blog.youkuaiyun.com/zhzht19861011/article/details/49819109?utm_medium=distribute.pc_relevant.none-task-blog-baidujs-1

https://blog.youkuaiyun.com/lxl584685501/article/details/46621991

 

</article>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值