【发布时间】:2021-08-29 10:30:24
【问题描述】:
我读到当进程是僵尸并被等待时,PID 重用已完成。
如果我分叉了数百个进程并直接杀死了父进程而不等待它们会发生什么?我知道他们将是 init 进程的孩子,但谁会打电话给他们? (否则我们会遇到麻烦并受限于 PID)。
【问题讨论】:
标签: linux process linux-kernel pid
我读到当进程是僵尸并被等待时,PID 重用已完成。
如果我分叉了数百个进程并直接杀死了父进程而不等待它们会发生什么?我知道他们将是 init 进程的孩子,但谁会打电话给他们? (否则我们会遇到麻烦并受限于 PID)。
【问题讨论】:
标签: linux process linux-kernel pid
我知道它们将是 init 进程的子进程,但谁会调用等待它们?
init(PID 为 1 的进程)将获取其所有子进程,包括被采用的僵尸进程。正如https://en.wikipedia.org/wiki/Zombie_process上所说的那样
init 周期性地执行等待系统调用来收割任何僵尸 以 init 作为父级。
【讨论】: