Heim  >  Artikel  >  System-Tutorial  >  Linux-Speicherverwaltungsartefakt: smem-Tool

Linux-Speicherverwaltungsartefakt: smem-Tool

王林
王林nach vorne
2024-02-12 11:30:041105Durchsuche

Hallo zusammen, das bin ich.

Heute möchte ich Ihnen ein sehr praktisches Speicherverwaltungstool in Linux-Systemen vorstellen: smem.

smem是一款命令行工具,可以生成多种内存使用报告。与其他现有的工具不同,smem ist ein Befehlszeilentool, das verschiedene Berichte zur Speichernutzung erstellen kann. Im Gegensatz zu anderen bestehenden Tools kann

PSS (Proportional Set Size) melden, was eine aussagekräftigere Metrik ist. Es misst genau die Speichermenge, die von Bibliotheken und Anwendungen in einem virtuellen Speichersystem verwendet wird.

Traditionell wird bei der Verwendung der Resident Set Size (RSS) als Maß für die Speichernutzung der tatsächliche Speicherverbrauch überschätzt, da der größte Teil des physischen Speichers häufig von mehreren Anwendungen gemeinsam genutzt wird. Im Gegensatz dazu misst der PSS-Parameter den von jeder Anwendung in jedem gemeinsam genutzten Speicherbereich zugewiesenen Speicher, was eine realistischere und genauere Metrik bietet.

1. Sem-Tool installieren

smem 默认在存储库中,因此你可以使用 yumWenn Sie Fedora 19 oder höher verwenden, befindet sich

standardmäßig im Repository, sodass Sie yum um es zu installieren:

$ sudo yum install smem
apt-get 命令来安装 smemFür Ubuntu-Benutzer können Sie apt-get Befehl zum Installieren

:

$ sudo apt-get install smem

Wenn es nicht normal installiert werden kann, können Sie den Quellcode herunterladen und direkt unter der Adresse installieren: https://www.selenic.com/smem/download/

2. Häufige Verwendung des smem-Tools

smemStandardmäßig zeigt

jeden laufenden Prozess und den verwendeten Speicher an. Hier können Sie die Größe von RSS im Verhältnis zu USS und PSS erkennen und sehen, dass sie deutlich größer ist als die der anderen beiden. Linux-Speicherverwaltungsartefakt: smem-Tool
$ smem

smemDarüber hinaus kann

auch den von jeder Bibliothek verwendeten Speicher anzeigen. Dieses Ergebnis ist relativ langwierig und kann je nach System einige Zeit in Anspruch nehmen.

$ smem -m
grep 命令使用,同时使用 -pDieser Befehl erzeugt zu viele Ergebnisse. Wenn wir die Speichernutzung einer bestimmten Anwendung wie Firefox sehen möchten, können wir die Option

verwenden, um die Speichernutzung in Prozentform anzuzeigen. Linux-Speicherverwaltungsartefakt: smem-Tool
$ smem -m -p | grep firefox

smem 命令还可以显示每个用户的内存使用情况,需要使用 -u

Der Befehl kann auch die Speichernutzung jedes Benutzers anzeigen. Sie müssen -u Optionen: 🎜
$ smem -u -p
Linux-Speicherverwaltungsartefakt: smem-Tool

你还可以使用 -w 选项查看系统内存使用情况:

$ smem -w -p
Linux-Speicherverwaltungsartefakt: smem-Tool

3. 结果可视化输出

显示数字毕竟不直观,我们还可以使用 smem 生成图形图表来显示内存使用情况,一目了然。要达到这个目的,我们需要使用到除了不能生孩子啥都可以干的 Python 。

但光有 Python 还不行,还需要安装用于生成图表的 matplotlib 库。

Fedora 用户可以通过运行以下命令来安装它:

$ sudo yum install python-matplotlib

Ubuntu 用户可以通过运行下面命令获得它:

$ sudo apt-get install python-matplotlib

库安装之后,现在就可以以条形图或饼图的形式将获得的内存使用情况以可视化表示。

3.1 饼形图

使用 smem 以饼图的形式查看内存使用情况,需要加上 --pie 选项,如下所示:

$ smem --pie name -s pss

命令运行之后将生成一个饼图。请注意,这条命令里我们还加了 -s pss ,意思是显示 PSS 的内存使用情况。要获取 USS 和 RSS 的饼图,只需将命令中的 pss 替换为 uss 或 rss 即可。

Linux-Speicherverwaltungsartefakt: smem-ToolLinux-Speicherverwaltungsartefakt: smem-Tool

从两个饼图中,可以看到 RSS 报告还有 41.74% 的未使用内存,而 PSS 报告有 53.02% 的未使用内存。可以看出来,RSS 显示的可用内存偏小,但实际还有很充足的内存空间。

3.2 柱状图

smem 的另一个很酷的特性是以柱状图的形式生成输出。有了这个功能,你可以一次性查看 USS、PSS 和 RSS 报告的内存使用情况。

要实现这个功能,需要加上 --bar 选项:

$ smem --bar pid -c "pss uss rss"

上面的命令将给出带有进程 ID 号的内存使用情况的输出结果。如果想要查看进程的名称,可以将 pid 替换为 name 即可。

命令运行之后,可以生成如下图所示的条柱状图。

Linux-Speicherverwaltungsartefakt: smem-Tool

Das obige ist der detaillierte Inhalt vonLinux-Speicherverwaltungsartefakt: smem-Tool. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:lxlinux.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen