您的位置:首页 > 博客中心 > 网络系统 >

宋宝华: 一图理解终端、会话、 进程组、进程关系

时间:2022-04-03 16:18

原创 宋宝华 Linux阅码场 1月12日


药不能停,直接进入正题,本文3分钟读完。文中涉及到的缩写如下:

  • PID: 进程(process) ID
  • PPID:父进程(parent process) ID
  • PGID:进程组(process group) ID
  • SID:会话(session )ID

文中a.out对应的代码如下:

a.out代码
main()
{
    fork();
    while(1);
}

实验方法:

开一个terminal,运行三个a.out,得到3个进程组,6个a.out进程:
技术图片

关系图如下:

技术图片

解释如下:

  • bash的PPID是terminal
  • bash的PGID,SID都是bash自己的PID;
  • 3个a.out进程组所有6个进程的SID都是bash的PID;
  • 3个a.out进程组中的各个父进程PID会成为该进程组中所有进程的PGID;

    进程树pstree关系如下:

    技术图片

    通过ps命令验证如下:

    技术图片

热门排行

今日推荐

热门手游