21. 【Linux教程】Linux 查看进程

简介: 21. 【Linux教程】Linux 查看进程

前面小节对文件和目录的创建、删除、移动、重命名、查看、修改等操作做了介绍,本小节开始学习 Linux 进程相关的知识点,学习如何查看 Linux 中的进程信息,并介绍通过命令展示出来的进程信息。

1. 进程概念简介

进程(Process)是系统中进行资源的分配和调度的基本单位,是系统中的软件程序对某些数据集合的运行活动,是操作系统结构的基础。它可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体。它不只是程序的代码,还包括当前的活动,通过程序计数器的值和处理寄存器的内容来表示。其定义如下:


狭义定义:进程是正在运行的程序的实例;


广义定义:进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。

2. 启动一个进程

这里以启动一个 nginx 服务为例,首先使用 yum 命令安装 nginx 软件,命令如下:

yum -y install nginx

执行结果如下:

如上图所示,已经安装好了 nginx 之后,可以使用如下命令启动 nginx 服务:

service nginx start

执行结果如下:

启动 nginx 之后可以使用本机浏览器访问,但在访问之前需要先将 Linux 防火墙关闭,命令如下:

systemctl stop firewalld
 
systemctl status firewalld

执行结果如下图:

关闭防火墙之后,就可以通过浏览器查看到 nginx 软件服务展示的内容:

3. 查看进程

在启动一个软件进程之后,可以使用 ps 命令查看启动软件的进程,命令如下:

ps -aux | grep nginx

执行结果如下图:

Tipsps -aux | grep nginx 中的 ps 表示查看进程,aux 是进程跟的参数,|grep nginx 表示使用管道查看 nginx 的进程。

4. ps 命令参数介绍

Centos操作系统中进程的状态有五种:

  • 运行:正在运行或在运行队列中等待;
  • 中断:休眠中,受阻,在等待某个条件的形成或接受到信号;
  • 不可中断:收到信号不唤醒和不可运行, 进程必须等待直到有中断发生;
  • 僵死:进程已终止, 但进程描述符存在, 直到父进程调用 wait4() 系统调用后释放;
  • 停止:进程收到SIGSTOP,SIGSTP,SIGTIN,SIGTOU 信号后停止运行运行。

ps 命令可以用来查看进程相关信息,下面列举一些 ps 命令的参数: image.png Tips:使用上述一个或者多个参数可以查看到指定的进程信息。

5. 实时监测进程

上面介绍的 ps 命令只能查看输入命令那一刻获取到的进程信息,而 top 命令可以实时监测进程信息:

执行结果如下图:


如上图所示展示的是实时进程监测信息,下面对这些信息进程说明:

  • PID:进程号或进程ID;
  • USER:进程属主的名字;
  • PR:进程的优先级;
  • NI:进程的谦让度值;
  • VIRT:进程占用的虚拟内存总量;
  • RES:进程占用的物理内存总量;
  • SHR:进程和其他进程共享的内存总量;
  • S:进程的状态,D 表示可中断的休眠状态,R 表示运行状态,S 表示休眠状态,T 表示跟踪状态或停止状态,Z 表示僵化状态;
  • %CPU:进程使用的 CPU 时间比例;
  • %MEM:进程使用的内存占可用内存的比例;
  • TIME+:自进程启动到目前为止 CPU 时间总数;
  • COMMAND:进程所对应的命令行名称,也就是程序启动时的程序名。

Tipstop 命令展示出来的信息默认是按照 %CPU 的值从大到小排序的。

6. 小结

本小节介绍了,如何启动一个 nginx 程序进程,然后使用 ps -aux | grep nginx 命令查看 nginx 相关的进程信息,ps 和 top 命令都能查看进程信息,ps 查看的是输入命令之后那一刻的进程信息,而 top 命令可以实时监测进程信息,这些命令和参数在实际业务中特别重要,能快速看到那些软件应用的运行状态,它们占用的资源大小信息,从而可以很好地对系统和软件优化。


相关文章
|
11天前
|
算法 Linux 调度
深入理解Linux操作系统的进程管理
本文旨在探讨Linux操作系统中的进程管理机制,包括进程的创建、执行、调度和终止等环节。通过对Linux内核中相关模块的分析,揭示其高效的进程管理策略,为开发者提供优化程序性能和资源利用率的参考。
34 1
|
7天前
|
SQL 运维 监控
南大通用GBase 8a MPP Cluster Linux端SQL进程监控工具
南大通用GBase 8a MPP Cluster Linux端SQL进程监控工具
|
14天前
|
运维 监控 Linux
Linux操作系统的守护进程与服务管理深度剖析####
本文作为一篇技术性文章,旨在深入探讨Linux操作系统中守护进程与服务管理的机制、工具及实践策略。不同于传统的摘要概述,本文将以“守护进程的生命周期”为核心线索,串联起Linux服务管理的各个方面,从守护进程的定义与特性出发,逐步深入到Systemd的工作原理、服务单元文件编写、服务状态管理以及故障排查技巧,为读者呈现一幅Linux服务管理的全景图。 ####
|
1月前
|
缓存 监控 Linux
linux进程管理万字详解!!!
本文档介绍了Linux系统中进程管理、系统负载监控、内存监控和磁盘监控的基本概念和常用命令。主要内容包括: 1. **进程管理**: - **进程介绍**:程序与进程的关系、进程的生命周期、查看进程号和父进程号的方法。 - **进程监控命令**:`ps`、`pstree`、`pidof`、`top`、`htop`、`lsof`等命令的使用方法和案例。 - **进程管理命令**:控制信号、`kill`、`pkill`、`killall`、前台和后台运行、`screen`、`nohup`等命令的使用方法和案例。
131 4
linux进程管理万字详解!!!
|
20天前
|
缓存 算法 Linux
Linux内核的心脏:深入理解进程调度器
本文探讨了Linux操作系统中至关重要的组成部分——进程调度器。通过分析其工作原理、调度算法以及在不同场景下的表现,揭示它是如何高效管理CPU资源,确保系统响应性和公平性的。本文旨在为读者提供一个清晰的视图,了解在多任务环境下,Linux是如何智能地分配处理器时间给各个进程的。
|
29天前
|
Linux Python
Linux 中某个目录中的文件数如何查看?这篇教程分分钟教会你!
在 Linux 系统中,了解目录下文件数量是常见的需求。本文介绍了四种方法:使用 `ls` 和 `wc` 组合、`find` 命令、`tree` 命令以及编程实现(如 Python)。每种方法都附有详细说明和示例,适合不同水平的用户学习和使用。掌握这些技巧,可以有效提升系统管理和日常使用的效率。
242 6
|
1月前
|
存储 运维 监控
深入Linux基础:文件系统与进程管理详解
深入Linux基础:文件系统与进程管理详解
70 8
|
27天前
|
网络协议 Linux 虚拟化
如何在 Linux 系统中查看进程的详细信息?
如何在 Linux 系统中查看进程的详细信息?
55 1
|
27天前
|
Linux
如何在 Linux 系统中查看进程占用的内存?
如何在 Linux 系统中查看进程占用的内存?
|
1月前
|
Linux Python
Linux 中某个目录中的文件数如何查看?这篇教程分分钟教会你!
在 Linux 系统中,了解目录下的文件数量是常见的需求。本文介绍了多种方法,包括使用 `ls` 和 `wc` 命令组合、`find` 命令、`tree` 命令以及编程方式(如 Python)。无论你是新手还是有经验的用户,都能找到适合自己的方法。掌握这些技巧将提高你在 Linux 系统中的操作效率。
36 4