内核调试方法

本文介绍了内核调试的三种主要方法:1) 使用printk和dmesg进行打印信息调试;2) 根据内核OOPS信息,通过PC值和栈信息分析错误;3) 修改内核来定位系统僵死问题,特别是通过系统定时器中断来查找卡死进程。
摘要由CSDN通过智能技术生成

1 .打印

       跟普通应用程序一样,打印信息是最直接的调试手段,通过打印信息来获得内核运行的情况和状态。

1.1 printk

       功能:通过控制台把内核信息按照日志级别打印出来。
       查看当前的系统的打印等级: cat /proc/sys/kernel/printk >7 4 1 7这里四个参数的意义:如下
        7:当前控制台命令级别,只要小于这个的命令级别才能够被打印出来。
        4:默认printk打印等级,即printk(“hello world”)函数不带命令等级的时候默认的等级,这里的是4比7小,则会打印。
        1:控制台级别可被设置的最小值(最高优先级)这里的1表示我控制台级别最高可以设置到1,那么级别为0的就一直会被打印
        7:默认的控制台日志级别,当没有设置控制台级别是就是默认的7级别
       修改打印级别:# echo 3 > /proc/sys/kernel/printk或者echo “3 4 1 7” > /proc/sys/kernel/printk

1.2 dmesg

       printk低级别的打印信息并没有被内核所丢弃,而是跟其他的信息一起存放在buffer里,通过dmesg可以把这些消息打印出来

基本用法:(1)直接输入dmesgÿ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值