2022.8.29 如何创建守护进程

1.守护进程的特点:

(1):在后台运行,与终端无关

(2):系统启动时守护进程运行,系统关闭时守护进程停止运行

2.实现守护进程的要点:

(1):守护进程不能与终端有血缘关系(不能有父子进程,兄弟进程)

(2):守护进程没有控制终端

3.实现效果:

守护进程自成一个进程组和一个会话组(也就是说守护进程就是进程组长,就是会话组组长),守护进程的父进程只能是systemd.

4.创建守护进程的编写程序步骤:

(1):创建子进程(fork函数),推出父进程(exit函数)

作用:使子进程脱离父进程,断掉亲缘关系,此时,子进程就会被systemd所收养。故实现子进程的父进程只能是systemd.

(2):在子进程中创建新会话(setsid()函数)

作用:使子进程摆脱原进程组的控制,实现子进程成为进程组组长

           使子进程摆脱原会话组的控制,实现子进程成为会话组组长

           使子进程摆脱控制终端的控制,实现守护进程不受终端控制

(3):改变当前子进程的目录到根目录  (chdir()函数)

作用:实现优化守护进程,为了用户的使用方便

(4):重新设置文件权限掩码。(umask()函数)

作用:屏蔽文件权限中的对应位。

(5):关闭文件描述符。 (close()函数)

作用:实现了守护进程与终端完全无关的功能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值