进程组和会话

本文详细探讨了进程组和会话的概念,包括进程组的生命周期、创建进程组的规则,以及会话的组成和生命周期。重点阐述了进程组组长的角色和权限,以及如何避免组长成为会话组长的问题。同时,提到了控制终端与进程组的关系,以及守护进程创建过程中两次fork的原因。
摘要由CSDN通过智能技术生成

进程组:

进程组是一个或是多个进程的集合:

同一个进程组的各个进程 接受来自于同一个终端的信号

每一个进程组,有一个唯一的 	pgid (进程组id)

pid_t getpgid(pid_t pid);//获取某个进程所在进程组的pgid

进程组组长相关:

  1. 每个进程组,都有一个组长. 组长のpid=pgid;

  2. 进程组组长 可以 创建一个新的进程组,创建改组中的进程,终止改组中的进程

进程组的生命周期

  1. 生命周期:只要该进程组中还有进程存在,这个进程组就还存在:

    ---->进程组的生死存亡,和组长无关: 人在塔在,人亡塔亡

  2. 进程组消亡的方式:
    ①最后一个进程终止
    ②最后一个进程离开本进程

创建进程组

int setpgid(pid_t pid,pid_t pgid);

//将pid进程的进程组设置为pgid

参数问题:

1.如果pid =pgid;  则由pid指定的进程,变成他所在进程组的组长   ---->组长指定

2.如果pid=0 ,则使用调用者的pid, ----.调用该函数的进程加入某个进程组

3.如果pgid=0,则由pid指定的进程id用作进程组id;----->自定义组id

死记:一个进程只能为他自己或他的子进程设置进程组id,在他的子进程调用exec之后,他就不能在更改子进程的进程组id

==为什么呢?&#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值