当前位置: 技术问答>linux和unix
如何调试驱动(.ko)文件
来源: 互联网 发布时间:2017-02-22
本文导语: 我用ddd调试,用如下的命令: ddd globalfifo.ko 这时候可以出现源代码,然后我在globalfifo_init函数设置断点 然后我在另外一个终端执行: sudo insmod globalfifo.ko命令,期望在那个断点处停下来。 但是结果是没有停!! 已...
我用ddd调试,用如下的命令:
ddd globalfifo.ko
这时候可以出现源代码,然后我在globalfifo_init函数设置断点
然后我在另外一个终端执行: sudo insmod globalfifo.ko命令,期望在那个断点处停下来。
但是结果是没有停!!
已经确定是用-g选项编译成功了.
ddd globalfifo.ko
这时候可以出现源代码,然后我在globalfifo_init函数设置断点
然后我在另外一个终端执行: sudo insmod globalfifo.ko命令,期望在那个断点处停下来。
但是结果是没有停!!
已经确定是用-g选项编译成功了.
|
主要还是靠打印信息。
|
嗯 最好用printk 打印消息
|
你觉得哪里可能会出问题就在哪里 打印
要是思维很清晰的话 打印找错其实挺快的
要是思维很清晰的话 打印找错其实挺快的
|
printk最好用,呵呵
实在是想用单步调试,可以用kgdb 或者kdb ,
kgdb需要串口线或者网络连远程机器, kdb可以单机调试,不过需要给内核打patch, 而且那种实时其实也不好弄。除非你printk搞不清楚问题的情况就去试试吧
实在是想用单步调试,可以用kgdb 或者kdb ,
kgdb需要串口线或者网络连远程机器, kdb可以单机调试,不过需要给内核打patch, 而且那种实时其实也不好弄。除非你printk搞不清楚问题的情况就去试试吧
|
一直都用printk 打印消息
|
老老实实打印吧~~~~~
|
我也一直用printk打印信息来判断
《Linux设备驱动程序》第三版第4章有讲调试技术的,可查看。。。
《Linux设备驱动程序》第三版第4章有讲调试技术的,可查看。。。