爹生孩子
爹先死,孩子還活着,孩子叫孤兒進程
孤兒進程會被init進程領養,init進程變爲孤兒進程的父親
爲了釋放子進程佔用的資源:
進程結束之後,子進程能夠自行釋放虛擬地址空間中的用戶區空間
但是釋放不了pcb,必須由父進程釋放
2.殭屍進程
孩子死了,爹還活着,爹不去釋放孩子的pcb,孩子就變成了殭屍進程。默認情況下,對於fork出來的子進程,該子進程死掉以後,父進程是不會釋放子進程的pcb的。
殭屍進程是一個已經死掉的進程,所以用命令kill -9 PID是無效的,必須釋放殭屍進程的pcb。