linux僵尸进程怎么查看,清除僵尸进程操作是什么
Admin 2022-08-18 群英技术资讯 790 次浏览
今天小编跟大家讲解下有关“linux僵尸进程怎么查看,清除僵尸进程操作是什么”的内容 ,相信小伙伴们对这个话题应该有所关注吧,小编也收集到了相关资料,希望小伙伴们看了有所帮助。linux僵尸进程是一个已经终止但是其父进程尚未对其进行善后处理获取终止进程的有关信息的进程;僵尸进程是当子进程比父进程先结束,而父进程又没有回收子进程,释放子进程占用的资源,此时子进程将成为一个僵尸进程。

本教程操作环境:linux7.3系统、Dell G3电脑。
僵尸进程是指一个已经终止、但是其父进程尚未对其进行善后处理获取终止进程的有关信息的进程
僵尸进程是当子进程比父进程先结束,而父进程又没有回收子进程,释放子进程占用的资源,此时子进程将成为一个僵尸进程。如果父进程先退出 ,子进程被init接管,子进程退出后init会回收其占用的相关资源
我们都知道进程的工作原理。我们启动一个程序,开始我们的任务,然后等任务结束了,我们就停止这个进程。 进程停止后, 该进程就会从进程表中移除。
你可以通过 System-Monitor 查看当前进程。
In UNIX System terminology, a process that has terminated,but whose parent has not yet waited for it, is called a zombie. 在UNIX 系统中,一个进程结束了,但是他的父进程没有等待(调用wait / waitpid)他, 那么他将变成一个僵尸进程。 但是如果该进程的父进程已经先结束了,那么该进程就不会变成僵尸进程, 因为每个进程结束的时候,系统都会扫描当前系统中所运行的所有进程, 看有没有哪个进程是刚刚结束的这个进程的子进程,如果是的话,就由Init 来接管他,成为他的父进程
扩展知识
怎么查看僵尸进程
利用命令ps,可以看到有父进程ID为1的进程是孤儿进程;s(state)状态为Z的是僵尸进程。
注意:孤儿进程(orphan process)是尚未终止但已停止(相当于前台挂起)的进程,但其父进程已经终止,由init收养;而僵尸进程则是已终止的进程,其父进程不一定终止。
怎样来清除僵尸进程
改写父进程,在子进程死后要为它收尸。具体做法是接管SIGCHLD信号。子进程死后, 会发送SIGCHLD信号给父进程,父进程收到此信号后,执行 waitpid()函数为子进程收尸。这是基于这样的原理:就算父进程没有调用wait,内核也会向它发送SIGCHLD消息,尽管对的默认处理是忽略, 如果想响应这个消息,可以设置一个处理函数。
把父进程杀掉。父进程死后,僵尸进程成为"孤儿进程",过继给1号进程init,init始终会负责清理僵尸进程,关机或重启后所有僵尸进程都会消失。
例如,如果 PID 5878 是一个僵尸进程,它的父进程是 PID 4809,那么要杀死僵尸进程 (5878),您可以结束父进程 (4809):
$ sudo kill -9 4809 #4809 is the parent, not the zombie
杀死父进程时要非常小心,如果一个进程的父进程就是 PID 1 ,并且你还杀死了它,那么系统将直接重启!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
在linux中,管道符是“|”,主要用于将两个或者多个命令连接到一起,把一个命令的输出作为下一个命令的输入;语法“command1 | command2 [ | commandN... ]”,“|”符左边命令的输出会作为“|”符右边命令的输入。管道符是可以连续使用的,第一个命令的输出会作为第二个命令的输入,第二个命令的输出又会作为第三个命令的输入,依此类推。
这篇文章主要给大家介绍nslookup的内容,对于nslookup命令的使用,可以使用nslookup www.baidu.com来查询域名ip地址,而nslookup -qt=ns www.baidu.com可以查询域名使用的DNS服务器。接下来我们一起看具体的使用。
Linux 上有多个查看服务器/系统运行时间的命令,大多数用户喜欢使用标准并且很有名的 uptime 命令获取这些具体的信息。
Linux系统中dpkg-query命令的使用你了解过吗?现在就让小编给你们讲解下这方面的内容,下列文章详细记录了它的参数介绍和使用方法,朋友们可以随时来阅读下。
新手朋友们在不了解Linux命令的情况下,很容易在移动或者重命名文件时将 mv 写为 rm,这样就会造成文件被删。那Linux rm命令误删文件需要怎么复原?下面请看小编整理的资料。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008