僵尸进程的形成

文章讨论了在多进程编程中,父进程如何正确处理子进程的退出状态,以防止子进程变为僵尸态,占用内核资源。当子进程结束,内核会保留其进程表项以便父进程查询,但若父进程未使用wait函数回收,子进程将保持僵尸状态。因此,调用wait函数是必要的,以确保资源的有效释放。

对于多进程程序而言,父进程一般需要跟踪子进程的退出状态。因此,当子进程结束

运行时,内核不会立即释放该进程的进程表表项,以满足父进程后续对该子进程退出信息的

查询 (如果父进程还在运行)。在子进程结束运行之后,父进程读取其退出状态之前,我们

称该子进程处于僵尸态,另外一种使子进程进人僵尸状态是:父进程结束或者异常终止,而

子进程继续运行。

由此可见,无论哪种情况,如果父进程没有正确地处理子进程的返冋信息,子进程都将停

留在僵尸态,并占据若内核资源.这是绝对不能容许的,毕竞内核资源有限,所以我们需要

做的就是在父进程中调用 wait 函数等待查询子进程的信息,回收子进程.

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值