当前位置: 技术问答>linux和unix
如何调试linux的网络驱动?
来源: 互联网 发布时间:2016-03-18
本文导语: 我想增加一个协议,和链路层以及其他几层都有关,原本的TCP/IP系列相关网络驱动模块加载已经成功了,网络也能用,但是修改程序时发现无法用gdb调试。。。。因为gdb就是通过网络传递信息的,难道只能printk来慢慢...
我想增加一个协议,和链路层以及其他几层都有关,原本的TCP/IP系列相关网络驱动模块加载已经成功了,网络也能用,但是修改程序时发现无法用gdb调试。。。。因为gdb就是通过网络传递信息的,难道只能printk来慢慢试? 谁有这方面经验啊?
还有谁能提供一下linux网络的资料,比如一些重要函数的用法?一些心得等?
还有谁能提供一下linux网络的资料,比如一些重要函数的用法?一些心得等?
|
用proc
proc_net_create("abc", 0, fun_info);
int fun_info(char *pbuf, char **start, off_t offset, int length)
{
//代码随便写, 输出到pbuf得信息就可以在/proc/abc文件中找到!
}
在proc/下就会有abc文件! 你查看你输出得信息就达到调试得目的了!
proc_net_create("abc", 0, fun_info);
int fun_info(char *pbuf, char **start, off_t offset, int length)
{
//代码随便写, 输出到pbuf得信息就可以在/proc/abc文件中找到!
}
在proc/下就会有abc文件! 你查看你输出得信息就达到调试得目的了!
|
利用/proc接口
|
或者用crash工具, 他由live模式,比gdb功能强很多