Linux 中模拟实现僵尸进程和孤儿进程

1. 僵死状态(Zombies)是一个比较特殊的状态。当进程退出并且父进程没有读取到子进程的返回代码时就会产生僵尸进程。僵尸进程会,以终止状态保持在进程表中,并且会一直等待父进程读取退出状态码。所以只要子进程退出,父进程还在运行,但父进程没有读取子进程状态,子进程进入Z状态。
来段代码演示一下:

Linux 中模拟实现僵尸进程和孤儿进程
此时运行起来就会产生一个僵尸进程
僵尸进程的危害:
如果一个父进程创建了很多子进程,就是不回收,就会造成内存泄露的问题。
2 .孤儿进程,顾名思义,父进程如果提前退出,子进程就被称之为“孤儿进程”,此时孤儿进程就会被1号进程领养。
来段代码看一下:
Linux 中模拟实现僵尸进程和孤儿进程
此时就创建了一个10s的孤儿进程。