Linux进程间关系之守护进程

概念

守护进程也称精灵进程,是运行在后台的一种特殊进程。守护进程独立于控制终端并且周期性的执行某种任务或者等待处理某些打算的事件。可认为守护进程目的就是防止终端产生的一些信号让进程退出

特点

  • 所有的守护进程都没有控制终端,其终端名(TTY)设置为问号(?)。
  • 自成会话,自成进程组。不与其他会话或进程组相互关联,干扰。所以一般一个守护进程的进程ID,组ID,会话ID都相同。(自成进程组这点说的也不太严谨,若父进程是守护进程,父进程fork的子进程也是守护进程。这时父子进程属于同一进程组)
  • 命令以‘d’结尾
  • 守护进程不受用户登录注销的影响,当你注销或者重登后,守护进程一直在运行。
  • 生存期长,在系统引导装入时启动,仅在系统关闭时终止。
  • 在后台运行(原因可归结于没有控制终端)
  • 大多数的守护进程都以root特权运行。

Linux大多数服务器都是由守护进程实现。如:web,http,阿帕奇等。
守护也完成许多系统任务,如:作业规划进程crond。

用户层守护进程

用户层没有终端的原因可能是调用了setsid(会在下面细讲)函数的结果。大多数用户层守护进程都是进程组的组长进程以及会话的会话首进程,而且是这些进程组和会话中的唯一进程(rsyslogd是一个例外)。

这里写图片描述

我们通常所说的1号进程init就是一个系统守护进程。除了其他工作外,主要负责启动各运行层析的系统服务。这些服务通常是在它们自己拥有的守护进程的帮助下实现的。此外,init就是用户层进程的父进程。
(上图中的各选项与本图中的头部一一对应)
这里写图片描述

内核线程(内核守护进程)

(其实也叫内核进程,Linux没有真正意义上的线程,都是用进程

  • 0
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值