守护进程 & 创建守护进程 & fork一次和fork两次的区别
来源:互联网 发布:青藏铁路知乎 编辑:程序博客网 时间:2024/05/22 15:51
要知道在创建守护进程的时候fork一次和fork两次两者有什么区别,就要先知道第一次fork和第二次fork都起到了什么作用?
(1)调用一次fork的作用:
第一次fork的作用是让shell认为这条命令已经终止,不用挂在终端输入上,
还有就是为了后面的setsid服务,因为调用setsid函数的进程不能是进程组组长,
如果不fork出子进程,则此时的父进程是进程组组长,就无法调用setsid。当子进程调用完setsid函数之后,
子进程是会话组长也是进程组组长,并且脱离了控制终端,此时,不管控制终端如何操作,
新的进程都不会收到一些信号使得进程退出。
(2)第二次fork的作用:
虽然当前关闭了和终端的联系,但是后期可能会误操作打开了终端。
只有会话首进程能打开终端设备,也就是再fork一次,再把父进程退出,
再次fork的子进程作为守护进程继续运行,保证了该精灵进程不是对话期的首进程,
第二次不是必须的,是可选的,市面上有些开源项目也是fork一次
0 0
- 守护进程 & 创建守护进程 & fork一次和fork两次的区别
- 守护进程 & 创建守护进程 & fork一次和fork两次的区别
- 守护进程&创建守护进程&fork一次和fork两次的区别
- 创建守护进程fork一次与fork两次的区别
- 守护进程中fork一次与两次的区别
- Linux——守护进程(精灵进程)创建fork一次.两次的区别
- 守护进程(精灵进程)&调用fork一次和两次的区别
- 创建守护进程为什么fork两次
- 创建守护进程为什么fork两次
- 创建守护进程以及为什么fork两次
- 创建守护进程为什仫要fork两次
- 创建守护进程为什么要fork两次
- 创建守护进程为何fork两次
- 守护进程Daemon---fork两次
- 守护进程以及fork两次的问题
- 详解守护进程的创建与fork两次分析
- 守护进程及守护进程中两次fork问题
- 为什么守护进程要fork()两次
- HTML标签
- UiAutomator2.0资料收集
- Java基础——命名规
- 电商项目开发一般流程
- 坚持#第35天~XML结束
- 守护进程 & 创建守护进程 & fork一次和fork两次的区别
- STM32启动选择RAM启动才能使用Jlink调试
- labview操作者框架
- 2016 ACM/ICPC Asia Regional Dalian Online 1006 football game 1007 hdu 5873 hdu 5874
- Android平台开发-WIFI 驱动移植 -- 详细
- 【Dexclassloader】学习
- 机器学习基石(林軒田)笔记之十三
- [转载]Photoshop背景图制作 : 星空幻想
- contrastive loss function (papers)