孤儿进程:如果父进程退出而它的一个或多个子进程还在运行,那么这些子进程就被称为孤儿进程孤儿进程最终将被 init 进程所收养并由 init 进程完成对它们的状态收集工作。僵尸进程:一个进程使用 fork 创建子进程,如果子进程退出而父进程并没有调用 wait() 或者 waitpid() 获取子进程信息,那么子进程的描述符仍然保存在系统中。这种进程就被称为僵尸进程 。危害:占用资源不放,正常进程可能无法进行创建。 我们要解决僵尸进程就只能找到那个产生大量僵死进程的父进程,只有杀死掉那个父进程 (通过 kill 发送 SIGTERM 或 SIGKILL) 杀死掉那个父进程之后,那些僵死进程就成了孤儿进程,孤儿进程会被 init 进程接管,init 会 wait 掉这些孤儿进程并且释放它们在系统中占用的资源这些僵死的孤儿进程就会死去。