wait/waitpid
僵尸进程:子进程退出,父进程没有回收子进程资源(PCB),则子进程变成僵尸进程
孤儿进程:父进程先于子进程结束,则子进程成为孤儿进程,子进程的父进程成为 1 号进程inir,
称为init进程领养孤儿进程
子进程结束的时候,释放了用户态的3G空间,1 G的内核态空间还没有释放,子进程的PCB资源还在内核态等待父进程回收,
此时子进程变为僵尸进程 Z+,不能再次被调度和执行。
wait 是一个阻塞函数,等待回收子进程资源,如果没有子进程,wait 返回 -1 。
wait 向父进程提供子进程退出的状态
一个wait 只能回收一个子进程 ,如,4 个进程 需要 4 个wait
waitpid