printk是内核打印函数,需要在Linux内核源代码中调用printk函数需要包含kernel.h
内核入口函数start_kernel中添加了代码
printk(KERN_NOTICE “I’m the printk in the kernel\n”, linux_banner);
重现变异内核后。察看dmesg在dmesg开头处可以看到
- [ 0.000000] I’m the printk in the kernel
- [ 0.000000] Linux version 3.2.28 (root@leomass-virtual-machine) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) ) #1 SMP Tue Nov 6 12:47:01 CST 2012
可以看到我们自己插入的printk执行成功了,在源代码的其他地方添加printk就可以打印想要跟踪的数据了