"); //-->
此选项在linux-2.6.10,linux-2.6.15,linux-2.6.19中都没有。
四:CONFIG_DEBUG_INFO这个选项一般要打开,下面引用《linux设备驱动程序第三版》的一段话。
“该选项将使内核的构造包含完整的调试信息。如果读者打算利用GDB调试内核,将需要这些信息。如果计划使用GDB,还应打开CONFIG_FRAME_POINTER选项。”
五:CONFIG_MAGIC_SYSRQ 5.1 打开方法①通过make menuconfig 配置 ②通过命令启用
在系统运行时通过下列命令启动
echo 1 > /proc/sys/kernel/sysrq(没有验证)
5.2 验证因为一时想不到好的实验方法(让键盘死锁的方法,我在加载的驱动模块里面设置了一个死循环while(1),虽然键盘无法响应ctrl+alt+c也不响应,但是alt+sysrq+任意组合键也不响应),所以没有验证。
=======================================================================================
By 下家山 QQ 1209050967 上海松江文汇路928号258室 松江大学城 7/31/2012
上海索漫科技 http://www.xiajiashan.com 专注嵌入式(ARM7,Cortex-M0,Cortex-M3,ARM9,linux)培训
这个配置选项在《linux设备驱动程序第三版》中并没有介绍,因为linux2.6.10版本中没有,但,linux2.6.15和linux2.6.19中有(其他版本我没有去查证),通过这个配置选项,就会在printk 的同时打印出当前时间,这样可以看到kernel的运行时间,对调试也许有所帮助。
6.2如何打开PRINTK_TIME选项 6.3测试代码//slabtest.c
#include
#include
#include
unsigned char *slab_wr; /* I/O data buffer */
static int slabtest_init(void)
{
printk(KERN_EMERG "slab_wr address before call kmalloc:0x%08lx \n",slab_wr);
slab_wr = (unsigned char *)kmalloc(100,GFP_USER/*GFP_KERNEL*/);
printk(KERN_EMERG "slab_wr address affter call kmalloc :0x%08lx \n",slab_wr);
printk(KERN_EMERG "\nHello\n");
return 0;
}
static void slabtest_exit(void)
{
kfree(slab_wr);
printk(KERN_EMERG"\nGoodbye\n");
}
module_init(slabtest_init);
module_exit(slabtest_exit);
6.4测试结果!
红色部分即为printk时打印的当前时间。看来还是有点作用的。
但是,如果printk调用频繁,则会大大降低系统速度!
本文还没有涉及到KGDB相关调试技术,KGDB调试需要两台PC及两个串口,调试不是很方便,此部分工作本人只完成一半就搁浅了,目前还没有时间继续。另,在此想结识对KGDB有所研究或及其感兴趣的人士。
请与我联系:
QQ:408452271
Email:ximenpiaoxue4016@sina.com
2010-1-7 上海.松江
专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们
相关推荐
重塑线束加工价值链:聚焦2026慕尼黑上海电子生产设备展上的智造新势力
低压4:1模拟多路复用器:专注一事,做到极致
可燃气体报警器1(7812、7805、555)
Keil_for_Arm7_1.0
ARM The Architecture of Android
ADI公司的BLACKFIN处理器为新的DRM接收机提供基带处理能力
选择瞬态噪声模拟的最小/最大噪声频率
NVIDIA发布超级手机 基于Tegra平台
可燃气体报警器2(7806、KD28)
技术迭代赋能,从三大赛道看新能源汽车核心制造工艺创新与产业升级
Diodes 公司推出高效多相 SPI 增压控制器,实现稳健灵活的汽车头灯系统
OpenClaw狂欢后,硬件圈的“硬仗”怎么打?AI硬件五个模块的生死平衡
可燃易爆气体报警器(F012)
Linux Bible RedHat.part2
限制AI/ML工具以确保物理AI的安全和保障
英特尔展示智能家居系统
关于汽车以太网的11个误区
linux - Advanced Bash Shell Scripting Guide
库房温度测量报警器(F007、5G1555、F033)
意法半导体新的SPI串行闪存兼容领先的PC BIOS代码存储芯片组系列
Keil_for_Arm7_1.0.zip
美国国家半导体推出全套功能齐备并采用迷你封装的 Boomer 3D 立体声音频子系统
Android的挑战——Enea解决方案
Linux Bible RedHat.part1
矽玛特收购Oasis Semiconductor 大步进军多功能外设市场
555构成的轴温报警器
电源管理集成电路压缩进汽车摄像头
并行视角:智能眼镜中的多电池管理
MIPS 扩展硬IP核系列,为预算有限的SoC设计人员提供高性能核心
微软CEO发表CES开幕演讲