好记性不如烂笔头 记录一次defunct进程的由来及处理:

僵尸进程是一个早已 死亡的进程,但在进程表(processs table)中仍占了一个位置(slot)。

由于进程表的容量是有限的,所以,defunct进程不仅占用系统的内存资源,影响系统的性能,而且如果其数 目太多,还会导致系统瘫痪。

我们知道,每个Unix进程在进程表里都有一个进入点(entry),核心程序执行该进程时使用到的一切信息都存储在进入点。

当用ps命令察看系统中的进程信息时,看到的就是进程表中的相关数据。当以fork()系统调用建立一个新的进程后,核心进程就会在进程表中给这个新进程分配一个进入点,然后将相关信息存储在该进入点所对应的进程表内。这些信息中有一项是其父进程的识别码。

当这个进程走完了自己的生命周期后,它会执行exit()系统调用,此时原来进 程表中的数据会被该进程的退出码(exit code)、执行时所用的CPU时间等数据所取代,这些数据会一直保留到系统将它传递给它的父进程为止。

由此可见,defunct进程的出现时间是在子进 程终止后,但是父进程尚未读取这些数据之前。defunct进程是不能直接kill -9杀掉的,否则就不叫僵尸进程了。

知道了defunct进程产生的原因,就可以轻易的kill掉defunct进程。

方法有二:1,重启服务器电脑,这个是最简单,最易用的方法,但是如果你服务器电脑上运行有其他的程序,那么这个方法,代价很大。所以,尽量使用下面一种方法。2,找到该defunct僵尸进程的父进程,将该进程的父进程杀掉,则此defunct进程将自动消失。

defunct进程的由来及处理相关推荐

  1. linux下僵尸进程(Defunct进程)的产生与避免

    在测试基于 DirectFB+Gstreamer 的视频联播系统的一个 Demo 的时候,其中大量使用 system 调用的语句,例如在 menu 代码中的 system("./play&q ...

  2. Linux下QProcess不产生finished信号、waitforfinished阻塞超时【defunct进程】

    文章目录 项目场景: 问题描述以及分析过程: defunct(僵尸进程): QProcess的实现: 理论原因: 尝试修改一: 第一次痛定思痛: 尝试修改二: 第二次修改能满足要求: 使用startd ...

  3. Linux中的defunct进程(僵尸进程)

    一.什么是defunct进程(僵尸进程)? 在 Linux 系统中,一个进程结束了,但是他的父进程没有等待(调用wait / waitpid)他,那么他将变成一个僵尸进程.当用ps命令观察进程的执行状 ...

  4. 【linux】僵尸进程(Defunct进程)的产生与避免

    一.什么是僵尸进程 在UNIX 系统中,一个进程结束了,但是他的父进程没有等待(调用wait / waitpid)他,那么他将变成一个僵尸进程.当用ps命令观察进程的执行状态时,看到这些进程的状态栏为 ...

  5. 如何杀掉defunct进程

    在Unix系统管理中,当用ps命令观察进程的执行状态时,经常看到某些进程的状态栏为defunct,这就是所谓的"僵尸"进程."僵尸"进程是一个早已死亡的进程,但 ...

  6. Kill杀死Linux中的defunct进程(僵尸进程)

    一.什么是defunct进程(僵尸进程)? 在 Linux 系统中,一个进程结束了,但是他的父进程没有等待(调用wait / waitpid)他,那么他将变成一个僵尸进程.当用ps命令观察进程的执行状 ...

  7. linux defunct 进程,Defunct进程(死进程)

    Defunct进程(死进程) IBM网站有关Defunct进程(死进程)的问题确定 内容提要: 本文介绍了为什么会产生defunct进程,如何确定引起defunct进程的原因,以及当需要进一步确定问题 ...

  8. oracle下defunct,AIX僵死(defunct)进程故障分析(Aix)

    故障描述: S80主机系统出现了大量的僵死(defunct)进程,由于这些进程不能自动终止,导致系统的进程数资源不能释放,因此,如果继续增多,到达系统设定的进程总数,用户的应用和生产将受到影响. 故障 ...

  9. java defunct怎么杀掉_杀死Linux中的defunct进程(僵尸进程)的方法指南

    一.什么是defunct进程(僵尸进程)在 Linux 系统中,一个进程结束了,但是他的父进程没有等待(调用wait / waitpid)他,那么他将变成一个僵尸进程.当用ps命令观察进程的执行状态时 ...

最新文章

  1. 一文览尽LiDAR点云目标检测方法
  2. 【SRM 716 DIV 1 A】 ConstructLCS
  3. Oracle 双机热备 镜像 纯软 实战 配置教程 配置手册
  4. 北京内推 | ​阿里达摩院智能计算实验室认知智能组招收多模态算法实习生
  5. boost::hana::is_valid用法的测试程序
  6. kubectl 安装
  7. 前端开发知识点解答-CSS-面试
  8. 信安教程第二版-第18章网络安全测评技术与标准
  9. Hashtable几种常用的遍历方法
  10. numpy mean
  11. 特征向量的归一化方法
  12. git远程仓库IP变更,修改本地git地址
  13. Struts原理与实践(7)[转]
  14. jedisPool相关参数说明
  15. vue打测试包和正式包的配置
  16. PHP中关于时间(戳)、时区、本地时间、UTC时间等梳理
  17. win10 安装“msi”文件提示 “Windows Installer无法打开此安装程序包。请确认该程序包存在,并且你有权访问它,或者与应用程序供应商联” error 2502 2503
  18. 中国首台千万亿次超级计算机,中国首台千万亿次超级计算机完成安装
  19. 自动驾驶中结构化BEV交通场景的理解(ICCV 2021)
  20. 《The Annotated Transformer》翻译——注释和代码实现《Attention Is All You Need》

热门文章

  1. android手机闹铃
  2. 2017最全的php面试题目及答案总结
  3. memcpy函数与memmove函数
  4. 2014年考研英语二真题
  5. cisco配置hsrp配置实例
  6. 洛谷 Markdown - 从入门到精通
  7. 腾讯云无法使用root登陆服务器
  8. 三角形的内切圆与外接圆面积之比【几何计算】
  9. 各种链接(下载Vscode/live server/font字体库)
  10. 【精品】河南网通如何进行宽带拨号链接及网络共享