除了运行、休眠…进程居然还有僵尸、孤儿状态
💡
原文中文,约4600字,阅读约需11分钟。
📝
内容提要
本文介绍Linux进程的不同状态,如运行、休眠、暂停和退出状态,以及僵尸进程和孤儿进程的危害。通过代码示例和命令演示,详细讲解了各种状态的特点和如何观察,并提出了避免僵尸进程和孤儿进程的方法。其中,孤儿进程会被1号进程领养,以避免变成僵尸进程。
🎯
关键要点
- Linux进程状态包括运行、休眠、暂停、退出、僵尸和孤儿状态。
- R状态表示进程正在被CPU调度,但不一定在运行。
- S状态是可中断休眠状态,进程在等待资源。
- D状态是不可中断休眠状态,进程在等待资源但不被中断。
- T状态是暂停状态,可以通过信号暂停和继续进程。
- X状态是死亡状态,瞬时状态不易观察。
- Z状态是僵尸状态,子进程未被父进程回收时形成。
- 僵尸进程会占用内存资源,造成浪费。
- 孤儿进程是父进程提前结束时,子进程被1号进程领养的情况。
- 避免僵尸进程和孤儿进程的方法是及时回收和领养。
➡️