Linux: Daemon 守护进程

Daemon

在一个多工的电脑操作系统中,守护进程(英语:daemon,/ˈdiːmən/或/ˈdeɪmən/)是一种在后台执行,而不由用户直接交互控制的电脑程序。此类程序会被以进程的形式初始化。守护进程程序的名称通常以字母d结尾,以指明这个进程实际是守护进程,并与普通的电脑程序区分开来。例如,syslogd就是指管理系统日志的守护进程,sshd是接收传入SSH连接的守护进程。

在Unix环境下,守护进程的父进程通常(但不一定)是init进程,且在UNIX系统进程层级中直接位于init之下。守护进程通常由如下方法创建:一个进程运行fork生成一个子进程然后立即终止,使得这个子进程能在init下运行;或者直接由init启动守护进程。另外,通过“fork并终止”产生的守护进程一般还需要执行其他操作,如解除此进程与任何控制终端(tty)之间的关联。这类流程在Unix上的daemon(3)已有实现。

Daemon: https://libslack.org/daemon/