边缘实时操作系统选型与移植实战

📚 共计 30 章节
01
RTOS概述
什么是实时操作系统 · RTOS与GPOS的区别 · 边缘计算需求 · FreeRTOS/RT-Thread/Zephyr/uC/OS简介
基础概念
02
RTOS内核基础
任务与调度(抢占/时间片) · 任务状态机 · 优先级与堆栈配置
内核调度
03
任务间通信
队列 · 信号量 · 互斥量 · 事件标志组 · 消息邮箱
IPC同步
04
内存管理
静态/动态分配 · 内存碎片 · 伙伴算法 · tlsf
内存算法
05
时钟与定时器
系统滴答(SysTick) · 软件定时器 · 时间管理API
时钟定时
06
中断管理
中断嵌套 · 临界区保护 · 中断延迟优化 · 零中断延迟技术
中断实时
07
RTOS选型方法论
选型维度(生态/实时性/资源/认证) · 决策矩阵
选型架构
08
FreeRTOS深度解析
源码结构 · 调度机制 · 任务通知 · Stream Buffer
FreeRTOS内核
09
RT-Thread深度解析
组件化架构 · FinSH控制台 · 设备驱动框架 · SMP支持
RT-Thread组件
10
Zephyr深度解析
构建系统(CMake+West) · 设备树(Devicetree) · 蓝牙协议栈
Zephyr蓝牙
11
uC/OS-III深度解析
时间片轮转 · 内建消息 · 任务寄存器 · 认证情况
uC/OS认证
12
边缘硬件平台概览
ARM Cortex-M/R/A · RISC-V · Xtensa(ESP32) · 异构多核
硬件架构
13
移植前的准备工作
获取RTOS源码 · 搭建交叉编译环境 · 硬件调试器(JLink/ST-Link)
移植环境
14
移植核心步骤(一)
启动文件与链接脚本修改 · 堆栈初始化 · 系统滴答配置
启动链接
15
移植核心步骤(二)
中断向量表重定向 · PendSV/SVC异常 · 上下文切换实现
中断切换
16
移植核心步骤(三)
内存布局优化 · MPU/MMU配置 · Cache一致性处理
内存MPU
17
板级支持包(BSP)开发
GPIO/UART/SPI/I2C驱动封装 · DMA集成
BSP驱动
18
时钟树与功耗管理
低功耗Tickless模式 · 睡眠/停止/待机 · 动态调频
功耗低功耗
19
多核与AMP/SMP移植
多核启动流程 · 核间通信(IPI) · 共享资源保护
多核AMP
20
文件系统移植
LittleFS · FatFS挂载 · Flash磨损均衡 · 掉电安全
文件系统存储
21
网络协议栈移植
LwIP · mbedTLS · MQTT/CoAP · Socket编程
网络IoT
22
调试与性能分析
任务栈溢出检测 · CPU利用率 · Tracealyzer/SystemView
调试性能
23
单元测试与自动化测试
Unity/CMock · QEMU仿真 · CI/CD集成
测试CI
24
安全启动与固件更新
签名验证 · 安全OTA · 回滚保护 · Secure Boot
安全OTA
25
工业协议栈移植
Modbus · CANopen · EtherCAT · PROFINET
工业协议
26
边缘AI推理框架移植
TensorFlow Lite Micro · NCNN · CMSIS-NN集成
AI推理
27
容器与虚拟化
MicroVM(Zephyr) · Unikernel · 轻量化Docker替代
容器虚拟化
28
认证与合规
IEC 61508 SIL3 · MISRA-C · ISO 26262 ASIL · UL 60730
认证安全
29
实战案例(一)
基于STM32H7移植FreeRTOS+LwIP+MQTT
实战STM32
30
实战案例(二)
基于ESP32-S3移植Zephyr+蓝牙+AI推理
实战ESP32