进程介绍!

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
相关推荐
SilentSamsara几秒前
Python 并发基础:threading/GIL 与 multiprocessing 的选型逻辑
服务器·开发语言·数据库·vscode·python·pycharm
东北甜妹2 分钟前
K8s -Daemonset,kube-proxy,service,statefulset
linux·运维·服务器
DeepHacking4 分钟前
在电脑 B 上通过局域网 SSH 直接从电脑 A 拉取文件,用 rsync 断点续传
运维·ssh
Season4505 分钟前
论close()与signal(SIGPIPE,SIG_IGN)对服务器的重要性
运维·服务器
idolao6 分钟前
CentOS 7 安装 xampp-linux-1.8.1.tar.gz 详细步骤(解压、启动、验证)
linux·运维·centos
码点6 分钟前
Android 9休眠时任意键唤醒屏幕
android·linux·运维
杨云龙UP7 分钟前
Docker 部署 MongoDB 6.0 数据库每日自动备份实践:本地 + 异地保留 7 天_20260429
linux·运维·数据库·mongodb·docker·容器·centos
INosdfgs18 分钟前
HAProxy 入门:高性能开源负载均衡
运维·其他·开源·负载均衡
大袁同学23 分钟前
【进程间通信】:洞穿边界修管道,映射内存渡进程
linux·c++·管道·进程间通信·ipc
Drache_long27 分钟前
K8S(二)
运维·docker·云原生·容器·kubernetes