最近在linux内核态下编写、调试代码,一点心得是:
1、kgdb比较难使用(环境比较难搭建,常死机),但是偶尔用一下还是挺不错的
大致情况是:使用kgdb调时需要有2台主机,需要编译一份打了kgdb补丁的内核(具体看相关资料)
2、使用printk还是比较方便的,
日志一般是被打印到/var/log/messages中(当然这个是可以配置的)
比较喜欢的命令是
tail -f /var/log/messages |grep xxx
demsg -c
vi /var/log/messages
3、用户态下通过字符设备调用ioctl获取调试信息。这种情况下一般是程序设计阶段就已经有考虑到
4、通过/proc或/sysfs导出和设置属性的方式。使用这种方式可以直接通过shell脚本跟内核交互。
可以参考:
1) Documentation/kobject.txt
2) http://www.linux.it/~rubini/docs/sysfs/sysfs.html
posted on 2007-01-27 01:56
hzb 阅读(400)
评论(1) 编辑 收藏 引用