Linux实例之PID、PPID、PGID和SID

叶sir学编程 2024-06-18 17:52:33

在linux系统中,当用户使用ps axj命令查看进程的相关信息时(如图1),第一行的PPID、PID、PGID、SID所在列的数值有的进程是相同的,有的是一两个相同,有的则是全不相同,那么PPID、PID、PGID、SID分别表示进程的什么信息呢?

图1

PID

PID即进程的ID号,当进程运行时,系统会给该进程分配一个ID号,用作该进程的唯一标识,当进程停止运行时,系统也会回收该ID号。在linux系统中,进程的PID值是有限的,数值也是有范围的,可以通过cat /proc/sys/kernel/pid_max命令查看当前系统所支持的PID上限;如图:

图2

PPID

PPID是指当前进程的父进程的PID,本质也是一个PID,可以通过查看进程的PPID获取该进程的父进程是谁。

PGID

PGID是指该进程所在进程组的ID,每个进程都有其对应的进程组,每个进程组都包含最少一个进程。Linux系统默认会将运行的进程继承使用父进程的进程组ID,即默认进程和其父进程在同一个进程组内。

SID

SID是指进程的会话ID,和进程组类似,每个进程都属于一个会话,但是同一个会话可以包含多个进程。会话主要用于连接一个控制终端,并且接收来自控制终端输入输出信息,而会话的意义在于让终端可以使用多个进程组下的进程。

0 阅读:8

叶sir学编程

简介:感谢大家的关注