进程介绍!

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
相关推荐
Ivanqhz2 小时前
层归一化、残差、前馈网络与激活函数简述
服务器·数据库·人工智能·深度学习·算法
小此方2 小时前
Linux网络(十九):TCP流量控制与滑动窗口详解,超时重传和快重传到底有什么区别
linux·运维·服务器·网络·网络协议·tcp/ip
海宇服务2 小时前
零信任架构实战:基于海宇运营商近3个月欠费次数构建自动化履约能力评估管线
运维·人工智能·架构·自动化
码上有光2 小时前
Linux进程通信——共享内存、消息队列和信号量
android·linux·运维·共享内存·通信
沫璃染墨2 小时前
《从零入门Linux系统篇(五十四):线程篇·七——互斥锁底层原理:从原子交换到线程竞争与锁实现》
linux·运维·服务器·开发语言·c++·驱动开发·系统架构
志栋智能3 小时前
超自动化巡检中的异常检测与根因分析
运维·自动化
Java后端的Ai之路3 小时前
Python进阶探索24_应用案例_linux系统的监控
linux·开发语言·python·应用·探索
吴声子夜歌3 小时前
Nginx应用与运维——Nginx HTTP模块详解(访问控制功能模块)
运维·nginx·http
H.莓飛3 小时前
【数据结构】队列_OJ题
linux·数据结构·centos
H.莓飛4 小时前
【数据结构】栈_OJ题
linux·数据结构·算法·centos