自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Linux內(nèi)存管理神器:smem工具

系統(tǒng) Linux
今天給大家分享一款 Linux 系統(tǒng)里的內(nèi)存管理神器:smem 。smem 是Linux系統(tǒng)上的一款可以生成多種內(nèi)存耗用報(bào)告的命令行工具。

大家好,我是良許。今天給大家分享一款 Linux 系統(tǒng)里的內(nèi)存管理神器:smem 。smem 是Linux系統(tǒng)上的一款可以生成多種內(nèi)存耗用報(bào)告的命令行工具。與現(xiàn)有工具不一樣的是 smem 可以報(bào)告 PSS【Proportional Set Size(按比例占用大小)】,這是一種更有意義的指標(biāo)??梢院饬刻摂M內(nèi)存系統(tǒng)的庫和應(yīng)用程序所占用的內(nèi)存數(shù)量。由于大部分的物理內(nèi)存通常在多個(gè)應(yīng)用程序之間共享,名為駐留集大小(RSS)的這個(gè)標(biāo)準(zhǔn)的內(nèi)存耗用衡量指標(biāo)會(huì)大大高估內(nèi)存耗用情況。PSS這個(gè)參數(shù)而是衡量了每個(gè)應(yīng)用程序在每個(gè)共享內(nèi)存區(qū)中的「公平分配」,給出了一個(gè)切合實(shí)際的衡量指標(biāo)。

1. 安裝 smem 工具

如果你使用的是 Fedora 19 以上系統(tǒng), smem 默認(rèn)在存儲(chǔ)庫中,因此你可以使用 yum 來安裝它:

$ sudo yum install smem

對(duì)于 Ubuntu 用戶,可以使用 apt-get 命令來安裝 smem :

$ sudo apt-get install smem

如果無法正常安裝的話,可以下載它的源碼直接安裝,地址為:https://www.selenic.com/smem/download/

2. smem 工具常見用法

默認(rèn)情況下, smem 將顯示每個(gè)正在運(yùn)行的進(jìn)程及所使用的內(nèi)存。在這里,你可以留意 RSS 相對(duì)于 USS 和 PSS 的大小,可以看到它明顯高于另外二者。

$ smem

此外, smem 還可顯示每個(gè)庫所使用的內(nèi)存。這個(gè)結(jié)果比較長,可能需要耗費(fèi)一些時(shí)間,取決于你的系統(tǒng)。

$ smem -m

這個(gè)命令產(chǎn)生的結(jié)果太多了,如果我們想要查看特定應(yīng)用程序使用內(nèi)存情況,例如 Firefox,那么我們可以配合 grep 命令使用,同時(shí)使用 -p 選項(xiàng)以百分比形式查看內(nèi)存使用情況。

$ smem -m -p | grep firefox

smem 命令還可以顯示每個(gè)用戶的內(nèi)存使用情況,需要使用 -u 選項(xiàng):

$ smem -u -p

你還可以使用 -w 選項(xiàng)查看系統(tǒng)內(nèi)存使用情況:

$ smem -w -p

3. 結(jié)果可視化輸出

顯示數(shù)字畢竟不直觀,我們還可以使用 smem 生成圖形圖表來顯示內(nèi)存使用情況,一目了然。要達(dá)到這個(gè)目的,我們需要使用到除了不能生孩子啥都可以干的 Python 。但光有 Python 還不行,還需要安裝用于生成圖表的 matplotlib 庫。Fedora 用戶可以通過運(yùn)行以下命令來安裝它:

$ sudo yum install python-matplotlib

Ubuntu 用戶可以通過運(yùn)行下面命令獲得它:

$ sudo apt-get install python-matplotlib

庫安裝之后,現(xiàn)在就可以以條形圖或餅圖的形式將獲得的內(nèi)存使用情況以可視化表示。

3.1 餅形圖

使用 smem 以餅圖的形式查看內(nèi)存使用情況,需要加上 --pie 選項(xiàng),如下所示:

$ smem --pie name -s pss

命令運(yùn)行之后將生成一個(gè)餅圖。請(qǐng)注意,這條命令里我們還加了 -s pss ,意思是顯示 PSS 的內(nèi)存使用情況。要獲取 USS 和 RSS 的餅圖,只需將命令中的 pss 替換為 uss 或 rss 即可。

從兩個(gè)餅圖中,可以看到 RSS 報(bào)告還有 41.74% 的未使用內(nèi)存,而 PSS 報(bào)告有 53.02% 的未使用內(nèi)存??梢钥闯鰜?,RSS 顯示的可用內(nèi)存偏小,但實(shí)際還有很充足的內(nèi)存空間。

3.2 柱狀圖

smem 的另一個(gè)很酷的特性是以柱狀圖的形式生成輸出。有了這個(gè)功能,你可以一次性查看 USS、PSS 和 RSS 報(bào)告的內(nèi)存使用情況。要實(shí)現(xiàn)這個(gè)功能,需要加上 --bar 選項(xiàng):

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

上面的命令將給出帶有進(jìn)程 ID 號(hào)的內(nèi)存使用情況的輸出結(jié)果。如果想要查看進(jìn)程的名稱,可以將 pid 替換為 name 即可。命令運(yùn)行之后,可以生成如下圖所示的條柱狀圖。

責(zé)任編輯:武曉燕 來源: 良許Linux
相關(guān)推薦

2013-12-10 10:41:28

Linux終端smem內(nèi)存

2021-10-25 10:33:26

smem 命令Linux

2013-10-11 17:32:18

Linux運(yùn)維內(nèi)存管理

2023-02-06 08:23:22

ChatGPT系統(tǒng)Linux

2019-08-27 15:12:12

Linux操作系統(tǒng)Windows

2023-10-18 13:31:00

Linux內(nèi)存

2021-09-27 13:02:10

Linux工具命令

2022-08-08 08:31:00

Linux內(nèi)存管理

2017-05-18 16:30:29

Linux內(nèi)存管理

2022-07-04 07:56:04

DevOpsDevStream工具鏈管理器

2017-06-27 10:23:01

Linuxps_memPython

2009-12-25 17:15:03

Linux內(nèi)存

2024-05-06 08:09:10

Linux內(nèi)存管理

2018-08-09 16:32:49

內(nèi)存管理框架

2020-07-28 08:10:33

Linux內(nèi)存虛擬

2020-04-08 09:20:25

Linux內(nèi)存系統(tǒng)

2020-06-28 09:30:37

Linux內(nèi)存操作系統(tǒng)

2009-12-25 15:24:16

內(nèi)存管理

2021-03-17 21:34:44

Linux內(nèi)存管理

2013-09-29 15:11:46

Linux運(yùn)維內(nèi)存管理
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)