守护进程到底是什么?如何创建?(图文并茂,你不得不看的一篇文章)

目录

守护进程(Daemon Process)详解

守护进程的特点

创建守护进程的步骤

 用守护进程实现输入Hello功能

守护进程的用途

如何查看我们的守护进程?

1. ps 命令

2. top 命令

总结


守护进程(Daemon Process)详解

守护进程,又称背景进程或系统守护进程,是运行在后台的一种特殊类型的进程。它们通常在系统启动时启动,并在系统关闭时终止。守护进程的主要功能是提供持续运行的服务,如网络服务、系统日志记录、定时任务执行等,而不与任何终端或用户直接交互。

守护进程的特点
  1. 脱离终端:守护进程在运行时不与任何终端关联,因此它们不能接收来自终端的输入或向终端输出信息。这一特性使得守护进程能够在无人值守的服务器环境中持续运行。

  2. 后台运行:守护进程在后台运行,不占用用户的交互会话,因此不会影响用户的其他操作。

  3. 持久运行:守护进程通常在系统启动时启动,并一直运行直到系统关闭。它们提供不间断的服务,如文件系统监控、网络服务、打印队列管理等。

  4. 资源管理:守护进程需要妥善管理资源,包括文件描述符、内存分配等,以确保系统资源的高效利用和避免泄漏。

  5. 错误处理与日志记录:守护进程需要能够处理运行时可能出现的错误,并将相关信息记录到日志文件中,以便于问题的诊断和追踪。

创建守护进程的步骤

创建一个守护进程通常涉及以下步骤:

  1. 重定向标准文件描述符:将标准输入(stdin)、标准输出(stdout)和标准错误输出(stderr)重定向到/dev/null或日志文件,以避免与终端的交互。

  2. 创建新会话:通过调用setsid()函数创建一个新的会话,使进程成为会话领导者,从而脱离原来的终端。

  3. 改变工作目录:通常将工作目录更改为根目录/,避免因原工作目录被卸载而导致的进程终止。

  4. 文件权限掩码设置:调用umask()设置适当的文件权限掩码,确保守护进程创建的文件具有正确的权限。

  5. 关闭不必要的文件描述符:关闭所有不需要的文件描述符,避免资源泄漏。

  6. 错误处理与日志记录:设置错误处理机制,将错误信息记录到日志文件中,便于后续分析。

 用守护进程实现输入Hello功能

守护进程的用途

守护进程广泛应用于各种系统服务中,包括但不限于:

  • 网络服务:如Web服务器(Apache、Nginx)、邮件服务器(Postfix、Sendmail)和数据库服务器(MySQL、PostgreSQL)。
  • 系统管理:如日志记录(syslogd)、定时任务执行(cron)和系统监控(monit)。

如何查看我们的守护进程?

1. ps 命令

ps 命令用于显示当前系统中进程的快照信息。它提供了多种选项来定制输出,以满足不同的需求。

  • 基本用法ps 命令默认显示当前终端的进程信息。
  • 常用选项
    • aux:显示所有用户的所有进程的详细信息,a 表示所有进程,u 表示以用户友好的格式显示,x 表示包括没有控制终端的进程。
    • -ef:显示所有进程的详细信息,类似于 aux,但格式略有不同。
    • -C <command>:显示特定命令的进程信息。
    • -p <pid>:显示指定 PID 的进程信息。
    • -U <username>:显示特定用户的所有进程信息。

2. top 命令

top 命令提供了一个动态的实时视图,显示系统中最消耗资源的进程。它是一个交互式的工具,允许用户实时监控 CPU、内存使用情况以及进程列表。

  • 基本用法top 命令启动后,会显示一个不断更新的进程列表,按 CPU 使用率排序。
  • 交互式功能
    • 按 P 键按 CPU 使用率排序。
    • 按 M 键按内存使用率排序。
    • 按 N 键按 PID 排序。
    • 按 q 键退出 top

总结

  • ps 提供了静态的进程信息快照,适用于查看特定时刻的进程状态。
  • top 提供了动态的系统监控,适合实时监控系统资源和进程活动。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

笨笨小乌龟11

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值