FreeRTOS

RTOS(Real Time Operating System),当有外部事件发生时,能够快速响应,调度一切可利用资源,控制实时任务协调一致的运行。

裸机开发:一次只能处理一个任务,无法执行并发处理;代码复杂的情况下,中断响应较快,但同时应对多个中断,不定因素较强,精度低;开发效率较差,需要考虑大量因素,代码复杂时可读性差;适用于简单,功能、资源有限的场景

实时操作系统:利用时间管理和优先级调度提供多任务支持;任务调度可以快速响应事件;开发效率较高,不同任务执行不同功能,代码模块化,可读性好;复杂功能,完全囊括了裸机开发。

实时操作系统和计算机操作系统的区别

目前计算机主流操作系统:

  • Windows 个人桌面操作系统
  • MacOS 个人桌面操作系统(苹果)
  • Linux 小型设备,计算机,移动终端

Windows系统兼容性最强,可以兼容几乎所有软件,适合普通办公和娱乐

MacOS系统的图像处理能力,软件开发能力较强,适合软件开发人员,前端开发人员使用。

Linux系统的可裁剪性,安全性高,开源,可定制,适合极客或黑客

Windows和MacOS虽然功能强大,但是占用内存过大,消耗内存过高,不适合嵌入式开发

嵌入式实时操作系统:RTOS专注于轻量级,实时性,稳定性,相较于主流计算机操作系统,RTOS有更严格的时间控制和响应速度,成本低能耗低,适合嵌入式领域

stm32:FreeRTOS,RT-Thread,U-cosii

国产芯片:HarmonyOS,AliOS

FreeRTOS介绍

FreeRTOS是RTOS的一种,尺寸非常小,可运行于微控制器上,但其使用并不限于微控制器应用

微控制器是尺寸小,资源受限的处理器,它在单个芯片上包含了处理器本身、用于保存要执行的程序的只读存储器(ROM或Flash)、执行程序所需的随机存取存储器(RAM)。一般情况下,程序直接从只读存储器执行

FreeRTOS为可调整的实时示例生成器内核,专为小型嵌入式系统设计。其特点包括

  • FreeRTOS示例生成器内核——优先式、合作式及混合式配置选项。
  • 官方支持27种架构(ARM7和ARM Cortex M3每个算一种架构)。
  • FreeRTOS-MPU支持Cortex M3存储器保护单元(MPU)。
  • 设计目标为小尺寸、简单和易用。一般来说,示例生成器内核二进制映像大约为4k到9k
  • 代码结构极易移植,主要用C编写。
  • 支持任务和协同例程
  • 可通过队列、二进制信号量、计数信号量、递归信号量、互斥量在任务间、任务与中断间通信和同步
  • 互斥量有优先级继承
  • 支持高效的软件定时器
  • 强大的执行跟踪功能
  • 栈溢出检测选项
  • 预配置的示例应用,用于选定的单板电脑,可直接使用,加快学习曲线
  • 免费论坛支持,或可选择商业支持和授权
  • 可创建的任务数无软件限制
  • 可使用的优先级数无软件限制
  • 优先级指定无限制--可为多个任务制定同一优先级
  • 免费的开发工具可用于很多支持的架构
  • 免费的嵌入式软件源码
  • 免版税
  • 可从标准的Windows主机交叉开发

多任务相关概念

  • 什么是任务:任务就是线程,是一个逻辑概念,为实现某一目的而进行的一系列操作,任务是RTOS的基本组成单位
  • 任务的优先级
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值