所谓假死,就是能ping通,但是ssh不上去;任何其他操作也都没反应,包括上面部署的apache也打不开页面。

作为一个多任务操作系统,要把系统忙死,忙到ssh都连不上去,也不是那么容易的。尤其是现在还有fd保护、进程数保护、最大内存保护之类的机制。你可以fork很多进程,系统会变得很慢,但是ssh还是能连上去;你可以分配很多内存,但是内存多到一定程度oom killer就会把你的进程杀掉,于是ssh又能工作了。

有一个确定可以把系统搞成假死的办法是:主进程分配500MB内存,然后不停的fork,并且在子进程里面sleep(100)。

这是什么原理?这是swap、copy on write、allocate on write、oom killer一起作用的结果。当主进程不停fork的时候,很快会把系统的物理内存用完,然后开始swap;在swap的时候触发了fork的copy on write属性;此时会需要分配真正的内存给之前copy on write的子进程,由于内存不足,这将触发oom killer开始杀进程;当oom killer杀掉了子进程,主进程立刻又fork了新的子进程,并再次导致内存用完,再次触发oom killer;于是死循环,而且oom killer是系统底层优先级很高的内核线程,也在参与死循环。

此时机器可以ping通,但是无法ssh上去。这是由于ping是在系统底层处理的,没有参与进程调度;sshd要参与进程调度,但是优先级没oom killer高,总得不到调度。

为什么要费那么大的力气把机器搞死?因为所有人都会遇到机器假死的情况。知道假死是怎么产生的,就可以针对假死的原因进行预防。

其实建议使用nice将sshd的进程优先级调高。这样当系统内存吃紧,还能勉强登陆sshd,进入调试。然后分析故障。

linux进程假死的原因_linux 假死分析相关推荐

  1. linux进程假死的原因_Linux系统死机的原因及解决办法

    系统出现死机,一般分为两种情况:一是硬件问题;二是软件问题. 一.硬件问题 可以考虑分析以下几点: 1.不要超频CPU,如果已经超频的先回复到原来的频率 虽然平时运行没有问题,但可能在高负载的使用中就 ...

  2. linux 进程 崩溃被杀 原因查找

    目录 到底是什么信号 OOM 谁发的信号 systemtap audit 案例与总结 一个进程的异常终止,通常有两种情况,一种是crash,另一种是被kill掉了. crash是指程序出现了自己无法解 ...

  3. linux进程--死锁产生的原因及四个必要条件(六)

    产生死锁的原因主要是: 因为系统资源不足. 进程运行推进的顺序不合适. 资源分配不当等. 如果系统资源充足,进程的资源请求都能够得到满足,死锁出现的可能性就很低,否则就会因争夺有限的资源而陷入死锁.其 ...

  4. 关于vs2008设计视图假死的原因及解决方案总结

    前些天从微软官网(中国)下载了vs2008的90天试用版,安装很顺利.但使用时发现,从源视图向设计视图切换时,界面出现了假死现象,重装后亦无效.我从网上搜索原因,发现很多朋友都有类似的问题,但解决方案 ...

  5. 计算机开机后无法网络拨号怎样处理,拨号上网时电脑假死的原因和解决方法

    用拨号上网时,有时候遇到电脑假死, 就是刚装了宽带的时候,电脑一开机出现拨号连接的时候电脑就死机, 其实电脑没有死机, 就是假死,要过上几分钟电脑自动好.没什么大问题,只是对于电脑初学者来说难免有一些 ...

  6. win7下计算机假死,win7系统电脑假死机怎么办

    我们在使用电脑的过程中,经常会遇到运行某个程序时,计算机无法及时响应,导致操作系统假死的情况. 电脑假死的现象是令人最厌烦的一种情况,当我们操作电脑的速度稍微快一点或者是多打开几个网页,运行了某个比较 ...

  7. Linux进程的创建和父子进程同步,操作系统实验报告_Linux进程创建与通信.doc

    操作系统实验报告_Linux进程创建与通信 2011-2012学年第一学期 专 业: 班 级: 学 号: 姓 名:提交日期:2011年11月实验二 Linux进程创建与进程通信 [实验目的 1. 熟悉 ...

  8. PCBA加工虚焊和假焊的原因及解决方法

    PCBA加工虚焊和假焊的原因及解决方法 PCBA加工虚焊和假焊会严重影响产品的使用品质,一是对产品使用造成影响,第二是影响客户对公司的评价,造成不会下单生产,第三是影响公司的形象,第四可能会造成额外的 ...

  9. Linux常见死机原因

    Linux常见死机原因 在排除了硬件故障/firmware版本/BIOS等等问题之外, Linux死机通常可能碰到如下几种情况 1, 如果你的Linux死机的时候控制台上有乱七八糟的字符.恭喜你,这种 ...

  10. 如何查找 Linux 死机原因?

    如何查找 Linux 死机原因? Linux 内核虽然号称"不死族",几乎不会崩溃或者死机,但是特殊情况下,还是有一定几率会宕机的.转载自 deleak.com 因为 Linux ...

最新文章

  1. 全球资金看好中国的AI(人工智能)
  2. 震惊,竟然有人用Taro来。。。
  3. 李宏毅机器学习作业1:预测PM2.5(含训练数据)
  4. android 活动销毁不了,即使活动已经销毁,AsyncTask也不会停止
  5. Xcode 升级后,常常遇到的遇到的警告、错误,解决方法(转)
  6. 登陆后保持环境变量导出
  7. stringutils 用哪个包 apache spring_spring整合mq、jsonp跨越、httpclient工具的使用
  8. 计组之存储系统:8、Cache写策略(全写法、写回法、写分配法、非写分配法、多级Cache)
  9. vShield App设计指南[上]
  10. 解决win7和ubuntu双系统ubuntu不能上网的问题
  11. DenseNet细节
  12. oracle crm客户关系管理资料下载_悟空CRM:使用CRM系统进行客户关系管理的要点...
  13. android连mysql注册界面代码_Android实现注册登录界面的实例代码
  14. 热烈祝贺排名进入前1000
  15. OpenCV3.4.1 vs2015 自定义过程的图片拼接
  16. php varbinary,php – 无法从MSSQL中获取varbinary数据
  17. 服务器搬迁方案_服务器搬迁方案规定搬迁之前也需要大扫除
  18. 夜神模拟器--安卓模拟神器
  19. TikTok二面:“聊聊二维码扫码登录的原理”
  20. 什么是生物质发电?生物质发电有哪些方法?

热门文章

  1. ROS突然所有的工作空间都无法启动launch,但roscore可以用
  2. 什么是像素格式(色彩采样、色度抽样)RGB 4:4:4、(Limit)RGB 4:4:4、Ycbcr 4:4:4、Ycbcr 4:2:2、Ycbcr 4:2:0又是什么?
  3. 用二分法求下面方程在(-10,10)的根:2x3-4x2+3x-6=0
  4. 数据安全治理方法导论
  5. css3-文字添加边框
  6. Sql取出各科分数前三名的学生,Sql各科成绩前三的学生
  7. 中山大学非全日制计算机考研,中山大学社会工作非全日制考研经验贴
  8. 【清橙A1339】JZPLCM(顾昱洲) (树状数组)
  9. http://www.qiantu.org/index.php?p=403#comments
  10. 经验分享:RuntimeException: Unable to instantiate service com.***.push.getui.GetuiPushIntentService