【RTOS】RTOS知识点

📅 2026/7/18 1:17:16 👁️ 阅读次数 📝 编程学习
【RTOS】RTOS知识点

【RTOS】

【RTOS知识点】

1. 任务管理(最核心)

  1. 任务(线程)状态:就绪、运行、阻塞、挂起、删除;
  2. 任务调度器:决定哪个任务占用 CPU,是实时性的关键;
  3. 任务控制块 TCB:存储每个任务栈、优先级、状态、入口函数;
  4. 任务接口:创建 / 删除 / 挂起 / 恢复 / 延时 / 优先级修改。

2. 调度器(实时核心)

主流调度算法:

  • 抢占式调度(绝大多数 RTOS,高优先级任务可打断低优先级);
  • 时间片轮转调度(同优先级任务均分 CPU);
  • 协作式调度(任务主动放弃 CPU,极少用); 配套机制:优先级翻转抑制(优先级天花板、优先级继承)。

3. 同步与通信组件(多任务互斥、数据交互)

  1. 信号量:二值信号量(互斥)、计数信号量(资源计数);
  2. 互斥锁 Mutex:解决共享资源竞争,自带优先级继承;
  3. 消息队列:任务间异步传递数据;
  4. 信号(事件标志组):多事件等待触发;
  5. 邮箱 / 消息缓冲区:轻量化消息传递;
  6. 共享内存:多任务直接访问同一块内存(需配合锁)。

4. 时间管理

  • 系统滴答定时器 SysTick:全局时钟基准;
  • 任务延时:相对延时、绝对延时;
  • 软件定时器:无需占用任务,后台定时回调;
  • 时间片、超时等待(信号量 / 队列等待加超时防死等)。

5. 内存管理

嵌入式专用轻量化内存分配,避免碎片:

  1. 静态内存:预先分配内存池(推荐,无碎片、实时确定);
  2. 动态堆管理:分段堆、块分配(适配小内存 MCU);
  3. 内存池:固定大小块,用于频繁创建销毁数据。

6. 中断管理

  • 中断服务函数 ISR 分层:ISR 快速处理,通过信号量 / 队列唤醒任务;
  • 中断优先级分组、中断屏蔽;
  • 支持在中断内调用专用内核 API(不可调用阻塞接口)。

7. I/O 与设备驱动(可选组件)

  • 标准设备抽象:串口、GPIO、ADC、SPI、I2C;
  • 文件系统:FatFS、LittleFS(存储日志 / 配置);
  • 网络协议栈:LWIP、Socket(物联网 RTOS 标配);
  • 低功耗管理:任务休眠、CPU 停机、外设时钟门控。

8. 调试与扩展组件

  • 内核对象监控:任务栈使用率、CPU 占用率;
  • 日志打印、断言、内存泄漏检测;
  • 软件看门狗、异常崩溃记录。