参考 http://www.newsmth.net/nForum/#!article/Embedded/50092
Question: 段错误gdb定位不出来,除了加打印还有什么别的调试方式
发信站: 水木社区 (Wed Aug 21 04:18:31 2019), 站内
先做个文档用小黄鸭调试法理一理资源约束与技术路线,如果开始没有做好分割解耦设计,后面调试是比较吃力的。
最小系统法累加,或者逐个功能屏蔽,辅以多个变量在程序关键执行路径上插标后进行自加操作,作为算法运行动态路径快照。
打印及日志函数搞精悍一点,串口能同时显示多个标记变量的循环经历次数、时点顺序及检测变量16进制值,数据实时外发生成log分析尸体。
裸机的好处是内存溢出及地址非法问题比较少见,跑系统的话涉及多任务调度以及中断异常优先级处理,与具体业务相关,甚至有些是硬件电源问题引发,不可一概而论。