linux記憶體觀察常用命令彙總

2021-09-29 07:52:03 字數 1606 閱讀 7263

1、vmstat

看系統總體記憶體情況,包括物理記憶體、虛擬記憶體、換頁等情況

vmstat 1 10:每1秒取樣一次輸出,持續10次

vmstat -d:看磁碟情況

vmstat -m:看記憶體詳細情況,包括slab每個2的冪分配了多少個

vmstat -s m:系統記憶體大的時候無法對齊, 按照mb顯示可以對齊

vmstat基本資訊的解釋:

程序相關:

r:當前在核心執行佇列上的task數量,睡眠的程序不在此列

b:當前等待i/o的程序數量

記憶體相關:

swpd:使用的虛擬記憶體大小

free:當前可用記憶體

buff:用於緩衝的記憶體

cache:用於頁快取的記憶體

交換相關:

si:從虛擬記憶體寫入的大小,每秒

so:換出到虛擬記憶體的大小,每秒

2、sar

觀測當前記憶體活動,同時保留一段時間的歷史記錄,可以回溯,如下:

pgpgin/s:頁面換入 1000byte/s

pspgout/s:頁面換出 1000byte/s

fault/s:缺頁

majflt/s:嚴重缺頁

pgfree/s:頁面加入空閒鍊錶

pgscank/s:後台kswapd守護程序掃瞄過的頁面數量

pgscand/s:直接頁面掃瞄

pgsteal/s:頁面**

vmeff:頁面**效率

3、slabtop

輸出核心slab快取使用情況。slab是linux核心用於解決小物件大量複製銷毀造成記憶體碎片問題的解決方案,每個cache內多個slab,每個slab中包含乙個或者多個連續的頁框,頁框中預先分配多個同類物件。如下:

可以看到諸如inode,dentry,程序描述符這樣的同類小物件的分配情況

4、ps

檢視所有程序占用記憶體和cpu的細節,如下

%cpu:占用cpu百分比,注意是占用乙個cpu的百分比,不是系統中所有cpu的加和

%mem:占用記憶體百分比,記憶體是物理記憶體

vsz:程序占用虛擬空間大小

rss:程序常駐記憶體大小,是在物理記憶體中占用的大小

5、top

監控每個程序占用記憶體和cpu資訊,shift+m可以排序將占用高的程序在前面顯示

6、pmap

展示程序虛擬空間的對映關係,和/proc/pid/maps內容一樣,pmap對齊做的更好,更易讀,如下

包含可執行段、動態庫、執行庫libc和匿名堆疊

Linux常用命令彙總

1.基礎指令 cd 切換路徑 cd 退出 cd 退回root pwd 顯示當前路徑 ls 顯示資料夾下所有檔案 more 顯示檔案內容 head 顯示檔案前若干行 vim 開啟vim編輯器,有三個模式命令模式 輸入模式 末行模式。命令模式下 i 進入輸入模式 進入末行模式,可用 q 退出 wq儲存退...

linux 常用命令彙總

ls 顯示檔案和目錄列表 cd 切換目錄 顯示當前工作目錄 建立目錄 如果主目錄沒有自動建立 mkdir p test test1 複製目錄或檔案。遞迴處理 cp r 建立檔案 touch 1.text 清空檔案內容 echo 1.text 移動檔案或目錄,檔案或目錄改名 刪除檔案 刪除該目錄下的所...

linux常用命令彙總

tar 解包 tar xvf filename.tar 打包 tar cvf filename.tar dirname 注 tar是打包,不是壓縮!gz解壓1 gunzip filename.gz 解壓2 gzip d filename.gz 壓縮 gzip filename tar.gz 和 tg...