守护进程
来源:互联网 发布:外国人看李小龙知乎 编辑:程序博客网 时间:2024/05/01 21:02
1,创建子进程,父进程退出
在Linux中父进程先于子进程退出会造成子进程成为孤儿进程,而每当系统发现一个孤儿进程时,就会自动由1号进程(init)收养它,这样,原先的子进程就会变成init进程的子进程。
2,在子进程中创建新会话
进程组:是一个或多个进程的集合。进程组有进程组ID来唯一标识。除了进程号(PID)之外,进程组ID也是一个进程的必备属性。每个进程组都有一个组长进程,其组长进程的进程号等于进程组ID。且该进程组ID不会因组长进程的退出而受到影响。
会话周期:会话期是一个或多个进程组的集合。通常,一个会话开始于用户登录,终止于用户退出,在此期间该用户运行的所有进程都属于这个会话期。
setsid函数作用:
setsid函数用于创建一个新的会话,并担任该会话组的组长。
调用setsid有下面的3个作用:
让进程摆脱原会话的控制
让进程摆脱原进程组的控制
让进程摆脱原控制终端的控制
由于在调用了fork函数时,子进程全盘拷贝了父进程的会话期、进程组、控制终端等,虽然父进程退出了,但会话期、进程组、控制终端等并没有改变,因此,这还不是真正意义上的独立开来,而setsid函数能够使进程完全独立出来,从而摆脱其他进程的控制。
还有些步骤,
改变当前目录为根目录
重设文件权限掩码
关闭文件描述符
- 守护进程守护自身
- 守护线程、守护进程
- 守护进程
- 守护进程
- 守护进程
- 守护进程
- 进程守护
- 守护进程
- 守护进程
- 守护进程
- 守护进程
- 守护进程
- 守护进程
- 守护进程
- 守护进程
- 守护进程
- 守护进程
- 守护进程
- 编译OSG,OSGEarth
- linux 系统源码导读
- 证书(二)格式
- eclipse常用插件地址
- strncpy
- 守护进程
- wireshark过滤
- ddos
- django使用innodb类型表commit
- IE6 IE7 IE8 未按预期方式处理 content-type 为 text/plain 的内容
- UTF与BOM之间的关系
- 【BIOS如何优化】
- python技巧
- rel=’external nofollow’