网易首页 > 网易号 > 正文 申请入驻

使用 Smem 轻松了解您的 Linux RAM 使用情况

0
分享至

Linux 内存使用情况可能难以解释和理解。很容易找出一个进程正在使用什么内存,以及哪些进程使用得最多。

smem

内存使用情况

Linux 为您提供了许多方法来检查您计算机的RAM发生了什么。问题是,内存管理对您的操作系统来说是一个复杂的挑战。它必须兼顾物理 RAM、交换空间形式的虚拟 RAM 以及随时运行的不同类型进程的需求。

有关的您的电脑需要多少 RAM 才能玩 PC 游戏?

进程在将自己加载到内存时会消耗 RAM。然后他们要求更多的 RAM,以便他们有空间来执行他们设计的任何任务。一些进程几乎不会影响 RAM,而另一些进程则非常消耗内存。

内核和操作系统的其余部分、您的桌面环境以及您运行的每个应用程序或命令行会话都在要求您计算机中安装的有限 RAM 的一部分。一些进程产生其他进程。一些进程与其他进程共享 RAM。

有关的如何从 Linux 终端检查内存使用情况

试图破译所有这些,并为“这个程序或进程使用多少 RAM?”这个问题想出一个简单的答案。可能是一个令人惊讶的挑战。粒度很棒并且有它的位置,但同样,信息过度杀伤可能是一个障碍。

例如,使用 to peek into the /proc/meminfo 伪文件系统 在用于研究本文的机器上返回 50 行输出。你从哪里开始?

cat

猫 /proc/meminfo

一些 Linux 实用程序给出了不同的答案。在我们的测试机器上,我们有一个 running 实例,它的进程 ID 为 2183。

less

我们可以使用带有(扩展)选项的实用程序来全面了解进程的内存使用情况。我们将它与我们的实例的进程 ID 一起使用:

pmap

less

pmap -x 2183

在输出的底部,我们得到了 Resident Set Size 的总和,即正在使用的主 RAM 的数量。

然后,我们使用带有(output) 选项的实用程序,选择列,并将相同实例的进程 ID 传递给它:

ps

-o

RSS

less

ps -o rss 2183

我们得到不同的结果。这是作者的设计决定。这是来自 页面:

ps

ps

man

SIZE 和 RSS 字段不计算进程的某些部分,包括页表、内核堆栈、struct thread_info 和 struct task_struct。这通常是始终驻留的至少 20 KiB 内存。SIZE 是进程的虚拟大小(代码+数据+堆栈)。

其他实用程序的作者对如何测量 RAM 使用情况有自己的看法。

RSS、USS 和 PSS

驻留集大小 (RSS) 是分配给进程的 RAM 量,不包括交换空间,但包括进程正在使用的共享库所需的任何 RAM。

有关的为什么计算机的 RAM 已满是件好事

RSS 几乎总是过度报告 RAM 使用情况。如果两个或多个进程使用一个或多个共享库,RSS 将简单地将每个库的 RAM 使用量添加到每个进程的 RAM 使用量计数中。除了不准确之外,这还具有一定的讽刺意味。共享库意味着每个进程不需要加载自己的私有库实例。如果库已经在内存中,它将共享那个库——并减少 RAM 开销。

比例集大小试图通过在共享它的进程之间划分共享内存量来解决这个问题。如果有四个进程共享一些内存,PSS 报告每个进程都使用了 25% 的共享 RAM。这是一个近似值,但它比 RSS 描绘的图片更接近于正在发生的事情。

唯一集大小是进程独占使用的 RAM 量,无论它是由进程直接使用,还是由仅由进程使用的库使用。同样,它忽略了交换空间。它只对真正的物理 RAM 感兴趣。

USS 和 PSS 是 .的作者Matt Mackall 提出的术语和概念 。

smem

smem 实用程序

该实用程序报告进程、用户、映射或系统范围使用的内存。在我们测试的所有 发行版上,它都需要安装。要在 Ubuntu 上安装它,请使用以下命令:

smem

sudo apt install smem

要在 Fedora 上安装,您需要输入:

smem

须藤 dnf 安装 smem

要在 Manjaro 上安装,请使用:

smem

sudo pacman -Sy smem

不带选项使用会为您提供正在使用 RAM 的进程的列表。

smem

smem

信息表显示在终端窗口中。

这些列是:

  • PID:正在使用内存的进程的进程 ID。
  • User:拥有该进程的用户的用户名。
  • 命令:启动进程的命令行。
  • Swap:进程正在使用多少交换空间?
  • USS:唯一集大小。
  • PSS:比例集大小。
  • RSS:驻留集大小。

要查看以百分比标示的大小,请使用(percentage) 选项。

-p

smem -p

以字节为单位的大小已替换为百分比。

要查看以更人性化的形式呈现的图形,请使用(缩写)选项。这会缩小数字并添加单位指示符。

-k

smem -k

大小以兆字节、千兆字节等显示,而不是原始字节。

要添加总计行,请使用(总计)选项。

-t

smem -k -t

输出的最后一行显示每列的总计。

完善报告

您可以要求报告用户、映射(库)或系统范围的内存使用情况。要按用户过滤输出,请使用(user) 选项。请注意,如果您想查看的不仅仅是您自己的使用情况,您需要使用.

smem

-u

smem

sudo

smem -u

sudo smem -u

如您所见,对于超过八个字符的用户名,输出会变形。

要查看映射到正在使用的库的使用情况,无论哪些进程正在使用这些库,也不管哪些用户拥有这些进程,请使用(mapping) 选项。

-m

smem -m -k -t

我们还要求提供人类可读的值和总数。

要查看系统范围的内存使用情况,请使用(system-wide) 选项。

-w

smem -w -k -t

报告单个程序

使用一点命令行魔法,我们可以报告单个程序及其所有子进程。我们将输出从 管道输入 并要求只显示最后一行。我们将告诉使用人类可读的值并提供总数。总数将是最后一行,这就是将为我们显示的行。

smem

tail

tail

smem

tail

我们将使用(columns) 选项并告诉它我们希望将哪些列包含在我们的输出中。我们将把它限制在 Proportional Set Size 列。( process filter) 选项允许我们给. 仅包含匹配的输出行。

-c

smem

-P

smem

smem -c pss -P firefox -k -t | 尾-n 1

这是找出程序及其子进程的 RAM 消耗的快速而简洁的方法。

生成图表

您可以通过or选项来生成图表。不得不说,如果类别太多,图表很快就会变得难以理解,但它们对于快速的视觉概览很有用。

--pie

--bar

smem

命令格式为:

smem --pie 名称 -s uss

饼图显示在其自己的查看器窗口中。

要查看其他图,请使用或代替。要查看条形图,请使用代替。

pss

rss

uss

--bar

--pie

为此,您需要安装Python以及 库。这些已经安装在我们测试的 Ubuntu、Fedora 和 Manjaro 发行版上。

matplotlib

好东西装在小包装里

该 实用程序还有一些技巧,我们鼓励您查看它的页面。它的主要功能是我们在此处概述的内容,它是您的 CLI 工具箱中的一个很棒的小工具。

smem

man

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
黑龙江美女医生遭折磨12个小时,多处部位被咬,作案5人预谋已久

黑龙江美女医生遭折磨12个小时,多处部位被咬,作案5人预谋已久

牧愚君
2024-05-06 00:17:56
唐尚珺参加第16次高考,一老师曝光其行程,过去一年或在衡中复读

唐尚珺参加第16次高考,一老师曝光其行程,过去一年或在衡中复读

飞鱼的说说
2024-06-06 10:36:00
三元里禁电瓶车之后当地租金大跌,有单间已经降到300一月

三元里禁电瓶车之后当地租金大跌,有单间已经降到300一月

映射生活的身影
2024-06-07 11:09:09
医生呼吁:过了60岁的人,宁可吃饱就睡,也不要出门做这3件事

医生呼吁:过了60岁的人,宁可吃饱就睡,也不要出门做这3件事

荷兰豆爱健康
2024-06-05 13:38:49
A股:节后或将大级别下跌

A股:节后或将大级别下跌

生活中的栗子
2024-06-07 18:01:21
沁县政协主席身亡后续:动机曝光,评论区沦陷,凶手身份不简单!

沁县政协主席身亡后续:动机曝光,评论区沦陷,凶手身份不简单!

影孖看世界
2024-06-06 16:54:03
好色私枭赖昌星:拿下多个歌星影星,为抢女人抓走厦门黑老大

好色私枭赖昌星:拿下多个歌星影星,为抢女人抓走厦门黑老大

老黄有话
2023-10-23 08:00:13
中国两个友好邻国倒向西方,决定援乌对抗俄罗斯,我们应高度重视

中国两个友好邻国倒向西方,决定援乌对抗俄罗斯,我们应高度重视

星辰故事屋
2024-06-06 11:49:51
徐江:谢鹏飞不罚任意球没有错,但你站出来起码证明你有向上的心

徐江:谢鹏飞不罚任意球没有错,但你站出来起码证明你有向上的心

直播吧
2024-06-07 13:57:06
中方欢迎更多国家支持并加入中国、巴西关于解决乌克兰危机的共识

中方欢迎更多国家支持并加入中国、巴西关于解决乌克兰危机的共识

新华社
2024-06-08 02:02:05
德外长访澳回国后放话:必须对华全面调整政策,德国不能重蹈覆辙

德外长访澳回国后放话:必须对华全面调整政策,德国不能重蹈覆辙

功标青史
2024-06-07 18:10:47
国常会:充分认识房地产市场供求关系新变化,继续研究储备新的去库存、稳市场政策措施

国常会:充分认识房地产市场供求关系新变化,继续研究储备新的去库存、稳市场政策措施

澎湃新闻
2024-06-07 19:36:33
李承铉与儿女合照首次曝光!2岁儿子体型壮实,Lucky越长越像爸爸

李承铉与儿女合照首次曝光!2岁儿子体型壮实,Lucky越长越像爸爸

橙子娱乐菌
2024-06-07 16:34:01
千万粉丝网红“一栗小莎子”,孕妇纯欲风惹非议,粉丝力挺

千万粉丝网红“一栗小莎子”,孕妇纯欲风惹非议,粉丝力挺

红大娘娱乐
2024-06-07 00:10:43
事实证明,陈道明没说错,王一博“落选”白玉兰,就是最好的例子

事实证明,陈道明没说错,王一博“落选”白玉兰,就是最好的例子

咖啡店的老板娘
2024-06-06 23:30:34
70年代,香港女演员,萧芳芳的珍贵留影

70年代,香港女演员,萧芳芳的珍贵留影

视点历史
2024-05-08 22:30:53
刚刚消息太热闹了,无数股民将睡不着觉,下周A股要开始大涨了

刚刚消息太热闹了,无数股民将睡不着觉,下周A股要开始大涨了

静守时光落日
2024-06-07 15:42:18
原来医院里有这么多卧龙凤雏!网友分享真实经历,看得我一时语塞

原来医院里有这么多卧龙凤雏!网友分享真实经历,看得我一时语塞

芒果味的汤圆子
2024-06-07 03:41:12
两性科普:和结扎后的男人do i,是种什么样的体验?

两性科普:和结扎后的男人do i,是种什么样的体验?

坟头长草
2024-06-06 12:17:41
体育总局出手 中国女排主教练首次公开认错担责 蔡斌五点声明解析

体育总局出手 中国女排主教练首次公开认错担责 蔡斌五点声明解析

排球评论员
2024-06-07 18:05:27
2024-06-08 03:00:49
科技互联时代
科技互联时代
安静的科技狗。关注科技资讯
68文章数 101017关注度
往期回顾 全部

科技要闻

6家大模型抢答高考作文,谁是你心中的Top1

头条要闻

拜登称"一带一路"倡议已成为令人讨厌的计划 中方回应

头条要闻

拜登称"一带一路"倡议已成为令人讨厌的计划 中方回应

体育要闻

优势在我?中国足球有自己的节奏

娱乐要闻

汤唯抵达巴黎将担任奥运火炬手

财经要闻

身陷退市股的投资者:我的钱瞬间没了

汽车要闻

2.0T混动售20.98万元起 福特蒙迪欧运动版上市

态度原创

家居
艺术
游戏
时尚
旅游

家居要闻

柔和婉转 让阳光洒满空间

艺术要闻

穿越时空的艺术:《马可·波罗》AI沉浸影片探索人类文明

舅舅党表示《无主之地4》不一定会公布:《文明7》来了

接下来几个月,比看赛事更有意思的是......

旅游要闻

上海迪士尼年卡最高档位卡种八折优惠改为满减

无障碍浏览 进入关怀版