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

使用 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.

相关推荐
热点推荐
持续关注!中俄联合声明内容即将释放

持续关注!中俄联合声明内容即将释放

直新闻
2024-05-16 14:55:30
中国球员拿下独行侠合同!崔永熙不用退了!正式认定NBA选秀资格

中国球员拿下独行侠合同!崔永熙不用退了!正式认定NBA选秀资格

篮球实战宝典
2024-05-16 22:32:17
5岁网红佩琪因癌症去世,妈妈透露最后时刻惹泪目:躺在怀里走了

5岁网红佩琪因癌症去世,妈妈透露最后时刻惹泪目:躺在怀里走了

裕丰娱间说
2024-05-17 09:22:01
小米汽车员工曝工资收入:除工资外已彻底华为,公司账留18月现金

小米汽车员工曝工资收入:除工资外已彻底华为,公司账留18月现金

农村阿祖
2024-05-17 19:48:54
国家队下场!史诗级救市,来了

国家队下场!史诗级救市,来了

国民经略
2024-05-17 14:16:30
3-0!世联赛首支3连胜队:日本升至第一,总积分暴涨逼近中国女排

3-0!世联赛首支3连胜队:日本升至第一,总积分暴涨逼近中国女排

侃球熊弟
2024-05-17 20:27:23
普京专机抵达哈尔滨,黑龙江省长到机场迎接,现场铺设长长的红毯

普京专机抵达哈尔滨,黑龙江省长到机场迎接,现场铺设长长的红毯

域观天下
2024-05-17 13:54:11
人民日报翻车?赞扬挂科14门大学生考研成功,结果被扒是靠拼爹逆袭

人民日报翻车?赞扬挂科14门大学生考研成功,结果被扒是靠拼爹逆袭

可达鸭面面观
2024-05-15 15:45:16
房多多美股盘前涨超440%

房多多美股盘前涨超440%

每日经济新闻
2024-05-17 18:19:09
老人给美国纳税50年,快退休时才得知:你不是美国人,没退休金了!....啊?

老人给美国纳税50年,快退休时才得知:你不是美国人,没退休金了!....啊?

英国那些事儿
2024-05-16 23:04:33
打开国门,也融不进现代文明

打开国门,也融不进现代文明

更夫频道
2024-05-16 10:41:47
斯洛伐克内政部称枪手是个孤狼:他枪杀总理仅因坚决反对停止援乌

斯洛伐克内政部称枪手是个孤狼:他枪杀总理仅因坚决反对停止援乌

探索星空
2024-05-17 11:43:43
正式离队!广东宏远两边缘球员搬行李离开宿舍 无人送行十分凄凉

正式离队!广东宏远两边缘球员搬行李离开宿舍 无人送行十分凄凉

元爸体育
2024-05-18 00:04:08
意外!奥斯卡还没跟上港续约,亚足联就给他准备了一份惊喜大礼

意外!奥斯卡还没跟上港续约,亚足联就给他准备了一份惊喜大礼

评球论事
2024-05-17 16:54:06
雷吉-米勒:奥尼尔仅1个MVP让人吃惊&他该有3个 投票他控制不了

雷吉-米勒:奥尼尔仅1个MVP让人吃惊&他该有3个 投票他控制不了

直播吧
2024-05-18 01:08:11
没人要,10000张奥运纪念钞开拍,又又又崩了

没人要,10000张奥运纪念钞开拍,又又又崩了

天天纪念币
2024-05-16 09:49:53
枢密院十号:印度也要建第3艘航母了?

枢密院十号:印度也要建第3艘航母了?

环球网资讯
2024-05-17 00:07:26
德国首次在欧盟中行使“一票否决权”,反对对中国电动汽车产业实

德国首次在欧盟中行使“一票否决权”,反对对中国电动汽车产业实

户外小阿隋
2024-05-17 20:06:24
腾讯混元大模型升级!性能提升50%,可生成16s视频,大模型App月底见

腾讯混元大模型升级!性能提升50%,可生成16s视频,大模型App月底见

智东西
2024-05-17 16:08:13
记者扮男客潜入采耳店,偷拍服务全过程:女技师、柔式按摩别有洞天

记者扮男客潜入采耳店,偷拍服务全过程:女技师、柔式按摩别有洞天

古今档案
2024-05-07 13:04:58
2024-05-18 01:44:49
科技互联时代
科技互联时代
安静的科技狗。关注科技资讯
67文章数 101015关注度
往期回顾 全部

科技要闻

京东拼增长,大力出奇迹

头条要闻

媒体:菲律宾在南海闹事时 美国航母紧急"撤"到新加坡

头条要闻

媒体:菲律宾在南海闹事时 美国航母紧急"撤"到新加坡

体育要闻

中超疯狂星期五!5场28球,单场5球起步

娱乐要闻

《庆余年2》首播口碑出炉!有好有坏

财经要闻

重磅!楼市王炸来了 多部门出手救楼市

汽车要闻

内饰与配置全新升级 全新途观L PRO将于5月30日上市

态度原创

健康
艺术
游戏
教育
公开课

在中国,到底哪些人在吃“伟哥”?

艺术要闻

真诚度101%,35岁的诚品画廊为什么选择北京?

物华弥新:毛公鼎抽取价值分析!这个结论应该还算合理吧!

教育要闻

孩子很聪明,成绩却不佳,这是为什么?

公开课

父亲年龄越大孩子越不聪明?

无障碍浏览 进入关怀版