16-僵尸进程和托孤进程

进程的正常退出步骤:

  • 子进程调用exit()函数退出
  • 父进程调用wait()函数为子进程处理其他事情

若进程没有按正常退出步骤,则有可能变为僵尸进程或者托孤进程

僵尸进程

子进程退出后,父进程没有调用wait()函数处理身后事,子进程变成僵尸进程。

编写程序实现僵尸进程

然后编译运行,通过ps aux | grep "test_main"查看进程状态,发现状态为"Z"的僵尸进程

托孤进程

父进程比子进程先退出,子进程变为孤儿进程,Linux系统会把子进程托孤给pid为1号的进程(init)进程

相关推荐
青瓦梦滋2 分钟前
Linux线程的同步与互斥
linux·c++
Elivs.Xiang5 分钟前
centos9中安装Jenkins
linux·运维·centos·jenkins
橙子也要努力变强8 分钟前
信号捕捉的底层机制-内核态和用户态初识
linux·服务器·c++
j_xxx404_11 分钟前
Linux C 语言编译链接全解析:静态库与动态库从原理到实战
linux·运维·服务器·c语言·编辑器
橙子也要努力变强20 分钟前
信号捕捉底层机制-进程与OS
linux·服务器·c++
青瓦梦滋21 分钟前
Linux线程
linux·运维·c++
oLLI PILO21 分钟前
在linux(Centos)中Mysql的端口修改保姆级教程
linux·mysql·centos
满天星830357725 分钟前
【Linux/多路复用】select
linux·运维·服务器·c语言·c++
cyber_两只龙宝32 分钟前
【Oracle】Oracle之SQL的集合运算符
linux·运维·数据库·sql·云原生·oracle
Hello.Reader34 分钟前
Ubuntu 安装 Miniconda 完整从零开始把 Conda 环境搭起来
linux·ubuntu·conda