RTOS 架构总览¶
RTOS 通过任务调度、中断处理和同步机制协调并发执行。分析实时性时,需要关注中断响应、调度延迟、临界区长度和任务的截止时间。
graph TD
subgraph Fundamentals["01 RTOS 通用核心机制"]
F1["硬/软实时 & 调度理论"] --> F2["TCB & 硬件现场压栈"]
F2 --> F3["SysTick & 临界区保护"]
F3 --> F4["IPC / 信号量 / 优先级继承"]
F4 --> F5["内存堆分配 & MPU 隔离"]
end
subgraph DeepDive["FreeRTOS 与 Zephyr"]
direction LR
subgraph FreeRTOS["02 FreeRTOS (调度核)"]
FR1["极简微内核 / 源码拓扑"]
FR2["pxReadyTasksLists 位图调度"]
FR3["PendSV 汇编切换"]
FR4["Queue / 互斥量底层"]
FR5["heap_1 ~ heap_5 内存模型"]
FR6["ISR 安全与工程陷阱"]
FR7["任务通知 / 事件组 / 软件定时器 / Tickless"]
end
subgraph Zephyr["03 Zephyr (全栈生态 OS)"]
Z1["微内核演进与类 Linux 哲学"]
Z2["DeviceTree & Kconfig 体系"]
Z3["红黑树/多链表多算法调度"]
Z4["统一驱动模型 DEVICE_DT_DEFINE"]
Z5["Userspace / MPU / 系统调用"]
Z6["OpenAMP / BLE / 低功耗"]
end
end
subgraph Decision["04 系统对比与选型"]
C1["设计哲学与架构范式"]
C2["调度延迟与实时抖动实测"]
C3["硬件抽象与驱动迁移"]
C4["内存保护与安全认证"]
C5["Flash/RAM Footprint 极值"]
C6["选型决策树与场景矩阵"]
end
Fundamentals --> DeepDive
DeepDive --> Decision
推荐学习路线¶
路线一:内核工程师(底层原理与汇编级现场)¶
专注处理器微架构交互、中断延迟压制与上下文切换细节。
路线二:嵌入式软件架构师(系统选型与驱动生态)¶
权衡系统复杂度、开发成本、可移植性与软硬件解耦。
路线三:异构与多核开发工程师(SoC 协同与核间通信)¶
掌握核间中断、共享内存与 AMP 架构下的 RTOS 角色。
路线四:RVKernel 内核实验¶
在 QEMU RISC-V 环境中运行和调试 RVKernel。