图形界面终端下打印内核调试信息
生活随笔
收集整理的这篇文章主要介绍了
图形界面终端下打印内核调试信息
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
(备份)
很多比较新的Linux系统中(如Fedora 16),如果要在图形界面的终端下调试一个内核模块,printk()函数的输出信息是在终端下显示不出来的,需要查看/var/log/messages或通过dmesg命令查看其输出信息,这样不太方便。
而要使系统能打印出printk()函数的信息,又需要在tty下(ctrl+alt+F1~F6进入),这样有时候也很不方便。
可以利用下面函数,使其即使在内核模块中打印信息,也可以在图形界面的终端下输出信息(但是不会记录到/var/log/messages中):
#include <linux/tty.h> void print_string(char *str) {struct tty_struct *tty;tty = current->signal->tty;if(tty != NULL){(((tty->driver)->ops)->write)(tty, str, strlen(str));(((tty->driver)->ops)->write)(tty, "\015\012", 2);} }转载于:https://www.cnblogs.com/taskiller/archive/2012/10/09/2717175.html
总结
以上是生活随笔为你收集整理的图形界面终端下打印内核调试信息的全部内容,希望文章能够帮你解决所遇到的问题。