----
前言
调试内核肯定不是什么轻松的事情, 这里是使用kgdb进行调试, 你理解的没错, 就是kernel版的gdb.
----
虚拟机串口设置
首先克隆下已经重新编译内核的虚拟机
然后设置两者的串口...然后开始测试一下kgdb的调试, 目标机切换为root用户, 控制权限交给kgdb, 目标机进入假死状态:
echo g > /proc/sysrq-trigger
开发机进入自编译内核目录...----
调试驱动模块
要调试自己的写的驱动模块, 就有些麻烦了, 首先需要常规的插入模块, 不多说了. 然后这里有个shell脚本可以获取下一些所需参数, 主要是用来插入符号参数:
#!...然后在目标机插入.ko文件
用shell脚本获取.text, .data, .bss段基址.
如果你不太清楚这些东西, 还是请自行google, 因为如果展开, 篇幅就控制不住了.
?...接下来就和平常使用gdb调试一样了.
----
最后
如果要写驱动模块, 必须要调试内核, 上述方法并不是唯一方法. 下一篇将会介绍一些更实用的小工具来进行类似的调试.