16-僵尸进程和托孤进程

进程的正常退出步骤:

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

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

僵尸进程

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

编写程序实现僵尸进程

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

托孤进程

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

相关推荐
handler011 分钟前
进程状态流转的本质:Linux 内核队列与底层数据结构解密
linux·运维·c语言·数据结构·c++·笔记·学习
freshman_y5 分钟前
Linux开发中DTS和/proc/device-tree讲解
linux·嵌入式
wang090725 分钟前
Linux性能优化之文件系统基础介绍
java·linux·性能优化
F_D_Z27 分钟前
【解决办法】Claude报错Unable to connect to Anthropic services无法连接Anthropic
linux·服务器·claude·anthropic
蜡笔婧萱32 分钟前
Linux--RHCE关于at和crond的第一次应用
linux·运维·服务器
hjjdebug42 分钟前
制作ubuntu usb安装盘 (用dd 命令)
linux·u盘·安装盘
小程同学>o<1 小时前
Linux 应用层开发入门(二十五)| 网络编程
linux·网络·嵌入式软件·嵌入式应用层·应用层开发·linux应用层开发
shughui1 小时前
2026最新JDK版本选择及下载安装详细图文教程【windows、mac附安装包】
java·linux·开发语言·windows·jdk·mac
D4c-lovetrain1 小时前
Linux个人心得28(k8s实战)
linux·运维·kubernetes
淼淼爱喝水1 小时前
openEuler 环境下 Ansible Playbook 实战:批量创建用户并修改 Shell 属性
linux·运维·服务器·openeuler·playbook