pgid 是组 pid,等于组首领 pid
sid 是 session id, 等于 session 首领 pid.
session 主要是和终端相关,同一个终端启动的进程属于同一个 session。
ps j
, ps -j
, ps axj
, ps -efj
都可以查看 pgid 和 sid.
互相关系
使用 ps -o pid,ppid,pgid,sid,comm | less
可以查看 bash, ps, less 之间的关系,并且可以通过 bash 的 ppid 向上追查父进程是 /usr/libexec/gnome-terminal-server
。 再 ps -axj | grep 2459
可以看到终端服务进程 2459,同时是组首领和 session 首领。
PID PPID PGID SID COMMAND
2469 2459 2469 2469 bash
5610 2469 5610 2469 ps
5611 2469 5610 2469 less
PPID PID PGID SID TTY TPGID STAT UID TIME COMMAND
1482 2459 2459 2459 ? -1 Ssl 1000 0:07 /usr/libexec/gnome-terminal-server
2459 2469 2469 2469 pts/0 5608 Ss 1000 0:00 bash
参考:
PID, PPID, PGID与SID
https://blog.csdn.net/Justdoit123_/article/details/101347971