Linux&Apue(0.2.2):了解守护进程&系统日志

(一)守护进程

当我们了解一个新的知识的时候,我们一般在意的无非就几个点。守护进程是什么,守护进程的意义,守护进程怎么使用等。
在我们了解守护进程是什么的时候。不如用用自己的键盘操作ctrl+shift+Esc进入到任务管理器,然后点击服务选项。
在这里插入图片描述
想想:明明我没有打开这些进程,那为什么又会有?

(1) 守护进程是什么?

守护进程(daemon):Linux中的守护进程就像上面任务管理器提到的这些后台服务进程,它们通常在系统启动后就开始运行,没有控制终端,并且也不能和前台的用户进行交互,在系统关闭时才结束。(简单来说:一类特殊的后台进程)

(2) 守护进程的意义

守护进程脱离终端,在后台运行。
①避免执行的信息在终端上显示。
②进程不会被其它终端信息所中断。

(3) 守护进程的两种运行方式

3.1 独立运行的守护进程

独立运行的守护进程:由int脚本负责管理,所有的脚本在/etc/rc,d/init,d/目录下,服务器监听在一个特点的端口上等待客户端的连接(会造成资源浪费)。
如果客户端产生一个连接请求,守护进程就创建一个子服务器响应这个连接,而主服务器继续监听。以保持多个子服务器池等待下一个客户端请求。

3.2 xinetd 管理的守护进程

xinetd(守护进程) 管理的守护进程:xinetd能够同时监听多个指定的端口,在接受用户请求时,它能够根据用户请求的端口不同,启动不同的网络服务进程来处理这些用户请求。

(4) 守护进程的库函数

#include <unistd.h>		//头文件包含
int daemon(int nochdir, int noclose);
参数功能
nochdir指定是否要切换当前工作路径到"/"根目录
noclose指定是否要关闭标准输入、标准输出和标准出错

(二)系统日志

上面说到,守护进程会在后台运行,并且也不会在终端上显示。那么我们也就无法知道守护进程运行的状态信息。所以,这时候我们就可以用系统日志去记录,并且也就可以进行查看了。

(1) 系统日志的定义

系统日志:记录系统中硬件、软件和系统问题的信息,同时还可以监视系统中发生的事件。用户可以通过它来检查错误发生的原因,或者寻找受到攻击时攻击者留下的痕迹。系统日志包括系统日志、应用程序日志和安全日志。(来源:百度百科)
UNIX的系统日志:通过syslogd这个进程记录系统有关事件记录,也可以记录应用程序运作事件。通过适当的配置,我们还可以实现运行syslog协议的机器间通信,通过分析这些网络行为日志,藉以追踪掌握与设备和网络有关的状况。

(2) 日志系统syslog()函数

syslog()函数会将输出的信息记录到: /var/log/messages 日志文件中(这个日志文件记录着所有信息,所以这里会存在消息丢失,一般会使用标准文件IO库实现日志系统)

#include <syslog.h>		//头文件包含

涉及三个部分:打开日志,写入日志,关闭日志。
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值