Chinaunix首页 | 论坛 | 博客
  • 博客访问: 685706
  • 博文数量: 240
  • 博客积分: 3616
  • 博客等级: 大校
  • 技术积分: 2663
  • 用 户 组: 普通用户
  • 注册时间: 2010-04-21 23:59
文章分类

全部博文(240)

文章存档

2013年(6)

2012年(80)

2011年(119)

2010年(35)

分类: LINUX

2010-11-09 20:40:41

printf工作起来和printf类似。
差别之一就是,通过附加不同日志级别(loglevel),或者说消息优先级,可以让printk根据这些级别的严重度对消息进行分类。
在头文件中定义了8种可用的日志级别字符串,下面以严重程序的降序来列出这些级别:
#define KERN_EMERG "<0>" /* system is unusable   */
#define KERN_ALERT "<1>" /* action must be taken immediately */
#define KERN_CRIT "<2>" /* critical conditions   */
#define KERN_ERR "<3>" /* error conditions   */
#define KERN_WARNING "<4>" /* warning conditions   */
#define KERN_NOTICE "<5>" /* normal but significant condition */
#define KERN_INFO "<6>" /* informational   */
#define KERN_DEBUG "<7>" /* debug-level messages   */
每个字符串(以宏的形式展开)表示一个尖括号的整数。整数值的范围为0-7.数值越大,优先级别越小。
根据日志级别,内核可能会把消息打印到当前控制台上。当优先级小于console_loglevel这个整数变量的值,消息才能
显示出来。
我们也可以通过对文本文件的访问来读取和修改控制台的日志级别
~]# cat /proc/sys/kernel/printk
6       4       1       7
这4个值的意思分别为:当前的日志级别,未明确指定日志级别时的默认消息级别,最小允许的日志级别以及引导时的默认
日志级别。向文件中写入单个整数值,即将会把当前日志级别修改为这个值
[root@localhost ~]# echo 8 > /proc/sys/kernel/printk
[root@localhost ~]# cat /proc/sys/kernel/printk
8       4       1       7
阅读(1106) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-11-10 15:11:53

很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com