unix高级环境编程 例子 代码实现练习 第九章:进程关系
来源:互联网 发布:淘宝卖衣服在哪找货源 编辑:程序博客网 时间:2024/05/21 17:11
程序清单 9-1 创建一个孤儿进程组 P229
/** * 程序清单 9-1 创建一个孤儿进程组 P229 * * zy: * 注意这里是孤儿进程组,是整个进程组都是孤儿, * 我们一般称一个父进程已经终止的进程为孤儿进程,这种进程将会被init进程收养 * * 孤儿进程组的定义还是比较绕的,如下: * 如果该组成员的父进程要么是同一个组的成员,要么是不是该组所属会话的成员。 * * 不是孤儿进程组的条件: * 该组中有一个进程,其父进程是属于同一个会话的另一个组 * * 书上到也没有讲孤儿进程组有什么用 */#include "error.c"#include "apue.h"#include <errno.h>static void sig_hug(int signo){printf("SIGHUP recevied,pid=%d\n",getpid());}static void pr_ids(char *name){printf("%s:pid=%d,ppid=%d,pgrp=%d,tpgrp=%d\n",name,getpid(),getppid(),getpgrp(),tcgetpgrp(STDIN_FILENO));//得到前台进程id}int main() {char c;pid_t pid;pr_ids("parent");if((pid=fork())<0)err_sys("fork error");else if(pid!=0){//parentsleep(5);exit(0);}else{pr_ids("child");signal(SIGHUP,sig_hug);kill(getpid(),SIGTSTP);pr_ids("child");if(read(STDIN_FILENO,&c,1)!=1){printf("read error from controlling TTY,errno=%d\n",errno);}exit(0);}}
结果,符合预期,和书上的解释完全想对应:
asd@asd-desktop:~/workspace/test/src$ ./a.out parent:pid=4458,ppid=3329,pgrp=4458,tpgrp=4458child:pid=4459,ppid=4458,pgrp=4458,tpgrp=4458SIGHUP recevied,pid=4459child:pid=4459,ppid=1,pgrp=4458,tpgrp=3329read error from controlling TTY,errno=5asd@asd-desktop:~/workspace/test/src$
0 0
- unix高级环境编程 例子 代码实现练习 第九章:进程关系
- unix高级环境编程 例子 代码实现练习 第七章:进程环境
- unix高级环境编程 例子 代码实现练习 第八章:进程控制
- unix高级环境编程 例子 代码实现练习 第十三章:守护进程
- unix高级环境编程 例子 代码实现练习 第十四章:高级IO
- unix高级环境编程 例子 代码实现练习 第三章:文件I/O
- unix高级环境编程 例子 代码实现练习 第四章:文件和目录
- unix高级环境编程 例子 代码实现练习 第五章:标准IO的效率
- unix高级环境编程 例子 代码实现练习 第六章:系统数据文件和信息
- unix高级环境编程 例子 代码实现练习 第十章:信号
- unix高级环境编程 例子 代码实现练习 第十一章:线 程
- unix高级环境编程 例子 代码实现练习 第十二章:线程控制
- UNIX环境高级编程学习之第九章进程关系-创建孤儿进程
- unix高级环境编程 例子 代码实现练习 第一章:unix基础知识
- UNIX环境高级编程第九章进程关系 读后笔记
- Unix环境高级编程—进程关系
- unix环境高级编程-进程关系
- 《UNIX环境高级编程》--9进程关系
- 关于CFileFind查找文件个数插曲:多出两个文件
- hdu3790(最短路dijstra)
- ios开发教程
- 【Unity3D自学记录】Debug.Log()无法正常显示解决方法
- IOS动画效果
- unix高级环境编程 例子 代码实现练习 第九章:进程关系
- 线程,进程.程序,多线程区别
- 解决Linux动态库版本兼容问题
- 查看inode
- 无法安装或运行此应用程序。该应用程序要求首先在“全局程序集缓存(GAC)中安装程序集MySQL版本6.7.4”
- SQL常用语句,含查看数据库日志
- 学习C语言的基本思路与参考书籍推荐
- 手痒Xcode升级到5.1了
- 关于readlines与read效率的比较