linux下free的解釋

2021-09-01 07:06:03 字數 1337 閱讀 2832

linux下free的解釋:

$ free -m

total       used       free     shared    buffers     cached

mem:         1002        769        232          0         62        421

-/+ buffers/cache:        286        715

swap:         1153          0       1153

第一部分mem行:

total 記憶體總數: 1002m

used 已經使用的記憶體數: 769m

free 空閒的記憶體數: 232m

shared 當前已經廢棄不用,總是0

buffers buffer 快取記憶體數: 62m

cached page 快取記憶體數:421m

關係:total(1002m) = used(769m) + free(232m)

第二部分(-/+ buffers/cache):

(-buffers/cache) used記憶體數:286m (指的第一部分mem行中的used – buffers – cached)

(+buffers/cache) free記憶體數: 715m (指的第一部分mem行中的free + buffers + cached)

可見-buffers/cache反映的是被程式實實在在吃掉的記憶體,而+buffers/cache反映的是可以挪用的記憶體總數。

第三部分是指交換分割槽, 我想不講大家都明白.

我想大家看了上面,還是很暈.第一部分(mem)與第二部分(-/+ buffers/cache)的結果中有關used和free為什麼這麼奇怪.

其實我們可以從二個方面來解釋.

對作業系統來講是mem的引數.buffers/cached 都是屬於被使用,所以它認為free只有232.

對應用程式來講是(-/+ buffers/cach).buffers/cached 是等同可用的,因為buffer/cached是為了提高程式執行的效能,當程式使用記憶體時,buffer/cached會很快地被使用。

所以,以應用來看看,以(-/+ buffers/cache)的free和used為主.所以我們看這個就好了.另外告訴大家一些常識.linux為了提高磁碟和記憶體訪問效率, linux做了很多精心的設計, 除了對dentry進行快取(用於vfs,加速檔案路徑名到inode的轉換), 還採取了兩種主要cache方式:buffer cache和page cache。前者針對磁碟塊的讀寫,後者針對檔案inode的讀寫。這些cache能有效縮短了 i/o系統呼叫(比如read,write,getdents)的時間。

Linux下的 etc解釋

etc etc不是什麼縮寫,是and so on的意思 於 法語的 et cetera 翻譯成中文就是 等等 的意思.至於為什麼在 etc下面存放配置檔案,按照原始的unix的說法 linux檔案結構參考unix的教學實現minix 這下面放的都是一堆零零碎碎的東西,就叫etc,這其實是個歷史遺留....

linux 下的幾種訊號解釋

sighup 終止程序 終端線路結束通話 sigint 終止程序 中斷程序 sigquit 建立core檔案終止程序,並且生成core檔案 sigill 建立core檔案 非法指令 sigtrap 建立core檔案 跟蹤自陷 sigbus 建立core檔案 匯流排錯誤 sigsegv 建立core檔...

linux下sudo命令的解釋

在root使用者下 adduser ccb sudo password for mqk 正在新增使用者 tt 正在新增新組 tt 1006 正在新增新使用者 tt 1006 到組 tt 建立主目錄 home tt 正在從 etc skel 複製檔案.輸入新的 unix 密碼 重新輸入新的 unix ...