Linux下父进程子进程先后终止的不同处理
父进程先终止:
Linux系统保证每个进程都有一个父进程,若父进程比子进程先终止,则该父进程的所有子进程的父进程都变为init进程。其执行顺序大致如下:在一个进程终止时,内核逐个检查所有活动进程,以判断它是否是正要终止的进程的子进程,如果是,则该进程的父进程ID就更改为1(init进程的ID);
以下图所示的程序为例:
子进程先终止:
内核为每个终止子进程保存了一定量的信息,所以当终止进程的父进程调用wait或waitpid时,可以得到有关信息。这种信息至少包括该进程的ID、终止状态等信息。
一个已经终止、但是其父进程尚未对其进行善后处理(获取终止子进程的有关信息,释放它仍占有的资源)的进程被称为僵死进程。
有init领养的进程不会称为僵死进程,因为只要init的子进程终止,init就会调用一个wait函数取得其终止状态。这样也就防止了在系统中有很多僵死进程。
Linux下父进程子进程先后终止的不同处理相关推荐
- Linux下的进程概论与编程二(进程控制)
一.进程标识符 1.每个进程都有非负的整形表示唯一的进程ID. 几个典型进程的ID及其功能: 2.除了进程ID,每个进程还有一些其他的标识符. 下列函数返回这些标识符: #include <sy ...
- 进程 线程 多进程 多线程 父进程 子进程
1. 进程定义: 进程就是一个程序在一个数据集上的一次动态执行过程.进程一般由程序.数据集.进程控制块三部分组成.我们编写的程序用来描述进程要完成哪些功能以及如何完成:数据集则是程序在执行过程中所需要 ...
- linux下僵尸进程(<defunct>进程)的产生与避免
一.什么是僵尸进程 在UNIX 系统中,一个进程结束了,但是他的父进程没有等待(调用wait / waitpid)他,那么他将变成一个僵尸进程.当用ps命令观察进程的执行状态时,看到这些进程的状态栏为 ...
- 【Linux】从冯诺依曼体系到初识Linux下的进程
目录 前言 1.冯诺依曼体系结构 2.管理和操作系统 3.初识进程 1.描述进程PCB(process control block) 1.标识符pid fork接口创建子进程 2.进程状态 3.进程优 ...
- linux下查看进程的线程数,linux查看进程的线程数
top -H -p $PID #查看对应进程的那个线程占用CPU过高 1.top -H 手册中说:-H : Threads toggle 加上这个选项启动top,top一行显示一个线程.否则,它一行 ...
- linux孤儿进程组深入理解,LInux下僵尸进程与孤儿进程是如何产生的?
1:如何产生: 僵尸进程,先于父进程终止,但是父进程没有对其进行善后处理(获取终止子进程有关信息,释放它仍占有的资源).消灭僵尸进程的唯一方法是终止其父进程. 孤儿进程:该进程的父进程先于自身终止.其 ...
- Linux下,进程的相关知识,进程的消耗,常用信息,状态,静态查询命令ps,动态查询命令top
Linux下,进程的相关知识,进程的来源,去向,状态,静态查询命令ps 一.进程主要组成部分 0.没有执行的程序就是普通文本文件,将程序运行起来以后就是进程,进程又有以下组成部分 1.一个或多个文件 ...
- linux下杀死进程全权讲解
linux下杀死进程全权讲解 2009-10-27 08:57 佚名 linux 我要评论(0) 字号:T | T 本文将详细讲解linux杀死进程的多种命令,包含他们的作用,kill作用:根据进程号 ...
- linux ps指令查看进程,linux下查看进程指令-ps
在Linux下查看进程指令可以用ps(process status) 是unix/Linux下通用的进程状态查看工具 ps的常用选项 选项功能介绍 -a显示所有终端中的进程.注意只有与终端关联的进程才 ...
最新文章
- Python编程:Tkinter图形界面设计(1)
- 8种常见SQL错误用法,你犯过几个?
- 零基础学习什么编程语言比较合适?别的不说,听说大佬都学了这个!
- [Unity] FlowCanvas 使用注意事项
- 设计模式六大原则你都知道吗?
- Xadmin 常用插件
- 银行使用计算机实现个人存款,电脑基础 第2章 真题整理1.doc
- [CSS揭秘]不规则投影
- 兼容IE8使用ajax上传文件
- html中怎么设置字体形状,html如何设置字体样式 HTML里怎么设置字体大小?
- 初识Hadoop(会飞的大象)
- [PaddleSeg 源码阅读] PaddleSeg计算 mIoU
- 1.20e 的maphack
- 如何删除 顽固文件/文件夹
- adb命令之pm hide 与 disable
- 软件开发本质论——自然之路 1
- extjs 4.1 用户管理界面设计
- python上的免费免登录微信智能聊天机器人
- stm32 w5500以太网模块使用
- NiFi Processors之InvokeHTTP
热门文章
- 51单片机 ADC0832酒精传感器
- poj 1755 Triathlon (半平面交解一元二次不等式)(切割求半平面交)
- 【区块链 | Compound】4.剖析DeFi借贷产品之Compound:清算篇
- 给hexo主题添加背景及更改字体颜色(next的Mist主题)
- C++类模板 template class T详细使用方法
- consol32.exe
- 有备而来! 解密DEVELOP德凡为何进入中国市场?
- 【物联网】物联网项目之北向接口与南向接口
- 在 react 中添加enter键出搜索
- 计算机学期总结与学业计划,计算机教学工作总结以及来年计划范文