请阅读【Trace32 ARM 专栏导读】
文章目录
- ARM 系统调试中常见的挑战
-
- ARM 系统调试接口简例
-
- DAP-Debug Access port
- DAP 状态检查
- 多核调试
- 虚拟/物理地址
- Cache 数据一致性问题
- 系统异常
-
- 系统复位
- 系统死机
-
- PC 采样
- Memory 采样
- RAM/Core Dump 分析
- 小概率问题
ARM 系统调试中常见的挑战
- 调试工具连接失败;
- 多核/多芯片SMP/AMP系统调试;
- RTOS/Hypervisor 和动态组件的调试;
- 虚拟/物理地址、Cache 一致性
- TrustZone 安全限制;
- 系统异常、复位、死机;
- 不易重现或者小概率问题。
比如调试工具连接失败,调试工具连接成功这是所有工作开始的前提。如果工具和内核的通信都建立不起来,那么别的任何功能都是镜花水月。
现在的系统中都会涉及到多核的调试和多核的同步问题,以及操作系统甚至hypervisor的调试,我们怎么才能做到对整个系统来说,对用户都是随时可见的,并且是完全可见的,这也是一个挑战。
有了操作系统之后就很难避免 涉及到MMU、MPU,虚拟地址与物理地址的转换 以及 Cache 一致性的一些问题。
而对于有安全要求的系统来说,也都会有TrustZone的机制问题。
ARM 系统调试接口简例
DAP-Debug Access port
DAP 是调试工具和片上调试和跟踪组件的主要接口, 如果DAP 有问题,那么调试的工具将会无法进行。