16-僵尸进程和托孤进程

进程的正常退出步骤:

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

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

僵尸进程

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

编写程序实现僵尸进程

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

托孤进程

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

相关推荐
.小小陈.14 小时前
深度拆解 Linux Ext 系列文件系统:从硬件底层到软硬链接全流程
linux·运维·服务器
Frank_refuel14 小时前
Linux操作系统 - > 进程信号(中)
linux·运维·服务器
cookies_s_s15 小时前
C++ 模板与泛型编程
linux·服务器·开发语言·c++
2401_8920709815 小时前
【Linux C++ 日志系统实战】Logger 日志器完整实现:级别控制、宏封装、动态输出、自动崩溃退出
linux·c++·日志系统
蓝天居士15 小时前
cpio命令详解(1)
linux·cpio
原来是猿15 小时前
Linux进程信号详解(一):信号快速认识
linux·c++·算法
minji...15 小时前
Linux 多线程(二)进程虚拟地址空间&&页表&&物理地址
linux·运维·服务器
IMPYLH16 小时前
Linux 的 link 命令
linux·运维·服务器·bash
朗道十戒16 小时前
Win11系统下WSL2将Ubuntu24.04安装在其他盘符路径
linux·ubuntu
蛐蛐蛐16 小时前
在Ubuntu上重新安装OpenClaw报错的一种解决方法
linux·运维·ubuntu·openclaw