一、什么是守护进程
linux系统启动时会启动很多系统服务进程,这些系统服 务进程没有控制终端,不能直接和用户交互。其它进程都是在用户登录或运行程序时创建,在运⾏结束或⽤户注销时终止,但系统服务进程不受用户登录注销的影响,它们⼀直在运行着。这种进程叫守护进程。
守护进程也被称为精灵进程,是运行在后台的一种特殊进程,它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。
查看方式
ps axj命令:查看系统中的进程。
参数a表示不仅列当前⽤户的进程,也列出所有其他用户的进程;
参数x表示不仅列有控制终端的进程,也列出所有⽆控制终端的进程;
参数j表示列出与作业控制相关的信息;
二、守护进程的调用
创建守护进程最关键的⼀步是调⽤setsid函数创建⼀个新的会话,并成为会话leader。
该函数调用成功时返回新创建的session的id(其实也就是当前进程的id),出错返回-1。注意,调用这个函数之前,当前进程不允许是进程组的leader,否则该函数