僵尸进程介绍
僵尸进程是当子进程比父进程先结束,而父进程又没有回收子进程,释放子进程占用的资源,此时子进程将成为一个僵尸进程。如果父进程先退出 ,子进程被init接管,子进程退出后init会回收其占用的相关资源
kill -9发送SIGKILL信号将其终止,但是以下两种情况不起作用:
a、该进程处于"Zombie"状态(使用ps命令返回defunct的进程)。此时进程已经释放所有资源,但还未得到其父进程的确认。“Zombie"进程要等到下次重启时才会消失,但它的存在不会影响系统性能。
b、 该进程处于"kernel mode”(核心态)且在等待不可获得的资源。处于核心态的进程忽略所有信号处理,因此对于这些一直处于核心态的进程只能通过重启系统实现。进程在AIX 中会处于两种状态,即用户态和核心态。只有处于用户态的进程才可以用“kill”命令将其终止
查看方法
查看僵尸进程,利用命令ps,可以看到有标记为Z的进程就是僵尸进程。
#ps auwx 发现僵尸进程
用ps 命令和 grep命令寻找僵尸进程:
#ps -A -ostat,ppid,pid,cmd | grep -e ‘1’
或者
top>> task (line)>> zombie
或者
all w/ tty,including other users 所有窗口和终端,包括其他用户的进程
u