首頁 » Linux » Free – 使用free指令知道 linux 用了多少記憶體
要如何知道目前記憶體使用了多少呢?
只要使用底下的指令就可以清楚知道了

free -參數
參數的地方可以下 -b -m -g
詳細使用方法就用 man free 看一下囉
free -m
上面這張圖顯示我的記憶體使用情況為
我總共有 2012MB 的記憶體,我使用了581MB,還剩下1430MB可以用,我沒有共享記憶體
使用的 RAM 中 buffer 占40MB,cache 占353MB
除去 buffer/cache 占用的 RAM,系统共使用187MB。而 cache 和 buffer 共使用 1824MB。
最後是我的swap,可以看到的是… 我的swap都還沒用到
為什麼使用的記憶體會隨著開機時間越來越大呢!?
記憶體管理的概觀
當系統開機一段時間後,像是「top」這種傳統的 Unix 工具常常回報少的可憐的可用記憶體數值,在我寫這篇文章的系統中,就算我總共有 512 MB 的記憶體在我的系統裡,但約開機m後三個小時,我只剩下 60 MB 的可用記憶體,那些記憶體到底跑到那裡去了?
用掉最多記憶體的地方是磁碟快取 (disk cache),目前它總共用了超過 290 MB 的記憶 (在 top 裡的「cached」項目中),快取記憶體 (cached memory) 基本上是空閒的,當有新/執行中的程式需要記憶體的話,它會快速的被取回來。
為什麼 Linux 使用這麼多的記憶體來當作磁碟快取 (disk cache) 呢?主要的原因便是:假如 RAM 沒有被使用的話,它便是閒放在那邊浪費著不用。如果把資料放在用 RAM 組成的磁碟上,它的存取速度比直接從硬碟上存取還要快上 1000 倍。假如在快取裡找不到該資料,當然還是得直接從磁碟裡存取,但就如同上面說的,您將可以節省些微的存取時間。
參考資料:
Linux Memory Usage 記憶體使用率 http://ssorc.tw/rewrite.php/read-599.html#ixzz0nVdMLEjw
0 留言▼