您的位置:首页 > 运维架构 > Linux

Linux magic sysrq key

2015-07-17 20:25 603 查看
sysrq key是什么

sysrq key是一组kernel在任何时候都可以响应的组合热键。
在嵌入式设备上我们一般没法使用组合按键,而是通过访问proc文件来发送command给kernel。

配置

sysrq的enable需要配置Magic SysRq key (CONFIG_MAGIC_SYSRQ)。

/proc/sysrq-trigger

操作该目录来触发对应的功能。

/proc/sys/kernel/sysrq

该目录的值配置了sysrq支持的command情况。value 0表明sysrq被disable,不支持任何command。value 1表明支持所有的command,这个是默认值。

默认值通过CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE选项来配置。

常用的command
'h'     - Will dump current memory info to your console.

print帮助。

'm'     - Will dump current memory info to your console.

dump系统的memory状况。

'l'     - Shows a stack backtrace for all active CPUs.

打印所有在cpu上正在运行的task的stack,但是没有直接的信息表明运行的是哪个task,只能作为一个参考。

'w'    - Dumps tasks that are in uninterruptable (blocked) state.

打印处于TASK_UNINTERRUPTIBLE状态的进程。

uninterruptable状态的进程不能响应外部的信号(中断),比较常见的是进程在等待IO的时候,会处于这个状态。

block state的进程,并不能说明这个进程出现了问题,这只是一个状态而已。当然如果这个进程长时间处于block state,那需要关注。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux kernel android