1. 是什么?
守护进程也被称为精灵进程,是运行在后台的一种特殊进程,独立于控制终端并且周期性的执行某种任务或等待处理某些发生的事件。系统上的许多进程都与用户登录注销有关,但是守护进程不随进程注销而销毁,它一直存在并运行着。
守护进程一般以d结尾,表示Daemon
2. 如何创建?
使用setsid函数创建守护进程,对于该进程来说,不能是该进程组的组长,调用fork()再调用setsid()就能够让该进程不是该进程组的组长。
3. 代码如何编写,关键步骤是哪些?
关键步骤在于调用setsid()
4. 为什么创建守护进程时fork两次?
fork的子进程和父进程在同一个进程组,进程组的组长就必然是进程组中的第一个进程,所以子进程不会是该组的第一个进程,在子进程中setsid就不会产生问题