linux中进程与线程ID相关说明
初步理解各种ID。下面基本上是按照重要程度从高到低排列,在分割线下方的ID不太重要。
pid: (process ID)进程ID。在用户态命令top和ps中常显示。
lwp: (thread ID)线程ID。在用户态的命令(比如ps)中常用的显示方式。
tid: 线程ID,等于lwp。tid在系统提供的接口函数中更常用,比如syscall(SYS_gettid)和syscall(__NR_gettid)。
tgid: (thread group ID for the thread group leader)线程组ID,也就是线程组leader的进程ID,等于pid。
------分割线------
pgid: 进程组ID,也就是进程组leader的进程ID。
pgrp: (process group ID)进程组ID,与pgid相同.
pthread id: pthread库提供的ID,生效范围不在系统级别,可以忽略。
sid: session ID for the session leader.
tpgid: tty process group ID for the process group leader.
【栗子】
#ps默认只打印进程级别信息,需要用-L选项来查看线程基本信息
ps -eo pid,tid,lwp,tgid,pgid,pgrp,sid,tpgid,args -L;
评论