僵死进程基础

本文详细阐述了僵死进程和孤儿进程的概念及其影响。僵死进程是子进程结束后,父进程未回收其资源的状态,消耗内存。孤儿进程则指父进程先结束,子进程被init接管,确保资源释放。同时,介绍了退出码范围及获取进程ID的函数。了解这些概念有助于优化系统资源使用。
摘要由CSDN通过智能技术生成

僵死进程:子进程先于父进程结束,父进程没有获取子进程的退出码,此时子进程变成僵死进程(子进程的PCB没有被删除,只有子进程的实体被删除,子进程没有完全消失)。
僵死进程会消耗内存空间,消耗软件层面的资源。


孤儿进程:父进程先于子进程结束,子进程变成孤儿进程。孤儿进程会被系统分配·一个父进程(继父),由父进程(继父)获取子进程的退出码,子进程消失。//被init进程(ID号为1的进程)接管,用wait获取子进程退出码。获取退出码调用wait时,要加头文件#include<sys/wait.h>

退出码范围:(-128~127)-1,0~127之间。退出码在一个字节范围内。

获取ID:
getpid()获取自己(子进程)的id,getppid()获取父进程的id。

ps:
当父进程结束时,提示符会自动弹出,而子进程尚未结束,会继续打印,子进程和提示符互不干扰。



 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值