【RTOS】RTOS知识点
📅 2026/7/18 1:17:16
👁️ 阅读次数
📝 编程学习
【RTOS】
【RTOS知识点】
1. 任务管理(最核心)
- 任务(线程)状态:就绪、运行、阻塞、挂起、删除;
- 任务调度器:决定哪个任务占用 CPU,是实时性的关键;
- 任务控制块 TCB:存储每个任务栈、优先级、状态、入口函数;
- 任务接口:创建 / 删除 / 挂起 / 恢复 / 延时 / 优先级修改。
2. 调度器(实时核心)
主流调度算法:
- 抢占式调度(绝大多数 RTOS,高优先级任务可打断低优先级);
- 时间片轮转调度(同优先级任务均分 CPU);
- 协作式调度(任务主动放弃 CPU,极少用); 配套机制:优先级翻转抑制(优先级天花板、优先级继承)。
3. 同步与通信组件(多任务互斥、数据交互)
- 信号量:二值信号量(互斥)、计数信号量(资源计数);
- 互斥锁 Mutex:解决共享资源竞争,自带优先级继承;
- 消息队列:任务间异步传递数据;
- 信号(事件标志组):多事件等待触发;
- 邮箱 / 消息缓冲区:轻量化消息传递;
- 共享内存:多任务直接访问同一块内存(需配合锁)。
4. 时间管理
- 系统滴答定时器 SysTick:全局时钟基准;
- 任务延时:相对延时、绝对延时;
- 软件定时器:无需占用任务,后台定时回调;
- 时间片、超时等待(信号量 / 队列等待加超时防死等)。
5. 内存管理
嵌入式专用轻量化内存分配,避免碎片:
- 静态内存:预先分配内存池(推荐,无碎片、实时确定);
- 动态堆管理:分段堆、块分配(适配小内存 MCU);
- 内存池:固定大小块,用于频繁创建销毁数据。
6. 中断管理
- 中断服务函数 ISR 分层:ISR 快速处理,通过信号量 / 队列唤醒任务;
- 中断优先级分组、中断屏蔽;
- 支持在中断内调用专用内核 API(不可调用阻塞接口)。
7. I/O 与设备驱动(可选组件)
- 标准设备抽象:串口、GPIO、ADC、SPI、I2C;
- 文件系统:FatFS、LittleFS(存储日志 / 配置);
- 网络协议栈:LWIP、Socket(物联网 RTOS 标配);
- 低功耗管理:任务休眠、CPU 停机、外设时钟门控。
8. 调试与扩展组件
- 内核对象监控:任务栈使用率、CPU 占用率;
- 日志打印、断言、内存泄漏检测;
- 软件看门狗、异常崩溃记录。
编程学习
技术分享
实战经验