在谷歌和阅读之后,我通过串口设置了kgdb,我可以进入调试器(通过/proc/sysrq触发器停止内核)并从主机gdb连接,gdb是ARM工具链的一部分。
基本上,我有开发板运行嵌入式linux的驱动程序我正在调试,我的PC与两个连接板-串行和以太网(telnet会话)。
在将主机gdb连接到目标之后,我就不能再对板执行telnet操作了,因为再现内存损坏的唯一方法是在板上应用一些用户应用程序的配置。
它是预期的,还是我做错了什么,并且有一种方法可以让IP连接到目标和GDB会话?
发布于 2012-12-19 11:04:39
这是意料之中的。主要是当您连接到KDB时,您正在破坏(停止/冻结)内核,它等待您再次运行内核或跟踪问题中的项目。
这里最好的方法是在您正在跟踪的API/Funciton上设置一个断点,然后"Go",内核将运行,并且您将使telnet/ssh再次工作,一旦它命中API,它将进入调试器,但由于整个操作系统被冻结,您将再次失去Telnet会话。
https://stackoverflow.com/questions/12983140
复制相似问题