日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux内存Mem和Swap那点事,Linux内存 mem 和 swap

發布時間:2025/3/15 linux 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux内存Mem和Swap那点事,Linux内存 mem 和 swap 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

摘抄并用于自查

Linux mem/swap/buffers/cached區別

free命令相對于top,提供了更簡潔的查看系統內存使用情況:

# free -m

mem:表示物理內存統計

buff/cache:表示物理內存的緩存統計

swap:表示硬盤上交換分區的使用情況

系統當前真正可用的內存并不是第一行 free 標記的,他僅代表未被分配的內存

buff/cache列占用過高

buff/cache主要干啥來的?

Linux具有先進的緩存機制,會針對dentry(用于VFS-虛擬文件系統,加速文件路徑名到inode的轉換)、buffer cache(針對磁盤塊的讀,寫)和 page cache(針對文件 inode 的讀寫)進行緩存操作來提高讀寫效率。但是在進行了大量文件操作之后,緩存會把內存資源基本用完,雖然文件讀取效率提高了,但是物理內存會被逐漸吃完。

原來是因為系統進行了頻繁的文件讀寫操作,但是為什么操作系統不會主動回收呢,原來是因為drop_caches 的默認參數設置的就是不釋放。

drop_caches 的值可以是 0-3 之間的數字,代表不同的含義:

0:不釋放(系統默認值)

1:釋放頁緩存

2:釋放dentries和inode

3:釋放所有緩存

修改:# echo 1 > /proc/sys/vm/drop_caches

小插曲

當Linux的物理內存快要被耗盡時,系統會把一些進程占用的內存轉移到 swap 區,當物理內存被釋放一部分時,swap 區的一些內存占用又慢慢回到 mem 區,但是 mem 區卻不再是之前的滿負荷狀態,而是有一部分 free 的內存!

【總結】

1)當物理內存快被耗盡時,系統并沒有崩潰,而是拿 swap 做臨時內存,當兩者都耗盡,系統 OutofMemory

2)物理內存達到峰值,系統中一些不常用的進程內存占用被提到 swap 區

3)當 Men 區的資源進行釋放時,被挪到 swap 的內存并不會全部回來,隨著系統或者程序的喚醒才會慢慢回到 men 區

4)swap 是內存不夠時,磁盤虛擬出來的內存,磁盤主要是 I/O 級別的操作,并不是系統內核級別的操作,處理速度跟 mem 區不是一個等級

總結

以上是生活随笔為你收集整理的Linux内存Mem和Swap那点事,Linux内存 mem 和 swap的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。