1 daemon的主要分类
①独立启动的stand alone;②通过一个super daemon来统一管理的服务
- stand_alone:此daemon可以自行单独启动服务
daemon 启动并加载到内存后就一直占用内存与系统资源。最大的优点是:因为一直存在内存内持续的提供服务,因此对于发生客户端的请求时,stand alone 的daemon响应速度较快。 - super daemon:一个特殊的daemon来统一管理
- super daemon通过一个统一的daemon【xinetd】来负责唤起服务。当没有客户端的请求时,各项服务都是未启动的情况,等到有来自客户端的请求时,super daemon 才唤醒相对应的服务。当没有客户端的请求结束后,被唤醒的这个服务也会关闭并释放系统资源。
- 优点:安全性高且占用系统资源少【因为服务在客户端的连接结束后就关闭】;缺点:速度慢【因为有客户端的连接才会唤醒该服务】。
如图所示:Super daemon 常驻内存,Program1/2/3则是启动某些服务的进程(未被启动状态)。当有客户端的请求时, super daemon 才会去触发相关的进程加载成为 daemon 而存在于内存。此时,客户端的请求才会被 super daemon 导向Daemon1去达成连接。当客户端的请求结束时,Daemon 1将会被删除。
- super daemon 的处理模式分为多线程 及 单线程。
1.2 daemon 工作形态的类型
以daemon提供服务的工作状态来区分,可以将daemon分为single-control与interval-control。
- single-control
通过信号来管理,只要有任何客户端的请求进来,它就会立即启动去处理。例如打印机的服务(cupsd)。 - interval-control
每隔一段时间就主动去执行某项工作。故要在配置文件指定服务要进行的时间与工作。(atd与crond)
=======
返回第16章阅读