首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SPID缩写是什么意思?

SPID缩写是什么意思?
EN

Unix & Linux用户
提问于 2022-11-25 09:17:00
回答 2查看 945关注 0票数 3

带有ps标志的-T命令输出D1列,该列也称为TID(线程ID)。但是SPID代表什么呢?

ps源代码似乎不知道为什么这个名称是:

代码语言:javascript
复制
trace("-T adds strange SPID column (old sproc() threads?)\n");

https://gitlab.com/procps-ng/procps/-/blob/newlib/src/ps/parser.c#L320

EN

回答 2

Unix & Linux用户

发布于 2022-11-25 09:33:28

sproc的引用(它在IRIX上创建一个新的“共享组”进程)(类似于Linux上的线程)表明,SPID可以引用类似于“共享组进程id”的内容。

如前所述,在Linux上,ps实际上在SPID列中显示了线程id,即从内核的角度来看进程id (ps‘S PID列中显示的进程id从内核的角度来看是进程组id )。这与使用-L选项的LWP列中显示的信息相同。不清楚这是否与IRIX行为相匹配;IRIXps手册页没有提到SPID列;它将-T选项记录为

列出单个内核线程的数据。通常,所提供的信息是进程中所有线程的总和。在检查POSIX线程进程时,这是有用的。

票数 1
EN

Unix & Linux用户

发布于 2022-11-25 11:40:59

ps显示进程ID或线程ID,而不是显示进程或线程ID的PID和TGID列。

进程具有相同的进程和线程ids。该进程的任何线程也将共享进程ID,但线程ID不同。

代码语言:javascript
复制
$ ps -L -o pid,tgid,tid,spid,cmd 232810
    PID    TGID     TID    SPID CMD
 232810  232810  232810  232810 /usr/libexec/gnome-terminal-server
 232810  232810  232811  232811 /usr/libexec/gnome-terminal-server
 232810  232810  232813  232813 /usr/libexec/gnome-terminal-server
 232810  232810  232814  232814 /usr/libexec/gnome-terminal-server

主要进程为232810,然后是三个线程232811、232813和232814。

tid和spid是别名,它们都调用相同的函数来打印相同的值。SPID的区别来自SGI操作系统,而TID来自AIX。

票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/726241

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档