僵尸进程
僵尸进程就是在父进程运行的情况下,子进程先行退出,并且父进程没有关注到子进程的退出信息,导致子进程的退出信息一直被操作系统所保留,导致占用资源,造成资源泄漏。
示例:
程序一直运行:
这是我们去看进程的情况:
看到pid是5666的进程变成了僵尸态。
kill僵尸进程发现无法杀死。
我们要结束掉父进程才可以杀掉僵尸进程。所以他对资源的占领是很可怕的。
孤儿进程
父进程先于子进程退出,此时子进程变成孤儿进程,在后台运行,父进程变为1号进程。
示例:
发现程序马上就结束了:
此时查看进程:
发现pid为6333的子进程还在后台运行,S态。
我们去看进程的详细信息:
子进程pid为6333的进程父进程变成了1。
孤儿进程可以被结束。