我个人对于守护进程的理解:
一.首先关于守护进程的我的几个疑问:
a) 守护进程有哪些特征???
b) 如何才能使一个进程变为守护进程???
c) 守护进程充当了什么作用???
d) 在什么情况下,需要守护进程???
e) 如何创建一个守护进程??
f) 守护进程与普通进程有哪些区别??
g) 终端和进程、进程组、会话是什么关系???
h) 为什么要引出守护进程这个机制呢???
i) 进程和控制终端是什么关系???
j) 为什么要使守护进程独立于控制终端???
k) 控制终端的本质是什么???
二.一些要点:
a) 提供系统服务的程序是都由运行在后台的守护进程来执行的
a) 终端其实就是每个登录到Linux上的用户,我们都知道Linux是支持多用户的操作系统,所以那么操作系统是怎么做到这一点的呢? 其实在Linux看来,所有的登录到Linux的用户都是一个终端,每当有一个用户登录到Linux上,Linux就为其建立一个终端对象,该终端对象是独立存在的一个实体,他拥有自己的会话、自己的进程组,自己的进程,每一个终端对象只管理他们自己的会话、进程。其他任何其他终端都无权对它的会话、进程进行管理。
b) 终端与进程的关系?
c) 终端控制进程,
d) 无论何时,键入终端的中断键,就会将中断信号发送给前台进程组的所有进程
e) 无论何时,键入终端的退出键,都会将退出信号发送给前台进程组的所有其他进程。
f) 每一个进程都从属于一个进程组。
g) 每一个进程组都从属于一个会话
h) 每一个会话都从属于一个终端
i) 一个会话只能有一个控制终端
j) 为什么要引出守护进程机制???
k) 因为系统服务必须能够为所有的终端(即用户)提供服务,要求它独立于任何一个终端,不受任何一个终端的控制,所以必须让守护进程不从属于任何一个终端
a) 如何看待终端、会话、进程、???
终端 --------》》会话--------------------》》一个或多个进程组-------》》进程-----------》时间、空间资源
看示意图:
三.我个人的理解:
a) 从普通进程变为守护进程的实质,就是要脱离组织关系,自立门户,可以使自己不受他人的控制,因为每一个进程都是由它的父进程创建而来,从而它也就继承了父进程的一些家族特性。
b) 例如:
c) 父进程所属的进程组就是他的子进程的进程组
d) 父进程所属的会话就是子进程所属的会话
e) 父进程的控制终端就是自己的控制终端
那么,对于子进程来说,就摆在它面前一个难题:
如何才能摆脱来自于父进程的一些约束呢??
答案就是:自立门户,与父进程断绝关系。删除掉一切继承自父进程的一些属性。