内核调试技巧

内核调试技巧


printk

打印级别
|    FLAG     |   |
|-------------|---|
|KERN_EMERG   |<0>|
|KERN_ALERT   |<1>|
|KERN_CRIT    |<2>|
|KERN_ERR     |<3>|
|KERN_WARNING |<4>|
|KERN_NOTICE  |<5>|
|KERN_INFO    |<6>|
|KERN_DEBUG   |<7>|
|-------------|---|
  1. printk打印级别比控制台级别小,则显示。
  2. 控制台默认值为DEFAULTCONSPLELOGLEVEL = 7,比7小的都能显示。
  3. 使用 echo 8 > /proc/sys/kernel/printk 调整printk级别
syslog和dmesg
  1. 后台进程(klogd和syslogd)组成,klogd从内核的日志缓冲区获取内核信息并转发给syslogd
  2. __LOG_BUF_LEN是长度,循环队列
  3. dmesg
原文地址:https://www.cnblogs.com/jsgnadsj/p/5172480.html