在Linux中,如果子进程运行时,父进程因为某些原因先行终止,就称该子进程为孤儿进程

我们编写如下代码:

子进程一直在运行,父进程运行一段时间后自动终止。运行该程序观察现象:

最开始时,子进程与父进程同时运行,过一段时间后,父进程终止,子进程继续:

可以发现,父进程直接消失了。并且子进程的 PPID 变为了 1 。

 从而我们可以得出结论,父进程在退出后,OS会让 1 号进程成为子进程的新父进程,这个被领养的子进程就是孤儿进程。如果OS不领养孤儿进程,那么该孤儿进程就永远都无法回收,其PCB永远被维护,占据内存空间。

同时,我们观察到孤儿进程的状态从 S+ 变为了 S ,即从前台运行转为了后台运行,此时我们使用 ctrl + c 已经无法终止它了,需要使用指令 killall [进程名称] 或者 kill -9 [PID] 来终止该进程。

【Linux】孤儿进程相关推荐

  1. linux孤儿进程组深入理解,unix基础---有关于孤儿进程组和终端会话的理解-------值得一看!!!...

    转载自http://xingyunbaijunwei.blog.163.com/blog/static/765380672011112633634628/ 孤儿进程: 即一个其父进程已经终止的进程.  ...

  2. Linux——孤儿进程|进程的优先级 用top命令去修改优先级 其他概念 环境变量 PATH 获取环境变量

    目录 孤儿进程 进程的优先级 用top命令去修改优先级 其他概念 环境变量 PATH 获取环境变量 习题 孤儿进程 父进程如果提前退出,那么子进程后退出,进入Z之后,那该如何处理呢? 父进程先退出,子 ...

  3. linux孤儿进程组深入理解,LInux下僵尸进程与孤儿进程是如何产生的?

    1:如何产生: 僵尸进程,先于父进程终止,但是父进程没有对其进行善后处理(获取终止子进程有关信息,释放它仍占有的资源).消灭僵尸进程的唯一方法是终止其父进程. 孤儿进程:该进程的父进程先于自身终止.其 ...

  4. Linux / 僵尸进程、孤儿进程 产生原因、有什么危害、如何预防(解决方案)

    @time 2019-07-12 @author Ruo_Xiao 一.产生原因 1.僵尸进程 子进程退出,父进程运行,父进程没有调用 wait 或者 waitpid 函数,那么子进程就处于僵尸状态( ...

  5. 【Linux系统编程】特殊进程之孤儿进程

    00. 目录 文章目录 00. 目录 01. 孤儿进程概述 02. 孤儿进程代码 03. 附录 01. 孤儿进程概述 父进程运行结束,但子进程还在运行的子进程就称为孤儿进程(Orphan Proces ...

  6. Linux 进程(一) 进程概念和进程状态(僵尸进程、孤儿进程、守护进程)

    进程的概念 进程状态 僵尸进程.孤儿进程.守护进程 进程的概念 程序:一系列有序的指令集合(就是我们写的代码) 进程:进程就是程序的一次执行,是系统进行资源分配和调度的独立单位. 程序是一个没有生命的 ...

  7. linux c之孤儿进程与僵尸进程[总结]

    转载地址:http://www.cnblogs.com/Anker/p/3271773.html 1.前言 之前在看<unix环境高级编程>第八章进程时候,提到孤儿进程和僵尸进程,一直对这 ...

  8. Linux系统编程--3(exec 函数族,僵尸进程和孤儿进程,wait和wait_pid回收子进程)

    exec 函数族 fork 创建子进程后执行的是和父进程相同的程序(但有可能执行不同的代码分支) ,子进程往往要调用一种 exec 函数以执行另一个程序.当进程调用一种 exec 函数时,该进程的用户 ...

  9. Linux系统编程(二)孤儿进程和僵尸进程

    Linux系统编程(二) 一.exec函数族 1.exec函数 二.孤儿进程和僵尸进程 三.wait和waitpid 1.wait函数 2.waitpid函数 一.exec函数族 exec函数使用时, ...

  10. Linux | 进程概念、进程状态(僵尸进程、孤儿进程、守护进程)、进程地址空间

    文章目录 进程和程序 操作系统如何控制和调度程序 进程控制块–PCB 子进程 进程状态 僵尸进程 孤儿进程 守护进程(精灵进程) 进程地址空间 引言 页表 进程和程序 程序: 一系列有序的指令集合(就 ...

最新文章

  1. 一不小心,删错了,还把回收站清空了,咋办啊?
  2. GUI_DOWNLOAD加列名行
  3. java自定义返回码_java – 自定义HTTP状态代码
  4. python绘制直角坐标系_小白学 Python 数据分析(16):Matplotlib(一)坐标系
  5. 怎么将数据进行正太转化_想要将电脑音频进行录制怎么操作
  6. 如何基于Spark进行用户画像?
  7. 10款优秀的跨平台免费生产力软件[转]
  8. 不同网段通过静态路由实现互通,华为S5700交换机开启SSH远程指定IP登陆配置(强烈推荐)
  9. Windows Server 2008 R2/2012 网络负载平衡NLB相关内容
  10. 探探自动右滑_利用AccessibilityService实现探探自动右划
  11. 贺利坚老师汇编课程54笔记:PF奇偶标志PARITY FLAG
  12. 智慧校园云端管理系统的设计和实现(附源码及数据库)
  13. re 中 报错 no such group
  14. 大数据——DBT:数据治理、血缘关系DBT的安装及测试(基础使用篇)
  15. Ubuntu Navicat 英文显示乱码解决方案
  16. Linux面试题总结
  17. 常见的物联网卡套餐分类
  18. 计算机毕业设计Java后勤管理系统(源码+系统+mysql数据库+lw文档)
  19. 「Java基础」范型
  20. 【详解Vue中请求拦截器】

热门文章

  1. npm install 无响应解决方案
  2. 使用ajax async,Ajax请求async有哪些方式?应该如何使用
  3. android蓝牙4.0 BLE低功耗应用
  4. LSI 磁盘阵列管理软件santricity 的几个功能
  5. 图解:数据结构中的6种「树」,你心中有数吗?
  6. modle bulinder 实践1.Excel坐标转面
  7. error:failed to push some refs to ‘ssh://git.....‘
  8. 使用SDK快速接入各大平台快游戏 微信小游戏 QQ小游戏使用方法-附源码下载地址
  9. 菜品识别系统(Faster-RCNN目标检测算法)
  10. 直播--如何搭建rtmp推流服务器