亚洲熟女综合色一区二区三区,亚洲精品中文字幕无码蜜桃,亚洲va欧美va日韩va成人网,亚洲av无码国产一区二区三区,亚洲精品无码久久久久久久

Linux系統(tǒng)命令介紹之vmstat命令詳解

今天小編要跟大家介紹的Linux命令是關(guān)于vmstat命令詳解。熟悉Linux系統(tǒng)和使用Linux系統(tǒng)工作的小伙伴都知道Linux的命令有很多,而真正在工作中用到的命令應(yīng)該不超過幾十個,為了讓大家更好的掌握這些命令,小編為大家分享了這篇Linux vmstat命令詳解的文章,希望能夠?qū)Υ蠹矣兴鶐椭?Linux入門新手和正在Linux學習的小伙伴快來看一看吧,希望能夠?qū)Υ蠹矣兴鶐椭?/p>

Linux系統(tǒng)命令介紹之vmstat命令詳解

vmstat是Virtual Meomory Statistics(虛擬內(nèi)存統(tǒng)計)的縮寫,可對操作系統(tǒng)的虛擬內(nèi)存、進程、CPU活動進行監(jiān)控。它是對系統(tǒng)的整體情況進行統(tǒng)計,不足之處是無法對某個進程進行深入分析。vmstat工具提供了一種低開銷的系統(tǒng)性能觀察方式。因為vmstat本身就是低開銷工具,在非常高負荷的服務(wù)器上,你需要查看并監(jiān)控系統(tǒng)的健康情況,在控制窗口還是能夠使用vmstat輸出結(jié)果。

一、虛擬內(nèi)存原理

上面說到了vmstat是虛擬內(nèi)存統(tǒng)計工具,那咱就不得不說一說虛擬內(nèi)存原理。

在系統(tǒng)中運行的每個進程都需要使用到內(nèi)存,但不是每個進程都需要每時每刻使用系統(tǒng)分配的內(nèi)存空間。當系統(tǒng)運行所需內(nèi)存超過實際的物理內(nèi)存,內(nèi)核會釋放某些進程所占用但未使用的部分或所有物理內(nèi)存,將這部分資料存儲在磁盤上直到進程下一次調(diào)用,并將釋放出的內(nèi)存提供給有需要的進程使用。

在Linux內(nèi)存管理中,主要是通過“調(diào)頁Paging”和“交換Swapping”來完成上述的內(nèi)存調(diào)度。調(diào)頁算法是將內(nèi)存中最近不常使用的頁面換到磁盤上,把活動頁面保留在內(nèi)存中供進程使用。交換技術(shù)是將整個進程,而不是部分頁面,全部交換到磁盤上。

分頁(Page)寫入磁盤的過程被稱作Page-Out,分頁(Page)從磁盤重新回到內(nèi)存的過程被稱作Page-In。當內(nèi)核需要一個分頁時,但發(fā)現(xiàn)此分頁不在物理內(nèi)存中(因為已經(jīng)被Page-Out了),此時就發(fā)生了分頁錯誤(Page Fault)。

當系統(tǒng)內(nèi)核發(fā)現(xiàn)可運行內(nèi)存變少時,就會通過Page-Out來釋放一部分物理內(nèi)存。經(jīng)管Page-Out不是經(jīng)常發(fā)生,但是如果Page-out頻繁不斷的發(fā)生,直到當內(nèi)核管理分頁的時間超過運行程式的時間時,系統(tǒng)效能會急劇下降。這時的系統(tǒng)已經(jīng)運行非常慢或進入暫停狀態(tài),這種狀態(tài)亦被稱作thrashing(顛簸)。

二、命令詳解

vmstat常用命令格式如下:

vmstat [-a] [-n] [-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:顯示活躍和非活躍內(nèi)存

-f:顯示從系統(tǒng)啟動至今的fork數(shù)量 。

-m:顯示slabinfo

-n:只在開始時顯示一次各字段名稱。

-s:顯示內(nèi)存相關(guān)統(tǒng)計信息及多種系統(tǒng)活動數(shù)量。

delay:刷新時間間隔。如果不指定,只顯示一條結(jié)果。

count:刷新次數(shù)。如果不指定刷新次數(shù),但指定了刷新時間間隔,這時刷新次數(shù)為無窮。

-d:顯示磁盤相關(guān)統(tǒng)計信息。

-p:顯示指定磁盤分區(qū)統(tǒng)計信息

-S:使用指定單位顯示。參數(shù)有 k 、K 、m 、M,分別代表1000、1024、1000000、1048576字節(jié)(byte)。默認單位為K(1024 bytes)

-V:顯示vmstat版本信息。

下面就對我們常用的使用方式進行詳細的總結(jié)。

三、使用實例

輸入命令:vmstat 1

輸出結(jié)果:

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----

r b swpd free buff cache si so bi bo in cs us sy id wa st

3 0 361396 196772 55820 359372 0 0 13 21 1 1 2 0 98 0 0

1 0 361392 196524 55820 359616 8 0 236 0 411 527 1 0 90 9 0

2 1 361392 196524 55828 359608 0 0 0 48 370 503 1 1 98 0 0

4 0 361392 196524 55828 359616 0 0 0 0 442 559 1 0 99 0 0

字段說明:

procs(進程)

r:當前運行隊列中線程的數(shù)目,代表線程處于可運行狀態(tài),但CPU還未能執(zhí)行.,這個值可以作為判斷CPU是否繁忙的一個指標;當這個值超過了CPU數(shù)目,就會出現(xiàn)CPU瓶頸了;這個我們可以結(jié)合top命令的負載值同步評估系統(tǒng)性能;

b:等待IO的進程數(shù)量;如果該值一直都很大,說明IO比較繁忙,處理較慢;

memory(內(nèi)存)

swpd:虛擬內(nèi)存已使用的大小;如果swpd的值不為0,但是si,so的值長期為0,這種情況不會影響系統(tǒng)性能;

free:空閑的物理內(nèi)存的大小;

buff:用作緩沖的內(nèi)存大小;

cache:用作緩存的內(nèi)存大小;如果cache的值大的時候,說明cache處的文件數(shù)多,如果頻繁訪問到的文件都能被cache處,那么磁盤的讀IO bi會非常小;

swap(交換空間,單位:KB);內(nèi)存夠用的時候,這2個值都是0,如果這2個值長期大于0時,系統(tǒng)性能會受到影響,磁盤IO和CPU資源都會被消耗。有時我們看到空閑內(nèi)存(free)很少的或接近于0時,就認為內(nèi)存不夠用了,不能光看這一點,還要結(jié)合si和so,如果free很少,但是si和so也很少(大多時候是0),那么不用擔心,系統(tǒng)性能這時不會受到影響的;

si:每秒從交換區(qū)寫到內(nèi)存的大小;

so:每秒寫入交換區(qū)的內(nèi)存大小;

io(單位:塊/秒)

bi:每秒讀取的塊數(shù);

bo:每秒寫入的塊數(shù);隨機磁盤讀寫的時候,這2個值越大,能看到CPU在IO等待的值也會越大;

system(系統(tǒng));這2個值越大,會看到由內(nèi)核消耗的CPU時間會越大;

in:每秒中斷數(shù),包括時鐘中斷;

cs:每秒上下文切換數(shù);

cpu(以百分比表示)

us:用戶進程執(zhí)行時間(user time);

sy:系統(tǒng)進程執(zhí)行時間(system time);

id:空閑時間(包括IO等待時間);

wa:等待IO時間;wa的值高時,說明IO等待比較嚴重,這可能由于磁盤大量作隨機訪問造成,也有可能磁盤出現(xiàn)瓶頸。

以上就是小編今天為大家分享的關(guān)于Linux系統(tǒng)命令介紹之vmstat命令詳解的文章,希望本篇文章能夠?qū)φ趶氖翷inux相關(guān)工作的小伙伴們有所幫助。想要了解更多Linux相關(guān)知識記得關(guān)注馬哥教育官網(wǎng)。最后祝愿小伙伴們工作順利!

聲明:文章來源于網(wǎng)絡(luò),侵刪!

相關(guān)新聞

歷經(jīng)多年發(fā)展,已成為國內(nèi)好評如潮的Linux云計算運維、SRE、Devops、網(wǎng)絡(luò)安全、云原生、Go、Python開發(fā)專業(yè)人才培訓機構(gòu)!