-
僵尸进程定义? 查看僵尸进程,利用命令ps,可以看到有标记为Z(zombie)的进程就是僵尸进程。
-
僵尸进程的危害? 僵尸进程会占用系统资源,如果很多,则会严重影响服务器的性能;
-
僵尸进程产生的原因?
- 子进程结束后向父进程发出SIGCHLD信号,父进程默认忽略了它
- 父进程没有调用wait()或waitpid()函数来等待子进程的结束
- 网络原因有时会引起僵尸进程;
-
如何杀死僵尸进程? 僵尸进程用kill命令是无法杀掉的,但是我们可以结果掉僵尸进程的爸爸,僵尸daddy挂了之后,僵尸进程就成了孤儿进程,孤儿进程不会占用系统资源,会被init程序收养,然后init程序将其回收。
ps -A -o stat,ppid,pid,cmd |grep -e "^[Zz]" //先查看具体进程:kill -9 pid号 //杀死z进程(这些动作是比较危险的,希望在真正的服务器上面慎用!!!)复制代码
1.查看所有R相关的进程2.查看僵尸进程的父进程3.杀死僵尸进程对应的副进程4.僵尸进程被回收复制代码
参考:
- https://blog.csdn.net/zjwson/article/details/53321431
- https://www.cnblogs.com/sbaicl/archive/2012/09/16/2687201.html
- https://michaelyou.github.io/2015/03/12/孤儿进程与僵尸进程/
- https://baike.baidu.com/item/僵尸进程/1036577