虛擬記憶體的實時監控工具 vmstat

2021-10-04 06:58:25 字數 1778 閱讀 7388

vmstat命令用來獲得unix系統有關程序、虛存、頁面交換空間及cpu活動的資訊。這些資訊反映了系統的負載情況。vmstat首次執行時顯示自系統啟動開始的各項統計資訊,之後執行vmstat將顯示自上次執行該命令以後的統計資訊。使用者可以通過指定統計的次數和時間來獲得所需的統計資訊。

[root@xieqichao ~

]# vmstat 1

3

這是vmstat最為常用的方式,其含義為每隔1秒輸出一條,一共輸出3條後程式退出。

procs --

----

----

-memory--

----

----

---swap--

----

-io--

----system--

----

-cpu-----

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

000531760

67284

231212

1080

0260

11114815

86800

00531752

67284

23121200

00335701

99000

00531752

67284

23121200

00407300

1000

0[root@xieqichao ~

]# vmstat 1 #其含義為每隔1秒輸出一條,直到按ctrl

+c後退出。

下面將給出輸出**中每一列的含義說明:

有關程序的資訊有:(procs)

r:  在就緒狀態等待的程序數。

b: 在等待狀態等待的程序數。

有關記憶體的資訊有:(memory)
swpd:  正在使用的swap大小,單位為kb。

free: 空閒的記憶體空間。

buff: 已使用的buff大小,對塊裝置的讀寫進行緩衝。

cache: 已使用的cache大小,檔案系統的cache。

有關頁面交換空間的資訊有:(swap)
si:  交換記憶體使用,由磁碟調入記憶體。

so: 交換記憶體使用,由記憶體調入磁碟。

有關io塊裝置的資訊有:(io)
bi:  從塊裝置讀入的資料總量(讀磁碟) (kb/s)

bo: 寫入到塊裝置的資料總理(寫磁碟) (kb/s)

有關故障的資訊有:(system)
in: 在指定時間內的每秒中斷次數。

sy: 在指定時間內每秒系統呼叫次數。

cs: 在指定時間內每秒上下文切換的次數。

有關cpu的資訊有:(cpu)
us:  在指定時間間隔內cpu在使用者態的利用率。

sy: 在指定時間間隔內cpu在核心態的利用率。

id: 在指定時間間隔內cpu空閒時間比。

wa: 在指定時間間隔內cpu因為等待i/o而空閒的時間比。

vmstat 可以用來確定乙個系統的工作是受限於cpu還是受限於記憶體:如果cpu的sy和us值相加的百分比接近100%,或者執行佇列(r)中等待的程序數總是不等於0,且經常大於4,同時id也經常小於40,則該系統受限於cpu;如果bi、bo的值總是不等於0,則該系統受限於記憶體。

程序的虛擬記憶體

程序屬性資訊的task struct結構體,其中包含程序使用的記憶體資訊。在32位的作業系統中,當程序建立的時候 程式執行時 系統會為每乙個程序分配大小為4gb的虛擬記憶體空間,用於儲存程序屬性資訊。c語言中的變數,通常使用 運算子來獲得其位址,那麼,這個位址就是虛擬位址,在簡單的微控制器中,編寫的...

增加linux的虛擬記憶體

問題原型 由於伺服器配置不好,記憶體僅僅2g,在安裝oracle資料庫以後,系統記憶體使用100 處理辦法 增加系統的虛擬記憶體 方法如下 就需要增加乙個swap交換檔案。目的是加大虛擬記憶體,原來的是2g,現在擴充套件成了4g。1 進入var目錄 cd var 2 獲取2048m的檔案塊 dd i...

Linux虛擬記憶體的作用

要深入了解linux記憶體執行機制,需要知道下面提到的幾個方面 首先,linux系統會不時的進行頁面交換操作,以保持盡可能多的空閒物理記憶體,即使並沒有什麼事情需要記憶體,linux也會交換出暫時不用的記憶體頁面。這可以避免等待交換所需的時間。其次,linux進行頁面交換是有條件的,不是所有頁面在不...