ubuntu18.04下双机驱动调试

环境搭建:
http://blog.51cto.com/haidragon/2337256
这里要先说下如果要下内核断点要先在编译前去掉写保护,但是下自己写的驱动可以不要。
第二个最好编译完后压缩vm系统文件然后复制一份,这样就调试机与被调试机环境一模一样,同样编译生成的符号也有。
我这里是复制的也就是俩个系统一模一样的,只是一个是做客服端,一个是服务端。
开始第一个驱动编写:
http://blog.51cto.com/haidragon/2164619
编译完成后调试机与被调试机各一份最好在一个目录下面。同时最好目录里面东西都是各一份。
ubuntu18.04下双机驱动调试
然后被调试机安装驱动
ubuntu18.04下双机驱动调试
找到模块在内核中的偏移地址复制下来 等下用到
输入cat /sys/module/test/sections/.text 中间test为模块名称
ubuntu18.04下双机驱动调试
然后主动断下
输入echo g>/proc/sysrq-trigger被调试机卡住
ubuntu18.04下双机驱动调试
调试机就会收到 等待输入命令
ubuntu18.04下双机驱动调试
这里就是在调试机上操作了
安装要调试的模块
add-symbol-file 文件 模块偏移
add-symbol-file ../test/test.ko 0xffffffffc049a00
ubuntu18.04下双机驱动调试
然后就可以开始下函数断点调试了。这里就下卸载函数断点
输入 b hello_exit
ubuntu18.04下双机驱动调试
让系统继续执行
输入 c
ubuntu18.04下双机驱动调试
然后去被调试机上卸载驱动
ubuntu18.04下双机驱动调试
调试机上又收到了 等待输入 可以输入l命令看下源码这里没有什么功能就直接放行,让系统继续卸载。
ubuntu18.04下双机驱动调试

猜你喜欢

转载自blog.51cto.com/haidragon/2339269