LInux进程/线程 各种id

 

参考:Linux公社 微信公众号文章

一、进程与线程的异同

 1.进程是资源分配的基本单位,线程是系统调度的基本单位

2.进程是资源的集合,这些资源包括内存地址空间,文件描述符等,一个进程中的多个线程共享这些资源

3.CPU对任务进行调度时,可调度的基本单位是线程。如果一个进程中没有其他线程,可以理解为这个进程中只有一个主线程,该主线程独享进程的所有资源。

4.进程的个体间是完全独立的,线程间是彼此依存的并且共享资源。多进程环境中,任何一个进程的种植,不会影响到其他非子进程。而多线程环境中,父线程终止,全部子线程被迫终止。

 

二、各种ID

pid:进程id

tgid:线程组id,也就是线程组leader的pid,等于pid

tid/lwp:线程id,tid在系统提供的接口函数中更常用,lwp在用户态命令中常用(ps)

 

pgid:进程组id,也就是进程组leader的进程id

 

 

                                          

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章