01-实时操作系统基础.md 3.2 KB


tags: [source-summary] type: source source: "尚硅谷嵌入式技术之FreeRTOS实时操作系统 V1.0.3" author: "尚硅谷研究院" date: 2026-07-12 url: ""

created: 2026-07-12

实时操作系统基础

来源:尚硅谷 FreeRTOS 教程第 1 章。覆盖:裸机 vs OS、通用 OS vs RTOS、FreeRTOS 简介与发展历史。

裸机开发 vs 操作系统

裸机开发:没有 OS 支持,直接在硬件上开发,开发者亲自管理 CPU、内存和 I/O 资源。前期学习的 STM32 单片机代码都属于裸机开发。

操作系统:作为硬件与应用之间的桥梁,协调分配计算和内存资源给不同应用程序使用。

一个计算机系统分为三部分:硬件(Hardware)、操作系统(Operating System)、应用程序(Application Programs)。

通用操作系统 vs 实时操作系统

类型 代表 特点
通用 OS Linux、Windows、macOS 功能强大,但不保证每个程序实时响应
实时 OS(RTOS) FreeRTOS、uC/OS、RT-Thread、QNX 保证任务在给定时间(Deadline)内完成

实时(Real Time) 的含义:任务必须在给定的时间内完成。强大的计算能力并不能保证实时性——例如安全气囊需要在 30ms 内打开,如果因任务调度问题导致响应超时,将导致严重事故。

RTOS 能保障:

  1. 对中断和内部异常的处理
  2. 对安全相关的事件的处理
  3. 任务调度机制等

FreeRTOS 简介

FreeRTOS 是所有实时操作系统中最受欢迎的一款。

发展历史

  • 2003 年:由美国的 Richard Barry 发布
  • 2017 年:被亚马逊收购,改名为 AWS FreeRTOS

核心优势

  • 开源免费:MIT 许可证(注意:开源≠免费,有些开源协议只允许个人学习不允许商用,FreeRTOS MIT 两者都允许)
  • 轻量级:适用于资源受限的嵌入式系统
  • 广泛应用:工业自动化、医疗设备、消费电子、汽车电子
  • 多平台支持:可移植到不同硬件平台
  • 丰富的功能:多任务调度、任务通信、同步

单核处理器通过任务间快速切换制造"同时运行"的假象。上图:感知到的并发(所有任务同时运行),下图:实际执行(时间上串行)。

并发 vs 并行:就像三个坑位的卫生间——3人×3坑 = 并行(同时上),6人×3坑 = 并发(轮流上)。单核 RTOS 只能做到并发,做不到并行。

炒菜类比:一位厨师(单核)炒三道菜。裸机编程 = 做完一道再做下一道。RTOS = 同时准备所有食材,然后轮流翻炒——这就是"快速切换"的并发效果。

关键特点

  • 任务调度:支持不同优先级的任务有序执行
  • 任务通信和同步:队列、信号量等机制
  • 内存管理:适用于嵌入式环境
  • 定时器和中断处理
  • 庞大的用户社区
  • 可移植性:轻松移植到不同硬件平台

后续章节:[[02-任务调度与状态管理]]、[[03-FreeRTOS移植指南]]、[[04-数据类型与命名规范]]