GDB存根
概述
GDB特性提供了一个GDB远程串行协议(RSP)的实现,它允许您使用GDB远程调试Zephyr。
该协议支持不同的连接类型:串行、UDP/IP和TCP/IP。和风目前只支持串行设备通信。
GDB程序作为客户端,而Zephyr充当服务器。启用此功能后,Zephyr将在gdb_init()启动gdbstub服务并等待GDB连接后停止其执行。一旦建立了连接,就可以与西风同步交互。请注意,目前不可能向目标服务器异步发送命令。
功能
支持以下功能:
- 添加和删除断点
- 继续并执行目标
- 打印回溯
- 读取或写取通用寄存器
- 读取或写取内存
启用GDB Stub
可以使用CONFIG_GDBSTUB选项启用GDB存根。
使用串行后端
可以使用CONFIG_GDBSTUB_SERIAL_BACKEND选项启用GDB存根的串行后端。
由于串行后端利用UART设备来发送和接收GDB命令,
如果板上有备用的UART设备,将CONFIG_GDBSTUB_SERIAL_BACKEND_NAME设置为备用的UART设备,以便打印()和日志消息不会打印到用于G
本文介绍了如何使用GDB存根远程调试Zephyr操作系统,重点讲解了串行后端的启用和调试过程。GDB作为客户端,Zephyr作为服务器,通过串行设备通信。内容包括GDB存根的功能,如何启用串行后端,调试步骤以及实际操作示例。
订阅专栏 解锁全文
174

被折叠的 条评论
为什么被折叠?



