为什么有些进程以字母“d”结尾?

为什么有些进程以字母“d”结尾?

一些 Linux 二进制文件以“d”结尾,例如 sshd、httpd、ppd 等。

为什么会这样呢?

答案1

d在某个过程结束时意味着守护进程

执事意味着在后台运行的进程和在后台运行的服务。

背景这里意味着您无法直接访问它,并且他们不会在等您!如果您设置系统启动后启动某个服务,它将自动运行。

从技术上讲更详细一些:

守护进程通常被实例化为进程。进程是程序的执行(即运行)实例。进程由内核(即操作系统的核心)管理,内核为每个进程分配一个唯一的进程标识号(PID)。

Linux 中有三种基本类型的进程:交互式进程、批处理进程和守护进程。交互式进程由用户在命令行(即全文本模式)以交互方式运行。批处理进程从进程队列提交,与命令行无关;它们非常适合在系统使用率较低时执行重复任务。

系统将守护进程识别为父进程的 PID 为 1 的任何进程,该进程始终代表进程 init。init 始终是 Linux 计算机启动时启动的第一个进程(即启动),并且它会一直存在于系统中,直到计算机关闭。init 会采用父进程死亡(即终止)的任何进程,而无需等待子进程的状态。因此,启动守护进程的常用方法包括分叉(即划分)一次或两次,并使父进程(和祖进程)死亡,同时子进程(或孙进程)开始执行其正常功能。

两个很好的参考:

http://www.linfo.org/daemon.html

http://en.wikipedia.org/wiki/Daemon_(计算)

答案2

只是为了扩展https://unix.stackexchange.com/a/207724/72402:

二进制文件可以命名为作者想要的任何名称,但通常的做法是以 ad 结尾的二进制文件命名表明它是一个守护进程/调用者。

相关内容