僵尸进程与孤儿进程(了解)
僵尸进程(有害):
僵尸进程的含义是在子进程死亡后的一个过程。僵尸进程本意是为了让父进程可以在任意时刻去查看子进程的状态信息,因此在子进程死亡后不会直接清除他的所有数据,会保留他的部分数据以及端口号。
但是这也导致了若是父进程是一个不断循环的进程的时候,端口被占用的情况会越来越多,这也导致我们可以使用的端口会变的越来越少。那么我们应该如何解决这个问题。
1.父进程死亡的时候,系统会让init接管这些子进程,并杀死这些僵尸进程,因此我们可以使用把父进程结束的方式去解决这个问题
2.父进程调用wait/waitpid方法解决,在python中我们可以调用join方法,join方法会调用wait方法
孤儿进程(无害):
孤儿进程的含义是在子进程还未结束的时候,父进程优先子进程结束的情况。因为父进程死亡的情况下,子进程会由init接管,因此孤儿进程是无害的