僵尸进程和孤儿进程

1 僵尸进程(zombie process)

  1. 是什么:已经被内核释放其占有的所有资源(包括占用的内存,打开的文件等),但是仍然保留了一定信息(PID;termination status;resource usage information)的进程。
  2. 怎么产生:一个进程在结束自己生命的时候都会短暂地进入僵尸进程的状态,正常的情况是,它的父进程会调用wait或waitpid等待子进程结束,当子进程结束时,系统会发送SIGCHLD信号唤醒阻塞在wait或waitpid上的父进程,进而回收这个子进程保留的信息,把子进程彻底销毁。但如果出现父进程对子进程的结束不作反应的话,子进程就会一直保持僵尸进程的状态。
  3. 危害:僵尸进程会一直占用进程号,但是系统能使用的进程号有限,如果产生大量的僵尸进程,系统将因为没有可用的进程号而不产生新的进程。

2 孤儿进程

  1. 是什么:一个父进程退出,而它的一个或多个子进程还在运行,那么这些子进程将成为孤儿进程。
  2. 怎么产生:父进程由于内在逻辑需要自己结束或者父进程被人为kill时,它的子进程就成了孤儿进程。在linux系统中,孤儿进程将被init进程(进程号为1)所收养,并由init进程对它们完成状态收集工作。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值