Memstat — 查看Linux共用庫的記憶體佔用

來源:互聯網
上載者:User

原文連結

我們在 top 中查看進程資訊的時候,會有 RSS 和 VSZ 兩個項目,前者是進程本身的記憶體佔用,而後者是算上共用庫的總佔用。Memstat 這個小程式可以幫你查看每個共用庫的記憶體佔用,讓他們現形。

們可以用 top 或者 系統管理器 這樣的工具來查看各個進程的記憶體佔用,不過記憶體中不光有你啟動並執行進程,還駐留著進程需要的共用庫,比如最基本的 libc.so。這些共用庫在實體記憶體上只存在一份拷貝,而被多個進程共用。我們在 top 中查看進程資訊的時候,會有 RSS 和 VSZ 兩個項目,前者是進程本身的記憶體佔用,而後者是算上共用庫的總佔用。

Memstat 這個小程式可以幫你查看每個共用庫的記憶體佔用,讓他們現形。

直接運行 memstat -w 即可列出當前所有共用庫的資訊:

memstat -w

如果不加 -w 參數,memstat 會把過長的資訊截斷到 80 列。效果:

第一列為記憶體佔用,隨後是共用庫的完整路徑,最後的數字是使用這個共用庫進程的 PID,可以看到,不少共用庫後面有很多 PID,表示這個共用庫被多個進程所共用。

你可以在 /etc/memstat.conf 中配置執行檔案的目錄,memstat 只會調查這些目錄下的可執行檔共用庫資訊。

如果你想查看那個共用庫佔用的記憶體最多,只需要用 sort 過濾一下:

memstat -w | sort -rn

即可~

Memstat 在 Debian 和 Ubuntu 中都有,不過我沒找到他的首頁,如果你的軟體倉庫中沒有 memstat,可以在本地下載,這個包是通過 deb2targz 轉過來的。(酷勤網備用:memstat_0.5_i386.tar.gz)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.