1. 进程状态:
a) 前面5个为进程状态,后面2个为进程退出状态。
i. INTERRUPTIBLE和UNINTERRUPTIBLE的区别在于,INTERRUPTIBLE的进程可以被其他信号唤醒,而UNINTERRUPTIBLE只能被它所等待的信号唤醒(无法kill)。
ii. 父进程关心子进程(调用wait):当父进程建立子进程后,可以调用waitpid()等待子进程结束,子进程结束时要向它发送SIGCHLD信号,然后变为EXIT_ZOMBIE状态。父进程要处理这个信号,处理后子进程才是EXIT_DEAD状态。
iii. 父进程不关心子进程(不调用wait):子进程

本文探讨了Linux内核中进程的退出状态,特别是僵尸进程。进程在退出时可能直接进入EXIT_DEAD状态,取决于父进程是否关心其退出。父进程通过wait系列函数接收SIGCHLD信号后,子进程变为EXIT_ZOMBIE,最终变为EXIT_DEAD。若父进程忽略子进程退出,子进程可能直接变为EXIT_DEAD。init进程会负责清理无人认领的僵尸进程。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



