树莓派kgdb配置使用

关于 kgdb

这里摘抄了网上一篇博客的一段话。

kgdb 实现了在开发机上使用 gdb 远程调试目标机的功能,包括命令处理、陷阱处理以及串口通信3个主要部分。
kgdb 会在 linux 内核中添加一个调试 stub ,调试 stub 是 linux 内核中的一小段代码,是运行 gdb 的开发机和目标机内核之间的媒介。
gdb 和调试 stub 之间通过 gdb 串行协议进行通信。 gdb 串行协议是一种基于消息的 ASCII 码协议,包含了各种调试命令。
当设置断点时, kgdb 将断点的指令替换为一条 trap 指令,当执行到断点时,控制权就转移到调试 stub 中去。
此时,调试 stub 的任务就是使用远程串行通信协议将当前内核环境传送给 gdb ,然后从 gdb 处接收命令。
gdb 命令告诉调试 stub 下一步该做什么,当调试 stub 收到继续执行的命令时,将恢复内核的运行环境,
把对 cpu 的控制权重新交还给内核。

总结几点:

  • kgdb 是用于开发内核或者内核模块的工具,一般需要有一台开发机和目标机,他们通过网线或者串口线连在一起。我们在开发机上使用 gdb 调试目标机上的程序,包括内核代码及模块代码。
  • kgdb 配置于目标机器上,现在一般的 Linux 内核都集成有 kgdb ,
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值