僵尸进程

linux系统中任何一个进程都有一个父进程,任何一个进程退出时(死亡!)内核都为其保存了一定量的信息

(这些信息至少包括:进程ID,终止状态,CPU时间等)。

这些信息会被内核一直保持直到被其父进程取走(收尸!)。


僵尸进程可以这样理解(这样很容易理解):死了没人给收尸,最后变成僵尸!

进程结束到其信息被父进程取走这段时间此进程的状态被称之为“僵尸进程”(zombie,也叫僵死进程)。


将信息取走的方法就是我们熟悉的函数waitpid:


NAME
       wait, waitpid, waitid - wait for process to change state

SYNOPSIS
       #include <sys/types.h>
       #include <sys/wait.h>

       pid_t wait(int *status);

       pid_t waitpid(pid_t pid, int *status, int options);

       int waitid(idtype_t idtype, id_t id, siginfo_t *infop, int options);



你可能感兴趣的:(linux)