进程详解

监控进程并“要求”它们终止、暂停、继续等等是可能的。为了理解我们接下来要讨论的实例,我们需要更进一步了解进程。

进程树

同文件一样,GNU/Linux 系统中运行的所有进程按照一棵树的形式组织。这棵树的树根是 init -- 一个在启动时就开始运行的系统级进程。系统为每个进程赋予一个序号(PID, 进程号(Process ID))以便唯一标识它们。进程也从其父进程继承 PID (PPID父进程号(Parent Process ID))。init 的父进程是其本身:initPIDPPID 都是 1。

信号

每个 UNIX® 进程都能响应信号。一共有 64 个不同的信号。它们由其序号(从 1 开始编号)或其符号名称(SIGx,其中 x 是该信号的名称)标识。其中的 32 个“高端”信号(3364)是实时信号,它们不在本章的讨论范围内。对于每个信号,进程都能有其自己的表现行动,不过其中不包括以下两个信号:9 号信号(KILL)和 19 号(STOP)。

信号 9 不可恢复地终止某个进程,并不让它有机会正常终止。碰上“死掉的”进程或是出了其他问题的进程,您可以向它们发送该信号。使用 kill -l 命令能够查看所有信号列表。