16-僵尸进程和托孤进程

进程的正常退出步骤:

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

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

僵尸进程

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

编写程序实现僵尸进程

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

托孤进程

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

相关推荐
艾莉丝努力练剑4 分钟前
【Linux网络】NAT、内网穿透、内网打洞
linux·运维·服务器·网络·计算机网络·udp·php
无忧.芙桃8 分钟前
Linux信号机制(中)
linux·运维·服务器
网络中的夜鹰18 分钟前
只允许特定网段访问服务器任何端口
linux·服务器·网络
困意少年21 分钟前
Linux 进程概念深度解析:从 `task_struct` 到进程状态、优先级、调度与上下文切换
linux·运维
凡人叶枫25 分钟前
Effective C++ 条款26:尽可能延后变量定义式的出现时间
linux·开发语言·c++·effective c++
kebidaixu9 小时前
BCU 平台 RS485 驱动适配:从 THVD1406 到 ISO3082
linux
谢平康11 小时前
解决用 rm 报bash: /usr/bin/rm: Argument list too long错
linux·运维·运维开发
hj28625113 小时前
Linux 网络服务综合笔记(概念 + 命令 + 实操案例)2
linux·运维·网络
what_201813 小时前
Linux 磁盘 (查看、划分、inode)
linux·运维·服务器
27399202913 小时前
GDB调试(Linux)
linux