使用kern.log 日志文件来调试内核,应用的场景真的非常的少,而且如果printk语句打印过多就会容易发生死机。
另外还有两种方法可以调试内核,第一通过kdump方法,第二种方法是使用sysrq。
首先介绍sysrq,在2.1.x系列,就已经有sysrq了。所以他的历史还是比较久远,而且比较稳定。
第一步,看看内核是否支持sysrq。
第二步,如果支持,下一步打开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的使用方法。
阅读(559) | 评论(0) | 转发(1) |
<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>
另外还有两种方法可以调试内核,第一通过kdump方法,第二种方法是使用sysrq。
首先介绍sysrq,在2.1.x系列,就已经有sysrq了。所以他的历史还是比较久远,而且比较稳定。
第一步,看看内核是否支持sysrq。
点击(此处)折叠或打开
- $grep “ CONFIG_MAGIC_SYSRQ ” /boot/config-`uname – r`
- CONFIG_MAGIC_SYSRQ=y
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的使用方法。
相关热门文章
给主人留下些什么吧!~~
评论热议