进程介绍!

01、写在前面

在计算机科学中,进程(Process)是指正在运行的程序的实例。它是计算机系统中一个具有独立执行流的单元,它包含了程序代码、数据以及程序运行所需的系统资源。简单来说,进程就是一个正在执行的程序。当你启动一个程序时,操作系统会为该程序创建一个对应的进程,并为其分配资源(如内存空间、CPU 时间等),然后在这个进程中运行程序的代码。

每个进程都有自己的地址空间,它包含了程序的代码、数据和堆栈等。不同进程之间通常是相互独立的,它们之间不能直接访问对方的地址空间,这种隔离性有助于确保系统的稳定性和安全性。操作系统负责管理和调度进程,它可以同时运行多个进程,并根据优先级和调度策略来分配 CPU 时间和其他资源。操作系统还提供了一些机制来实现进程之间的通信和同步,以便进程可以相互协作完成任务。

总的来说,进程是计算机系统中的一个基本概念,它代表了正在运行的程序的实例,是计算机系统中的基本执行单元。

02、进程相关操作

htop命令就相当于Linux中的任务管理器,能够返回正在运行进程的实时详细信息。

以下是 htop 返回的各列结果的含义:

PID:进程 ID,用于唯一标识每个进程。

USER:运行该进程的用户名。

PR:进程的优先级。

NI:进程的 nice 值,nice 值是一个影响进程调度优先级的参数。

VIRT:进程使用的虚拟内存大小。

RES:进程实际使用的物理内存大小(常驻集大小)。

SHR:进程使用的共享内存大小。

S:进程的状态,包括 R(运行)、S(睡眠)、D(不可中断的睡眠)、Z(僵尸/挂起)、T(停止)等。

%CPU:进程使用的 CPU 时间占总 CPU 时间的百分比。

%MEM:进程使用的物理内存占系统总内存的百分比。

TIME+:进程运行的累计 CPU 时间。

COMMAND:进程所对应的命令或程序的名称。

除了htop,ps也是一个常用的进程查看命令,用于显示当前系统中运行的进程信息。它可以显示各种不同的进程信息,如进程ID、所属用户、CPU占用率、内存占用情况等。以下是ps命令的一些常见用法及示例:

显示当前用户的所有进程:

  • ps

显示指定用户的进程:

复制代码
ps -u username# 例如:ps -u biomamba

显示所有进程及详细信息:

复制代码
ps aux

以树状结构显示进程:

复制代码
ps axjf

显示指定进程的信息:

复制代码
ps -p PID

按 CPU 占用率排序显示进程:

复制代码
ps aux --sort=-%cpu

显示进程的内存占用情况:

复制代码
ps aux --sort=-%mem

显示当前用户的前 10 个 CPU 占用率最高的进程:

复制代码
ps aux --sort=-%cpu | head -n 11

显示所有用户的内存占用情况并按内存占用率排序:

复制代码
ps aux --sort=-%mem
相关推荐
kida_yuan6 小时前
【以太来袭】6. Besu 的 API 与调试体系
运维·区块链
吴声子夜歌6 小时前
TypeScript——基础类型(三)
java·linux·typescript
DA02217 小时前
系统移植-STM32MP1启动详解(BootROM)
linux·bsp·系统移植
春日见7 小时前
自驾算法的日常工作?如何提升模型性能?
linux·人工智能·机器学习·计算机视觉·自动驾驶
李彦亮老师(本人)7 小时前
【Linux系统】Rocky Linux 9.7操作系统简介
linux·运维·服务器·docker·kubernetes
minji...7 小时前
Linux 进程信号(二)信号的保存,sigset_t,sigprocmask,sigpending
linux·运维·服务器·网络·数据结构·c++·算法
A.A呐7 小时前
【Linux第二十章】socket
linux
何中应8 小时前
Grafana如何重置密码
linux·运维·服务器·grafana
charlie1145141919 小时前
2026年正点原子开发板移植方案——从0开始的Rootfs之路(3)inittab 与 init 系统:Linux 启动的“第一号进程“全解析
linux·驱动开发·学习·嵌入式开发·嵌入式linux
手握风云-9 小时前
基于 Java 的网页聊天室(三)
服务器·前端·数据库