热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

守护进程之守护进程的特征

先来看一些常用的系统守护进程,以及它们怎样和http:www.cnblogs.comnufangrenshengp3513323.html、http:www.cnbl

先来看一些常用的系统守护进程,以及它们怎样和http://www.cnblogs.com/nufangrensheng/p/3513323.html、http://www.cnblogs.com/nufangrensheng/p/3513400.html、http://www.cnblogs.com/nufangrensheng/p/3513443.html中所述的进程组、会话和控制终端等概念相关联。

ps(1)命令打印系统中各个进程的状态

ps -axj

选项-a显示由其他用户所拥有的进程的状态。-x显示没有控制终端的进程状态。-j显示与作业有关的信息:会话ID、进程组ID、控制终端以及终端进程组ID。

ps的输出大致是:

未命名

我们暂且先考虑红色边框内的各列。按照顺序,各列标题的意义是:父进程ID、进程ID、进程组ID、会话ID、终端名称、终端进程组ID(与该控制终端相关的前台进程组)、用户ID以及命令字符串。

系统进程依赖于操作系统实现。父进程ID为0的各进程通常是内核进程,它们作为系统自举过程的一部分而启动。(init是此种进程的例外,它是内核在自举时启动的用户层命令。)内核进程是特殊的,通常存在于系统的整个生命期中。它们以超级用户特权运行,无控制终端,无命令行

进程1通常是init。它是一个系统守护进程,负责启动个运行层次特定的系统服务。这些服务通常是在它们自己拥有的守护进程的帮助下实现的。

在Linux下,keventd守护进程为在内核中运行计划执行的函数提供进程上下文。kapmd守护进程对很多计算机系统中具有的高级电源管理提供支持。kswapd守护进程也称为页面调出守护进程(pageout daemon)。它通过将脏页面以低速写到磁盘上从而使这些页面在需要时仍可回收利用,这种方式支持虚存子系统。

Linux内核使用两个守护进程bdflush和kupdated将高速缓存中的数据冲洗到磁盘上。当可用内存达到下限时,bdflush守护进程将脏缓冲区从缓冲池(buffer cache)中冲洗到磁盘上。每隔一定时间间隔,kupdated守护进程将脏页面冲洗到磁盘上,以便在系统失效时减少丢失的数据。

端口映射守护进程portmap提供将RPC(Remote Procedure Call,远程过程调用)程序号映射为网络端口号的服务。syslogd守护进程提供将系统消息记入日志的服务。可以在一台实际的控制台上打印这些消息,也可将它们写到一个文件中。

http://www.cnblogs.com/nufangrensheng/p/3513254.html 中已谈到inetd守护进程(xinetd),它侦听系统网络接口,以便取得来自网络的对各种网络服务进程的请求。nfsd、lockd和rpciod守护进程提供对网络文件系统(Network File System,NFS)的支持。

cron守护进程(crond)在指定的日期和时间执行指定的命令。许多系统管理任务是由cron定期地执行相关程序而实现的。cupsd守护进程是打印假脱机进程,它处理对系统提出的所有打印请求。

注意,大多数守护进程都以超级用户(用户ID为0)特权运行。没有一个守护进程具有控制终端,其终端设置为问号(?),终端前台进程组ID设置为-1。内核守护进程以无控制终端方式启动。用户层守护进程缺少控制终端可能是守护进程调用了setsid的结果。所有用户层守护进程都是进程组的组长进程以及会话的首进程,而且是这些进程组和会话中的唯一进程。最后,应当引起注意的是大多数守护进程的父进程是init进程

本篇博文内容摘自《UNIX环境高级编程》(第二版),仅作个人学习记录所用。关于本书可参考:http://www.apuebook.com/


转载于:https://www.cnblogs.com/nufangrensheng/p/3540987.html


推荐阅读
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 成功安装Sabayon Linux在thinkpad X60上的经验分享
    本文分享了作者在国庆期间在thinkpad X60上成功安装Sabayon Linux的经验。通过修改CHOST和执行emerge命令,作者顺利完成了安装过程。Sabayon Linux是一个基于Gentoo Linux的发行版,可以将电脑快速转变为一个功能强大的系统。除了作为一个live DVD使用外,Sabayon Linux还可以被安装在硬盘上,方便用户使用。 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • Ubuntu 9.04中安装谷歌Chromium浏览器及使用体验[图文]
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 本文介绍了在Linux下安装和配置Kafka的方法,包括安装JDK、下载和解压Kafka、配置Kafka的参数,以及配置Kafka的日志目录、服务器IP和日志存放路径等。同时还提供了单机配置部署的方法和zookeeper地址和端口的配置。通过实操成功的案例,帮助读者快速完成Kafka的安装和配置。 ... [详细]
  • 解决nginx启动报错epoll_wait() reported that client prematurely closed connection的方法
    本文介绍了解决nginx启动报错epoll_wait() reported that client prematurely closed connection的方法,包括检查location配置是否正确、pass_proxy是否需要加“/”等。同时,还介绍了修改nginx的error.log日志级别为debug,以便查看详细日志信息。 ... [详细]
  • Linux下安装免费杀毒软件ClamAV及使用方法
    本文介绍了在Linux系统下安装免费杀毒软件ClamAV的方法,并提供了使用该软件更新病毒库和进行病毒扫描的指令参数。同时还提供了官方安装文档和下载地址。 ... [详细]
author-avatar
铱雯_213
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有