低内存引起的死机和冻机的分析
来源:互联网 发布:淘宝 店招 显示代码 编辑:程序博客网 时间:2024/06/09 17:38
Kernel处于LMK频繁select进程去杀、但又找不到可以杀的进程的状态中,因某个最合适的进程已被发送SIGKILL。
在遍历所有进程的时候,遍历到倒数第二个进程的时候没有问题,在遍历最后一个进程的时候,如下代码:
if (test_tsk_thread_flag(p, TIF_MEMDIE) && time_before_eq(jiffies, lowmem_deathpending_timeout)) {task_unlock(p);rcu_read_unlock();return 0;}该这个进程的SIGKILL信号还没处理完.
查看当前的task信息
((struct task_struct)*0xC2262D80).pending.signal = (0x0100, 0x0pending signal是SIGKILL
查看他的栈,处于ptrace_stop的状态中,因其tombstone需要debuggerd dump该进程堆栈
在debuggerd接管某task的时候,所有信号都会被ptrace截获,所以当给该task发送SIGKILL的时候,不会被该task处理。
去掉debuggerd进行复测,故障不复现。
机器配置:512ram+7x27a+android4.1
0 0
- 低内存引起的死机和冻机的分析
- 引起电脑死机的原因
- 空指针 引起的死机
- 引起Windows死机故障的硬件和软件原因
- 说说引起电脑死机的部分原因和解决方法
- 由显示器问题引起的死机
- 软件原因引起的死机解决办法
- CPU引起的不定时死机问题
- 程序开发可能引起的死机情况
- 中国BLOG的寒冻
- 一个'\0'产生野指针而引起的死机问题
- 【高手分享:解决内网不正常引起的死机问题】
- 电源不稳定引起的显卡花屏死机
- 内存泄漏检测工具和Handler引起的内存泄漏问题
- 一次共享内存引起的线上事故分析
- Activity内部Handler引起内存泄露的原因分析
- Activity内部Handler引起内存泄露的原因分析
- Activity内部Handler引起内存泄露的原因分析
- LogBack 日志存放位置:默认会放到“启动进程”的目录下面
- 《程序员的自我修养--链接、装载与库》
- java 删除文件夹中的所有内容而不删除文件夹本身
- Eclipse 快捷键整理
- Linux下make命令
- 低内存引起的死机和冻机的分析
- PHP数字补零的两种方法
- 深入hibernate的三种状态
- 记录HTML+CSS+JS学习之路①
- C++ 的 try/catch/throw
- 想象5年后的你------原文
- KMP算法 -java版
- PHP格式化显示文件大小函数
- 容器的随记、、便于自己复习。