1 / 31
文档名称:

7.0守护进程.pdf

格式:pdf   页数:31
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

7.0守护进程.pdf

上传人:yzhluyin1 2014/11/21 文件大小:0 KB

下载得到文件列表

7.0守护进程.pdf

文档介绍

文档介绍:守护进程
” 守护进程基本概念
” 守护进程基础特征
” 创建守护进程基本步骤
” 出错记录
” 单实例守护进程
” 守护进程的惯例
” 守护进程的客户-服务器模型
一、守护进程基本概念
守护进程,也就是通常说的Daemon进程,是Linux中的后台服务进
程。它是一个生存期较长的进程,通常独立于控制终端并且周期
性地执行某种任务或等待处理某些发生的事件。守护进程常常在
系统引导装入时启动,在系统关闭时终止。
因为守护进程没有控制终端、所以说它们是在后台运行的。
守护进程类似于Windows系统下的Service
一、守护进程基本概念
由于在Linux中,每一个系统与用户进行交流的界面称为终端,每一
个从此终端开始运行的进程都会依附于这个终端,这个终端就称
为这些进程的控制终端,当控制终端被关闭时,相应的进程都会
自动关闭。但是守护进程却能够突破这种限制,它从被执行开始
运转,直到整个系统关闭时才退出。如果想让某个进程不因为用
户或终端或其他地变化而受到影响,那么就必须把这个进程变成
一个守护进程。
一、守护进程基本概念
d、crond、keventd等等,守护进程一般
以d结尾(结尾字母d是Daemon的意思)。
查看守护进程: ps axj
参数a表示不仅列当前用户的进程,也列出所有其他用户的进程,参
数x表示不仅列有控制终端的进程,也列出所有无控制终端的进
程,参数j表示列出与作业控制相关的信息。
凡是TPGID一栏写着-1的都是没有控制终端的进程,也就是守护进
程。在COMMAND一列用[]括起来的名字表示内核线程,这些线
程在内核里创建,没有用户空间代码,因此没有程序文件名和命
令行,通常采用以k开头的名字,表示Kernel。
二、守护进程基本特征
守护进程有三个最基本的特点:后台运行,独立于终端,完成一定
的任务。
首先所谓的后台运行过程是一般是在图形界面或是终端不可见的;
而独立于终端是说它不和终端联系,运行之后一般不接受终端的
输入也不向终端输出;而完成一点的任务是每一个守护进程的运
行都是为了完成一定的任务而运行的,这些任务一般都是系统相
关的任务。
也就是控制台除开这些特殊性以外,守护进程与普通进程基本上没
有什么区别。因此,守护进程可以由一个普通进程按照上述的守
护进程的特性而改造成为守护进程。
三、创建守护进程基本步骤
相关概念:
进程组:进程组是一个或多个进程的集合。每运行一个程序或是命
令就会产生一个进程组,而每一个进程组有以个组长进程,一般
进程组的第一个进程是组长进程,组长进程fork的进程也属于同
一个进程组,但是子进程一旦执行exec等就会不属于该进程组。
子进程也可以成为组长进程。组长进程的进程id与其组进程id相
同。
会话:一次登录形成一个会话。一个会话可包含多个进程组, 但只能
有一个前台进程组. setsid 可建立一个新的会话。
控制终端:会话的首进程进程(session leader)打开一个终端之后, 该
终端就成为该会话的控制终端与控制终端建立连接的会话领头
进程称为控制进程,一个会话只能有一个控制终端,产生在控制终
端上的输入和信号将发送给会话的前台进程组中的所有进程。终
端上的连接断开时(比如网络断开或 Modem 断开), 挂起信号将
发送到控制进程(session leader) 。
三、创建守护进程基本步骤
1、调用umask将文件模式创建屏蔽字设置为0。由继承得来的文件
方式创建的屏蔽字可能会拒绝设置某些权限,所以要重新赋于所
有权限。例如我们的守护进程需要创建一个组可读写的文档,而
此守护进程从父进程那里继承来的文档创建方式屏蔽字却有可能
屏蔽掉了这两种许可权,则新创建的一组文档其读或写操作就不
能生效。因此要将文档方式创建屏蔽字配置为"0"。
三、创建守护进程基本步骤
2、调用fork()函数创建子进程,然后中止父进程(exit),保留子进程
继续运行。因为,当一个进程是以前台进程的方式由shell启动时,假如
中止了父进程,子进程就会自动转为后台进程。另外,在下一步时,我
们需要创建一个新的会话期,这就需要创建会话期的进程不是一个进程
组的组长进程。当父进程中止,子进程继续运行时,就确保了进程组的
组ID和子进程的进程ID不会相等。
三、创建守护进程基本步骤
3、确保进程不会获得任何控制终端。这是为了避免在关闭某些终端
时会显示有程序正在运行而无法关闭的情况。这一步通常的做法
是:调用函数setsid()创建一

最近更新

2024年湖南财经工业职业技术学院单招职业倾向.. 39页

2024年湖南铁道职业技术学院单招职业技能考试.. 40页

2024年湖南高尔夫旅游职业学院单招职业技能测.. 39页

2024年湖州职业技术学院单招职业适应性考试题.. 41页

2024年湘南幼儿师范高等专科学校单招职业适应.. 39页

2024年湘西民族职业技术学院单招职业技能考试.. 40页

2024年滁州城市职业学院单招职业倾向性考试模.. 40页

2024年滁州职业技术学院单招职业适应性考试题.. 39页

2024年滨州科技职业学院单招职业技能考试题库.. 40页

2024年漯河食品职业学院单招职业倾向性考试题.. 42页

2024年漳州城市职业学院单招综合素质考试模拟.. 40页

2024年漳州科技学院单招职业适应性测试模拟测.. 42页

2024年漳州职业技术学院单招职业技能考试模拟.. 41页

2024年潍坊工商职业学院单招职业倾向性考试模.. 40页

2024年炎黄职业技术学院单招职业技能考试题库.. 40页

2024年烟台城市科技职业学院单招职业倾向性考.. 40页

2024年烟台汽车工程职业学院单招综合素质考试.. 39页

2024年烟台科技学院单招职业技能考试题库必考.. 40页

2024年焦作大学单招职业技能考试模拟测试卷及.. 41页

2024年燕京理工学院单招综合素质考试题库完美.. 39页

2024年牡丹江大学单招职业适应性测试模拟测试.. 41页

2024年珠海城市职业技术学院单招职业技能测试.. 40页

2024年甘孜职业学院单招职业倾向性测试模拟测.. 39页

2024年甘肃交通职业技术学院单招职业适应性考.. 40页

2024年甘肃卫生职业学院单招职业适应性测试题.. 41页

2024年甘肃建筑职业技术学院单招职业技能测试.. 40页

2024年甘肃机电职业技术学院单招职业倾向性测.. 40页

2024年甘肃林业职业技术学院单招职业适应性考.. 41页

2024年甘肃省天水市单招职业适应性考试题库含.. 40页

2024年甘肃省庆阳地区单招职业适应性考试模拟.. 42页