vmstat(virtual memory statistics 虛擬記憶體統計) 命令用來顯示linux系統虛擬記憶體狀態,也可以報告關於程序、記憶體、i/o等系統整體執行狀態。
vmstat [-a] [-n] [-t] [-s unit] [delay [ count]]
vmstat [-s] [-n] [-s unit]
vmstat [-m] [-n] [delay [ count]]
vmstat [-d] [-n] [delay [ count]]
vmstat [-p disk partition] [-n] [delay [ count]]
vmstat [-f]
vmstat [-v]
-a:顯示活躍和非活躍記憶體
-f:顯示從系統啟動至今的fork數量 。
-m:顯示slabinfo
-n:只在開始時顯示一次各欄位名稱。
delay:重新整理時間間隔。如果不指定,只顯示一條結果。
count:重新整理次數。如果不指定重新整理次數,但指定了重新整理時間間隔,這時重新整理次數為無窮。
-p:顯示指定磁碟分割槽統計資訊
-s:使用指定單位顯示。引數有 k 、k 、m 、m ,分別代表1000、1024、1000000、1048576位元組(byte)。預設單位為k(1024 bytes)
-v:顯示vmstat版本資訊。
1.每隔1秒重新整理一次,重新整理5次
輸出內容表示系統虛擬記憶體和cpu的平均情況。
各項意義如下:
procs: 使用記憶體io的程序統計
r : 獲取了io資源而等待cpu執行的程序數目memory: 虛擬記憶體相關統計b : 因為等待io資源而阻塞休眠的程序數目
swpd : 用掉的虛擬記憶體大小。也就是交換分區內用掉的大小swap: 交換分割槽的使用情況free: 空閒的記憶體大小。
buff : 被用於系統buffer的大小。
比如write系統呼叫的時候,系統不會立馬寫磁碟,而是先緩衝到buffer中然後在合適的時候寫入磁碟。
cache : 被用於系統cache的大小
free的大小表示一定可以使用的大小,即malloc不會出錯的大小。但是超過free時malloc會一定出錯麼?也不一定。因為系統的buff和cache在必要 的時候也會優先給malloc使用。只有在不可使用時才會出錯,如被設定為共享記憶體。因此觀察時要綜合這四個位置一起作判斷。當分配記憶體時首先使用free,free不夠的時候從buff和cache中勻得,當還不夠時選擇從swap分割槽中取得。
si : 每秒從硬碟中交換到記憶體中的大小。io: 塊裝置io統計so :每秒從記憶體中交換到硬碟中的大小。
bi : 每秒從塊裝置讀入記憶體的大小system: 作業系統中斷和上下文切換統計bo : 每秒從記憶體中寫入快裝置的大小
什麼是塊裝置?linux下的裝置主要分成字元裝置和塊裝置(可以參考ldd《linux device driver》),類似於socket屬於流裝置,而磁碟一般屬於塊裝置。因此這個引數可以用來衡量寫磁碟的效能。
in : 操作的系統每秒觸發的中斷數目cs : 作業系統每秒上下文切換次數,這裡上下文切換可以認為是系統態到使用者態或者反過來的切換
us : 使用者態**執行占用的cpu時間。2.顯示活躍和非活躍記憶體sy :系統態**執行占用的cpu時間。
id : cpu空閒時間,也就是執行系統idle的時間,cpu是不可能停機的。
wa : 耗費在等待io上的時間
st : 其他的等待時間。
3.顯示記憶體的詳細資訊
4.檢視磁碟的讀/寫
5.檢視指定磁碟的讀寫
linux命令 vmstat命令
vmstat是virtual meomory statistics 虛擬記憶體統計 的縮寫,可對作業系統的虛擬記憶體 程序 cpu活動進行監控。他是對系統的整體情況進行統計,不足之處是無法對某個程序進行深入分析。物理記憶體和虛擬記憶體區別 我們知道,直接從物理記憶體讀寫資料要比從硬碟讀寫資料要快的多...
linux監控命令 vmstat
vmstat virtual memory statistics 虛擬記憶體統計 命令用來顯示linux系統虛擬記憶體狀態,也可以報告關於程序 記憶體 i o等系統整體執行狀態。vmstat a n t s unit delay count vmstat s n s unit vmstat m n ...
Linux系列 命令 vmstat 使用方法
r 表示執行佇列 就是說多少個進 的分配到cpu 我測試的伺服器目前cpu比較空閒,沒什麼程式在跑,當這個值超過了cpu數目,就會出現cpu瓶頸了。這個也和top的負載有關係,一般負載超過了3就比較高,超過了5就高,超過了10就不正常了,伺服器的狀態很危險。top的負載類似每秒的執行佇列。如果執行佇...