內存查看工具之free

基本使用

free是一個內存查看工具,使用起來非常簡單:

free -m ## 單位是M 也可以是-g -k
[KentZhang@ALVPCFLKF-192-168-29-61 707]$ free -m
             total       used       free     shared    buffers     cached
Mem:         32186      31827        359          0        704      22448
-/+ buffers/cache:       8674      23511
Swap:         7999         11       7988
	

解釋含義

從第三行起,解釋其含義。

第三行:total 爲 32186M,表示系統的物理內存;used 爲31827M,表示系統已經使用的內存,注意,這裏的used包含了後面的buffers和cached;shared表示共享內存的大小;buffers和cached則是表示用於特殊目的的內存,其中的一個目的是爲了提高IO訪問速度,buffers是用來寫的,cached是用來讀的。

第四行:used 爲8674M,表示系統實際使用的內存,這些內存無法再被使用,free爲23511M,表示可使用的內存。

顯然,23511 = 359 + 704 + 22448 8674 = 32186 - 23511

第五行: 是交換區的使用情況,這裏暫且不談。

cache和buffer

內存的訪問速速很難快,是納秒級別的,相對硬盤訪問的速度就很慢,是毫秒級的,前者是後者的數萬倍。爲了解決這個矛盾,於是系統就有了cache和buffer。

有時候,一個硬盤的相同的內容,有可能在短時間內被讀出多次,比如一個機器被多個用戶使用,於是系統在第一次從硬盤讀出數據時,就存入cache中,下次再讀的話,就直接從cache讀取,那麼速度就快了很多。

同樣,在向硬盤寫入數據時,每次寫入數據也是很費時的,要儘量減少寫硬盤的次數,於是系統不會立刻把數據寫入硬盤,而是先寫入buffer中,等到達到一定量的數據,再一次性寫入硬盤。這樣,對應用程序而言,寫數據的效率提高了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章