读书人

printk及控制台的日记级别

发布时间: 2012-11-26 11:48:49 作者: rapoo

printk及控制台的日志级别

函数printk的使用方法和printf相似,用于内核打印消息。printk根据日志级别(loglevel)对消息进行分类。

日志级别用宏定义,日志级别宏展开为一个字符串,在编译时由预处理器将它和消息文本拼接成一个字符串,因此printk 函数中日志级别宏和格式字符串间不能有逗号。

下面是两个printk的例子,一个用于打印调试信息,另一个用于打印临界条件信息。

printk(KERN_DEBUG "Here I am: %s:%i\n", _ _FILE_ _, _ _LINE_ _); printk(KERN_CRIT "I'm trashed; giving up on %p\n", ptr);  

printk的日志级别定义如下(在linux26/includelinux/kernel.h中):

# echo 8 > /proc/sys/kernel/printk 

printk不显示在超级终端上,保存在/var/log/messages。

可以在命令行上输入dmesg命令查看,如果只想显示最后几行,可以用
dmesg | tail -n - 8

 

读书人网 >软件开发

热点推荐