1、守护进程:
守护进程也称精灵进程(Daemon),是运行在后台的⼀一种特殊进程。它独立于控制终端且周期性地执行某种任务或等待处理某些发生的事件。守护进程是⼀一种很有用的进程。Linux的大多数服务器就是用守护进程实现的。比如,Internet服务器inetd,Web服务器httpd等。同时,守护进程完成许多系统任
务。比如,作业规划进程crond等。Linux系统启动时会启动很多系统服务进程,
这些系统服务进程没有控制终端,不能直接和用户交互。其它进程都是在用户
登录或运行程序时创建,在运行结束或用户注销时终止,但系统服务进程不受用户登录注销的影响,它们一直在运行着。这种进程有⼀一个名称叫守护进程(Daemon)。
2、查看系统中的守护进程:
用ps axj命令查看系统中的进程(参数a表示不仅列当前用户的进程,也列
出所有其他用户的进程,参数x表示不仅列有控制终端的进程,也列出所有无控
制终端的进程,参数j表示列出与 作业控制相关的信息)。
凡是TPGID一栏写着-1的都是没有控制终端的进程,也就是守护进程。在
COMMAND一列用[] 括起来的 名字表示内核线程,这些线程在内核里创建,没
有用户空间代码,因此没有程序文件名和命令行, 通常采用以k开头的名字,表
示Kernel。init进程我们已经很熟悉了,udevd负责维护/dev目录下的 设备文
件,acpid负责电源管理,syslogd负责维护/var/log下的日志文件,可以看出,守护
进程通 常采用以d结尾的名字,表示Daemon。
3、自己实现守护进程:
(1)、调用umask将文件模式创建屏蔽字设置为0.
文件权限掩码是指屏蔽掉文件权限中的对应位,比如一个文件权限掩码是050它就屏蔽了文件拥有者得可读与可写权限,fork()创建的子进程会继承父进程的文件权限掩码,所以