当前位置:首页 > 内存 > 正文

linux如何看内存使用量

  • 内存
  • 2024-04-30 17:36:58
  • 7273

∪﹏∪linux查看cpu核数和内存大小

下面介绍如何在Linux中查看CPU核心数和内存大小。

工具/材料:联想电脑天翼510S,Windows10,Linux系统。

1.使用cat/proc/cpuinfo检查Linux系统的CPU型号、类型和大小,如下图所示。

2.使用grap命令根据PhysicalProcessorID排除多核CPU信息。

3.使用cat/proc/meminfo查找有关Linux系统内存大小的详细信息。 您可以查看总内存、剩余内存和可用内存等信息。

4.使用df-h查看Linux系统上各个分区的使用情况应该搞清楚Linux和Windows系统上分区的区别。

5.Free-m检查Linux系统的内存使用情况和交换空间使用情况,如图所示。


∩0∩在Linux中可视化显示内存占用情况的方法
物理内存不足对Linux桌面系统和服务器系统的性能影响很大。 当计算机速度变慢时,首先要做的就是释放内存。 特别是在多用户环境和关键任务服务器环境中,内存消耗变得更加关键,因为多个用户和应用程序线程同时竞争更多的内存空间。
如果要监控系统中各种资源(如CPU或内存)的使用情况,图形显示是一种有效的方法。 通过图形界面可以快速分析每个用户和进程的资源消耗情况。 本教程将向您介绍Linux下图形化分析内存使用情况的方法。 使用的命令行工具是smem。
物理内存使用情况:RSS、PSS和USS
由于Linux使用虚拟内存(virtualmemory),所以要准确计算出一个设备实际使用的物理内存并不是那么简单的。 过程。 只知道进程的虚拟内存大小并没有多大用处,因为仍然无法获取实际分配的物理内存大小
RSS(Residentsetsize),可以使用top命令查询,是最常用的内存指标,表示某个进程占用的物理内存较大。 然而,将每个进程的RSS值相加通常会超过整个系统的内存消耗。 这是因为RSS包含进程之间共享的内存。
PSS(Proportionalsetsize)会更加准确。 它对共享内的大小进行平均,然后将其分配给每个进程。
USS(Uniquesetsize)是PSS自己的一部分。 它只计算进程单独占用的内存大小,不包括任何共享部分。
安装Smem
Smem是一个命令行工具,可以生成各种内存使用报告。 它从/proc文件系统中提取每个进程的PSS/USS信息并汇总输出。 它还内置图表生成功能,因此可以轻松分析整个系统的内存使用情况。
在Debian、Ubuntu或LinuxMint上安装smem
代码如下:
$sudoapt-getinstallsmem
在Fedora或CentOS/RHEL上安装Smem
在CentOS/RHEL上,您首先必须启用EPEL存储库。
代码如下:
$sudoyuminstallsmempython-matplotlib
使用smem查看内存使用情况
可以在非特权模式下使用smem,可以显示所有进程的内存情况按当前用户使用情况运行,并按PSS大小排序。
代码如下:
$smem
如果想获取整个系统所有用户的内存使用情况,需要使用root权限运行smem。
代码如下:
$sudosmem
还可以根据用户维度输出报表:
代码如下:
$sudosmem-u
smem提供以下选项对输出结果进行过滤,支持映射、进程、用户三个维度的过滤:
-M正则表达式
-P正则expre ssion
-U正则表达式
要了解如何使用smem,可以查看用户手册(manpage)。
使用smem以图形方式显示内存使用情况
图形报告使用起来会更加方便快捷。 smem支持两种图形显示格式:直方图和饼图。
以下是一些图形显示的示例。
以下命令行将根据PSS/RSS值生成直方图,以用户alice为例。
代码如下:
$sudosmem--barname-c"pssuss"-Ualice
此示例将生成一个饼图,其中显示了每个进程的PSS系统。 内存使用情况:
代码如下:
$sudosmem--piename-c"pss"
综上所述,smem是一个方便易用的内存分析工具工具。 使用smem的格式化输出,可以自动分析内存使用报告并执行一些自动化处理措施。 如果你还知道其他优秀的内存检测工具,请在留言区告诉我。