调试内核的方法总结

使用kern.log 日志文件来调试内核,应用的场景真的非常的少,而且如果printk语句打印过多就会容易发生死机。
另外还有两种方法可以调试内核,第一通过kdump方法,第二种方法是使用sysrq。

首先介绍sysrq,在2.1.x系列,就已经有sysrq了。所以他的历史还是比较久远,而且比较稳定。
第一步,看看内核是否支持sysrq。

点击(此处)折叠或打开

  1. $grep “ CONFIG_MAGIC_SYSRQ ” /boot/config-`uname – r` 
  2. CONFIG_MAGIC_SYSRQ=y
第二步,如果支持,下一步打开sysrq开关:
sysctl -w kernel.sysrq = 1
如果想开机自己启动这个开关,可以修改/etc/sysctl.conf 
加入 
kernel.sysrq = 1

第三步,开始测试一下sysrq的效果。
sysrq的使用时组合键,使用方法是ALT+SysRq + <command key>.
command key:

M - 打印内存使用信息
T - 打印当前的task的栈的信息
W - 打印 CPU 信息
C - 触发 Crashdump,这个命令可以让系统死机陷入一个空指针的bug当中,这个是sysrq故意营造的bug来测试crashdump。
P - 打印当前 CPU 寄存器信息


下次将讲解kdump的使用方法。

<script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/buttonLite.js#style=-1&uuid=&pophcol=3&lang=zh"></script> <script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/bshareC0.js"></script>
阅读(559) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~
评论热议
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值