僵尸进程(Zombie Process)是指子进程已经结束,但其父进程没有调用 wait()
或 waitpid()
系统调用来回收子进程的资源,导致子进程的进程描述符仍然保留在系统中。
wait()
或 waitpid()
,僵尸进程将一直存在。init
进程(进程号为1)来回收这些僵尸进程的资源,从而使它们消失。ps -A -o stat,ppid,pid,cmd | grep -e '[Zz]'
命令来查找系统中的僵尸进程。kill -9 <parent_pid>
来杀死父进程。SIGCHLD
信号给父进程,强制其调用 wait()
或 waitpid()
来清理僵尸进程。虽然僵尸进程本身不会对系统造成直接伤害,但它们的积累可能会导致系统资源耗尽,影响系统性能。因此,及时识别和处理僵尸进程是维护系统稳定性的重要措施。