unix/linux多进程编程3-进程控制
来源:互联网 发布:棘轮设计软件下载 编辑:程序博客网 时间:2024/04/30 06:21
1:进程组
1.1与同意作业关联的一个或者多个进程的集合称为进程组,可以接收来自同一终端的各种信号。可以用getpgrp(),来或者进程的进程组ID。
1.2组长进程
每个进程组都有一个组长进程,其标志是进程ID等于进程组ID,组长进程可以创建一个进程组,创建该组中的进程,然后终止。但组长进程终止,并不意味着进程组的终止。
1.3生存周期
进程组创建到组中最后一个进程结束。
1.4创建或者加入进程组
#include <unistd.h>
setpgid(pid_t pid, pid_t pgid);
一个进程只能为它自己或者它的子进程设置进程组ID,并且在他的子进程调用了exec函数之后,它也不能再更改这个子进程的进程组ID。
1.5shell中fork之后,通常在父进程中设置子进程的进程组ID,而在子进程中也设置自己的进程组ID,原因是避免因为父子进程的执行先后不确定,而导致一段时间内子进程的组成员身份不确定。
2:会话
1:一个或者多个进程组的集合,称为会话。
2:创建会话
#include <unistd.h>
pid_t setsid(void);
3:控制终端
1)一个会话只有一个控制终端(controlling terminal)
2)建立与控制连接连接的会话首进程称为控制进程(conrolling process)
3)一个会话(有控制终端的会话)包括一个前台进程组和一个或者多个后台进程组
4)无论何时键入终端中断键(Ctrl+C / Del),都会将中断信号发送前台进程组的所有进程
5)无论何时键入终端退出键(Ctrl+\),都会将退出信号发送给前台进程组的所有进程
6)如果终端接口检测到调制解调器(或网络)断开了连接,则将挂断信号发送给控制进程(会话首进程)
- unix/linux多进程编程3-进程控制
- unix/linux多进程编程2-进程控制
- Linux/Unix进程控制(3)
- linux/unix多进程编程
- Unix/Linux编程-进程
- Unix 环境编程: 进程控制
- UNIX高级编程-进程控制
- Linux/UNIX进程控制(1)
- linux/Unix进程控制(1)
- Linux/Unix进程控制(2)
- linux进程控制(一)--unix环境高级编程读书笔记
- linux进程控制编程
- Linux进程控制编程
- Linux进程控制编程
- Linux:进程控制编程
- Linux进程控制编程
- linux进程控制编程
- Linux进程控制编程
- 我学习安卓时候的新手入门资料,送你们了
- 从IT菜鸟变为“IT骨干开发者”的11个建议
- 郁闷的2天
- Flex中的CSS: (3)CSS会被编译器转换为什么样的AS代码--组合:s|Button#btn, .MyStyle
- YII框架yiic、gii工具使用方法
- unix/linux多进程编程3-进程控制
- 抛弃硬盘 提高网速
- 开发者平台
- eclipse 自动生成android 工程的java document
- 程序员发展应该尽早明白13个道理
- 【转】Android和iPhone要做统一设计还是差异设计?
- 在QQ通讯录之前拦截短信
- ZOJ1083 Win the Game,SG游戏
- 用C语言和汇编语言实现将1个整数分解成几个素数的乘积