Chinaunix首页 | 论坛 | 博客
  • 博客访问: 311917
  • 博文数量: 570
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 10
  • 用 户 组: 普通用户
  • 注册时间: 2015-11-17 10:38
文章分类

全部博文(570)

文章存档

2015年(570)

我的朋友

发布时间:2015-11-17 16:20:16

内核异常分析方法......【阅读全文】

阅读(1035) | 评论(0) | 转发(0)

发布时间:2015-11-17 16:20:09

内存分配失败,水线,oom......【阅读全文】

阅读(659) | 评论(0) | 转发(0)

发布时间:2015-11-17 16:20:00

一次用户态进程死循环案例的分析
1、问题现象
业务进程(用户态多线程程序)挂死,操作系统反应迟钝,系统日志没有任何异常。从进程的内核态堆栈看,看似所有线程都卡在了内核态的如下堆栈流程中:
[root@vmc116 ~]# cat /proc/27007/task/11825/stack
[] retint_careful+0x14/0x32
......【阅读全文】

阅读(473) | 评论(0) | 转发(0)

发布时间:2015-11-17 16:19:53

1、内核hung task检测机制由来
?我们知道进程等待IO时,经常处于D状态,即TASK_UNINTERRUPTIBLE状态,处于这种状态的进程不处理信号,所以kill不掉,如果进程长期处于D状态,那么肯定不正常,原因可能有二:
?1)IO路径上的硬件出问题了,比如硬盘坏了(只有少数情况会导致长期D,通常会返回错误);
?2)内核自己出问题了。
?这种问题不好定位,而且一旦出现就通常不可恢复,kill不掉,通常只能重启恢复了。
?内核针对这种开发了一种hung task的检测机制,基本原理是:定时检测系统中处于D状态的进程,如果其处于D状态的时间超过了指定时间(默认120s,可以配置),则打印相关堆栈信息,也可以通过proc参数配置使其直接panic。......【阅读全文】

阅读(295) | 评论(0) | 转发(0)

发布时间:2015-11-17 16:19:48

Oops中的error code解释
1、如果第1位被清0,则异常是由一个不存在的页所引起的;否则是由无效的访问权限引起的。
2、如果第1位被清0,则异常由读访问或者执行访问所引起;否则异常由写访问引起。
3、如果第2位被清0,则异常发生在内核态;否则异常发生在用户态。......【阅读全文】

阅读(423) | 评论(0) | 转发(0)
给主人留下些什么吧!~~
留言热议
请登录后留言。

登录 注册