RTOS Trace:看任务什么时候运行¶
任务响应慢、执行周期不稳,或中断占用太久,可以用 RTOS Trace 把运行过程展开成时间线。SystemView 是目标程序使用的事件跟踪组件,网页入口叫 RTOS Trace。
先让工程产生跟踪事件¶
目标程序需要集成 RTT、SystemView 和对应 RTOS 的事件支持。普通日志通常使用 RTT 通道 0,任务跟踪使用工程配置的跟踪通道;本例为通道 1。
帮我检查任务跟踪有没有接好,编译下载后打开 RTOS Trace。
RT-Thread 工程需要对应 hook 支持;HPM 的 FreeRTOS 工程使用相应适配。没有 RTOS 的裸机示例,不会自动产生任务切换事件。
开始观察¶
- 加载与固件匹配的 AXF/ELF,连接正在运行的目标。
- 打开 仪表盘 → RTOS Trace,定位 RTT 控制块和跟踪通道。
- 点击开始,运行一次要检查的业务场景。
- 停止后展开任务,查看运行片段与统计。

先找影响响应的那一段¶
| 关心的问题 | 怎么看 |
|---|---|
| 周期任务晚执行 | 比较相邻运行片段的间隔,再看中间的任务和中断 |
| CPU 负载高 | 比较业务任务、中断与空闲任务的占比 |
| 中断影响实时性 | 找最长片段,与业务允许的延迟比较 |
看看采样任务被谁耽误了,修改后用同样场景再比较一次。
高空闲率通常意味着 CPU 还有余量。是否发生任务饥饿,需要结合任务就绪、阻塞和执行情况判断。
HPM 也可以看任务时间线¶
最新 HPM 配套 RTOS 示例展示 Wave16 与 Telemetry 等任务。要从裸机 hello_world 开始使用,先加入对应 RTOS 和跟踪支持。

HPM 实战提供配套例程和使用步骤。
数据不完整时先排查采集¶
任务数为 0、时间尺度异常、目标缓冲溢出或丢失计数增长时,先检查工程适配、时间基准、跟踪通道与缓冲配置,再做定量分析。前端显示队列丢弃与目标端溢出是不同问题,需结合保存的数据检查。
页面切走或暂停图表不等于停止采集。结束观察后明确停止,再让其他工具接管下载器。