?Linux 清除內(nèi)存中的cache 首先以Centos6.4的來(lái)說(shuō),Centos7有些區(qū)別 一、buffer/cache/swap的介紹 #cat /etc/redhat-release #查看系統(tǒng)版本 CentOS release 6.4 (Final) #free -m #查看緩沖區(qū)及內(nèi)存使用情況 total used free shared buffers cached Mem: 7814 7681 132 0 23 5727 -/+ buffers/cache: 1930 5884 Swap: 8191 32 8159 先看第二行Mem行: Mem: 7814 7681 132 0 23 5727 #內(nèi)存總大小為7814MB,使用7681MB,空閑132MB,共享內(nèi)存0M,buffers:23MB,cached:5727MB 然后看地三行-/+ buffers/cache行: -/+ buffers/cache: 1930 5884 #(-buffers/cache) used內(nèi)存數(shù):1930MB(指的第一部分Mem行中的used – buffers – cached),(+buffers/cache) free內(nèi)存數(shù):5884MB(指的第一部分Mem行中的free + buffers + cached),也就是說(shuō)-buffers/cache反映的是被程序?qū)崒?shí)在在吃掉的內(nèi)存,而+buffers/cache反映的是可以挪用的內(nèi)存總數(shù). 然后看第四列Swap行: Swap: 8191 32 8159 #這也就是我們經(jīng)常說(shuō)的虛擬內(nèi)存,8192為swap分區(qū)的總大小為8192MB,32為swap分區(qū)的使用為32MB,8159為swap空閑為8159MB。 swap分區(qū)的作用: Linux內(nèi)核為了提高讀寫效率與速度,會(huì)將文件在內(nèi)存中進(jìn)行緩存,這部分內(nèi)存就是Cache Memory(緩存內(nèi)存)。即使你的程序運(yùn)行結(jié)束后,Cache Memory也不會(huì)自動(dòng)釋放。這就會(huì)導(dǎo)致你在Linux系統(tǒng)中程序頻繁讀寫文件后,你會(huì)發(fā)現(xiàn)可用物理內(nèi)存變少。當(dāng)系統(tǒng)的物理內(nèi)存不夠用的時(shí)候,就需要將物理內(nèi)存中的一部分空間釋放出來(lái),以供當(dāng)前運(yùn)行的程序使用。那些被釋放的空間可能來(lái)自一些很長(zhǎng)時(shí)間沒(méi)有什么操作的程序,這些被釋放的空間被臨時(shí)保存到Swap空間中,等到那些程序要運(yùn)行時(shí),再?gòu)腟wap分區(qū)中恢復(fù)保存的數(shù)據(jù)到內(nèi)存中。這樣,系統(tǒng)總是在物理內(nèi)存不夠時(shí),才進(jìn)行Swap交換。所以swap分區(qū)不被占用或者占用很少,說(shuō)明現(xiàn)在系統(tǒng)內(nèi)存夠用,運(yùn)行還算良好,不會(huì)影響系統(tǒng)運(yùn)行。 首先,當(dāng)物理內(nèi)存不足以支撐系統(tǒng)和應(yīng)用程序(進(jìn)程)的運(yùn)作時(shí),這個(gè)Swap交換分區(qū)可以用作臨時(shí)存放使用率不高的內(nèi)存分頁(yè),把騰出的內(nèi)存交給急需的應(yīng)用程序(進(jìn)程)使用。有點(diǎn)類似機(jī)房的UPS系統(tǒng),雖然正常情況下不需要使用,但是異常情況下, Swap交換分區(qū)還是會(huì)發(fā)揮其關(guān)鍵作用。 其次,即使你的服務(wù)器擁有足夠多的物理內(nèi)存,也有一些程序會(huì)在它們初始化時(shí)殘留的極少再用到的內(nèi)存分頁(yè)內(nèi)容轉(zhuǎn)移到 swap 空間,以此讓出物理內(nèi)存空間。對(duì)于有發(fā)生內(nèi)存泄漏幾率的應(yīng)用程序(進(jìn)程),Swap交換分區(qū)更是重要,因?yàn)檎l(shuí)也不想看到由于物理內(nèi)存不足導(dǎo)致系統(tǒng)崩潰。 最后,現(xiàn)在很多個(gè)人用戶在使用Linux,有些甚至是PC的虛擬機(jī)上跑Linux系統(tǒng),此時(shí)可能常用到休眠(Hibernate),這種情況下也是推薦劃分Swap交換分區(qū)的。 其實(shí)少量使用Swap交換空間是不會(huì)影響性能,只有當(dāng)RAM資源出現(xiàn)瓶頸或者內(nèi)存泄露,進(jìn)程異常時(shí)導(dǎo)致頻繁、大量使用交換分區(qū)才會(huì)導(dǎo)致嚴(yán)重性能問(wèn)題。另外使用Swap交換分區(qū)頻繁,還會(huì)引起kswapd0進(jìn)程(虛擬內(nèi)存管理中, 負(fù)責(zé)換頁(yè)的)耗用大量CPU資源,導(dǎo)致CPU飆升。 空閑內(nèi)存/已用內(nèi)存換算(也可參考-/+ buffers/cache這行信息也是內(nèi)存正確使用率): 空閑內(nèi)存=free(132)+buffers(23)+cached(5727)=5882 已用內(nèi)存=total(7814)-空閑內(nèi)存(5882)=1932 buffers和cache的區(qū)別: 為了提高磁盤存取效率, Linux做了一些精心的設(shè)計(jì), 除了對(duì)dentry進(jìn)行緩存(用于VFS,加速文件路徑名到inode的轉(zhuǎn)換),還采取了兩種主要Cache方式:Buffer Cache和Page Cache。前者針對(duì)磁盤塊的讀寫,后者針對(duì)文件inode的讀寫。這些Cache有效縮短了I/O系統(tǒng)調(diào)用(比如read,write,getdents)的時(shí)間。 磁盤的操作有邏輯級(jí)(文件系統(tǒng))和物理級(jí)(磁盤塊),這兩種Cache就是分別緩存邏輯和物理級(jí)數(shù)據(jù)的。 Page cache實(shí)際上是針對(duì)文件系統(tǒng)的,是文件的緩存,在文件層面上的數(shù)據(jù)會(huì)緩存到page cache。文件的邏輯層需要映射到實(shí)際的物理磁盤,這種映射關(guān)系由文件系統(tǒng)來(lái)完成。當(dāng)page cache的數(shù)據(jù)需要刷新時(shí),page cache中的數(shù)據(jù)交給buffer cache,因?yàn)锽uffer Cache就是緩存磁盤塊的。但是這種處理在2.6版本的內(nèi)核之后就變的很簡(jiǎn)單了,沒(méi)有真正意義上的cache操作。 Buffer cache是針對(duì)磁盤塊的緩存,也就是在沒(méi)有文件系統(tǒng)的情況下,直接對(duì)磁盤進(jìn)行操作的數(shù)據(jù)會(huì)緩存到buffer cache中,例如,文件系統(tǒng)的元數(shù)據(jù)都會(huì)緩存到buffer cache中。 Buffer:緩沖區(qū),一個(gè)用于存儲(chǔ)速度不同步的設(shè)備或優(yōu)先級(jí)不同的設(shè)備之間傳輸數(shù)據(jù)的區(qū)域。通過(guò)緩沖區(qū),可以使進(jìn)程之間的相互等待變少,從而使從速度慢的設(shè)備讀入數(shù)據(jù)時(shí),速度快的設(shè)備的操作進(jìn)程不發(fā)生間斷。 緩沖(buffers)是根據(jù)磁盤的讀寫設(shè)計(jì)的,把分散的寫操作集中進(jìn)行,減少磁盤碎片和硬盤的反復(fù)尋道,從而提高系統(tǒng)性能。linux有一個(gè)守護(hù)進(jìn)程定 期清空緩沖內(nèi)容(即寫如磁盤),也可以通過(guò)sync命令手動(dòng)清空緩沖。 簡(jiǎn)單說(shuō)來(lái),page cache用來(lái)緩存文件數(shù)據(jù),buffer cache用來(lái)緩存磁盤數(shù)據(jù)。在有文件系統(tǒng)的情況下,對(duì)文件操作,那么數(shù)據(jù)會(huì)緩存到page cache,如果直接采用dd等工具對(duì)磁盤進(jìn)行讀寫,那么數(shù)據(jù)會(huì)緩存到buffer cache。 所以我們看linux,只要不用swap的交換空間,就不用擔(dān)心自己的內(nèi)存太少.如果常常swap用很多,可能你就要考慮加物理內(nèi)存了.這也是linux看內(nèi)存是否夠用的標(biāo)準(zhǔn). Cache: 高速緩存,是位于CPU與主內(nèi)存間的一種容量較小但速度很高的存儲(chǔ)器。由于CPU的速度遠(yuǎn)高于主內(nèi)存,CPU直接從內(nèi)存中存取數(shù)據(jù)要等待一定時(shí)間周 期,Cache中保存著CPU剛用過(guò)或循環(huán)使用的一部分?jǐn)?shù)據(jù),當(dāng)CPU再次使用該部分?jǐn)?shù)據(jù)時(shí)可從Cache中直接調(diào)用,這樣就減少了CPU的等待時(shí)間,提 高了系統(tǒng)的效率。Cache又分為一級(jí)Cache(L1 Cache)和二級(jí)Cache(L2 Cache),L1 Cache集成在CPU內(nèi)部,L2 Cache早期一般是焊在主板上,現(xiàn)在也都集成在CPU內(nèi)部,常見(jiàn)的容量有256KB或512KB L2 Cache。 如果 cache 的值很大,說(shuō)明cache住的文件數(shù)很多。如果頻繁訪問(wèn)到的文件都能被cache住,那么磁盤的讀IO bi會(huì)非常小。 緩存(cached)是把讀取過(guò)的數(shù)據(jù)保存起來(lái),重新讀取時(shí)若命中(找到需要的數(shù)據(jù))就不要去讀硬盤了,若沒(méi)有命中就讀硬盤。其中的數(shù)據(jù)會(huì)根據(jù)讀取頻率進(jìn)行組織,把最頻繁讀取的內(nèi)容放在最容易找到的位置,把不再讀的內(nèi)容不斷往后排,直至從中刪除。 注:下面是Centos7.2系統(tǒng)free -m的顯示: #free -m total used free shared buff/cache available Mem: 64252 2924 258 3233 61069 57654 Swap: 8191 144 8047 博文來(lái)自:www.51niux.com 二、內(nèi)存查看命令 2.1 用free加各種參數(shù)例如: 命令參數(shù): -b 以Byte為單位顯示內(nèi)存使用情況。 -k 以KB為單位顯示內(nèi)存使用情況。 -m 以MB為單位顯示內(nèi)存使用情況。 -g 以GB為單位顯示內(nèi)存使用情況。 -o 不顯示緩沖區(qū)調(diào)節(jié)列。 -s<間隔秒數(shù)> 持續(xù)觀察內(nèi)存使用狀況。 -t 顯示內(nèi)存總和列。 -V 顯示版本信息。 # free -k -s 1 #顯示單位為KB,然后每一秒刷新一次。 但是這也只能顯示一個(gè)總量,如果內(nèi)存真的是被使用了,我們應(yīng)該如何查詢哪些進(jìn)程占用內(nèi)存過(guò)大呢? 2.2 top命令 執(zhí)行top,然后按shift+M,可以對(duì)進(jìn)行使用內(nèi)存情況從大到小排序 2.3 ps命令 # ps -aux|sort -k 4 -n #為了查看方便,讓其從小到大排序 第一列:USER 用戶名 第二列:PID 進(jìn)程ID 第三列:%CPU 進(jìn)程的cpu占用率 第四列:%MEM 進(jìn)程的內(nèi)存占用率 第五列:VSZ 虛擬內(nèi)存中進(jìn)程的大小,單位KB 第六列:RSS 進(jìn)程實(shí)際內(nèi)存大小,單位KB 第七列:TTY 與進(jìn)程關(guān)聯(lián)的終端(tty) 第八列:STAT 進(jìn)程的狀態(tài) 下面為STAT的狀態(tài)碼: R 運(yùn)行 Runnable (on run queue) 正在運(yùn)行或在運(yùn)行隊(duì)列中等待。 S 睡眠 Sleeping 休眠中, 受阻, 在等待某個(gè)條件的形成或接受到信號(hào)。 I 空閑 Idle Z 僵死 Zombie(a defunct process) 進(jìn)程已終止, 但進(jìn)程描述符存在, 直到父進(jìn)程調(diào)用wait4()系統(tǒng)調(diào)用后釋放。 D 不可中斷 Uninterruptible sleep (ususally IO) 收到信號(hào)不喚醒和不可運(yùn)行, 進(jìn)程必須等待直到有中斷發(fā)生。 T 終止 Terminate 進(jìn)程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信號(hào)后停止運(yùn)行運(yùn)行。 P 等待交換頁(yè) W 無(wú)駐留頁(yè) has no resident pages 沒(méi)有足夠的記憶體分頁(yè)可分配。 X 死掉的進(jìn)程 < 高優(yōu)先級(jí)進(jìn)程 高優(yōu)先序的進(jìn)程 N 低優(yōu)先 級(jí)進(jìn)程 低優(yōu)先序的進(jìn)程 L 內(nèi)存鎖頁(yè) Lock 有記憶體分頁(yè)分配并縮在記憶體內(nèi) s 進(jìn)程的領(lǐng)導(dǎo)者(在它之下有子進(jìn)程); l 多進(jìn)程的(使用 CLONE_THREAD, 類似 NPTL pthreads) + 位于后臺(tái)的進(jìn)程組 第九列:START 進(jìn)程啟動(dòng)時(shí)間和日期 第十列:TIME 進(jìn)程使用的總cpu時(shí)間 第十一列: COMMAND 正在執(zhí)行的命令行命令 注:如果要進(jìn)一步排查內(nèi)存占用問(wèn)題,可以用# pstree PID -ap #樹狀圖的顯示進(jìn)程間的關(guān)系,默認(rèn)PID為1,也就是全部 # ps -eo user,pid,command|grep mysql #查出mysql的uid # pstree 3584 -ap #查看mysql下面都有哪些進(jìn)程 注:pgrep pgrep命令以名稱為依據(jù)從運(yùn)行進(jìn)程隊(duì)列中查找進(jìn)程,并顯示查找到的進(jìn)程id。每一個(gè)進(jìn)程ID以一個(gè)十進(jìn)制數(shù)表示,通過(guò)一個(gè)分割字符串和下一個(gè)ID分開,默認(rèn)的分割字符串是一個(gè)新行。對(duì)于每個(gè)屬性選項(xiàng),用戶可以在命令行上指定一個(gè)以逗號(hào)分割的可能值的集合 參數(shù): -o:僅顯示找到的最?。ㄆ鹗迹┻M(jìn)程號(hào); -n:僅顯示找到的最大(結(jié)束)進(jìn)程號(hào); -l:顯示進(jìn)程名稱; -P:指定父進(jìn)程號(hào); -g:指定進(jìn)程組; -t:指定開啟進(jìn)程的終端; -u:指定進(jìn)程的有效用戶ID。 # pgrep -l mysqld 3584 mysqld_safe 3752 mysqld 博文來(lái)自:www.51niux.com 2.4 #cat /proc/meminfo #又或者說(shuō),我發(fā)現(xiàn)系統(tǒng)占用內(nèi)存不大,內(nèi)存都被緩存起來(lái)了,想看看內(nèi)存使用的詳細(xì)信息。 #cat /proc/meminfo MemTotal: 8002048 kB #所有可用RAM大?。次锢韮?nèi)存減去一些預(yù)留位和內(nèi)核的二進(jìn)制代碼大?。?/div> MemFree: 141316 kB #LowFree和HighFree的綜合,被系統(tǒng)留著未使用的內(nèi)存 Buffers: 3492 kB #用來(lái)給文件做緩沖大小 Cached: 5850688 kB #被高速緩沖存儲(chǔ)器(cache memory)用的內(nèi)存的大小 SwapCached: 1004 kB #被高速緩沖存儲(chǔ)器(cache memory)用的交換空間的大小 Active: 3685356 kB #在活躍使用中的緩沖或高速緩沖存儲(chǔ)器頁(yè)面文件的大小,除非非常必要否則不會(huì)被移作他用. Inactive: 3634468 kB # 在不經(jīng)常使用中的緩沖或高速緩沖存儲(chǔ)器頁(yè)面文件的大小,可能被用于其他途徑. Active(anon): 760408 kB Inactive(anon): 706016 kB Active(file): 2924948 kB Inactive(file): 2928452 kB Unevictable: 0 kB Mlocked: 0 kB SwapTotal: 8388600 kB #交換空間的總大小 SwapFree: 8355464 kB #未被使用交換空間的大小 Dirty: 60612 kB #等待被寫回到磁盤的內(nèi)存大小 Writeback: 44 kB #正在被寫回到磁盤的內(nèi)存大小 AnonPages: 1465384 kB #未映射頁(yè)的內(nèi)存大小 Mapped: 10028 kB #設(shè)備和文件等映射的大小 Shmem: 128 kB Slab: 393984 kB #內(nèi)核數(shù)據(jù)結(jié)構(gòu)緩存的大小,可以減少申請(qǐng)和釋放內(nèi)存帶來(lái)的消耗。 SReclaimable: 314272 kB #可收回Slab的大小 SUnreclaim: 79712 kB #不可收回Slab的大小(SUnreclaim+SReclaimable=Slab) KernelStack: 6656 kB PageTables: 13848 kB #管理內(nèi)存分頁(yè)頁(yè)面的索引表的大小。 NFS_Unstable: 0 kB #不穩(wěn)定頁(yè)表的大小 Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 12389624 kB Committed_AS: 6404932 kB VmallocTotal: 34359738367 kB #可以vmalloc虛擬內(nèi)存大小 VmallocUsed: 291660 kB #已經(jīng)被使用的虛擬內(nèi)存大小 VmallocChunk: 34359426484 kB HardwareCorrupted: 0 kB AnonHugePages: 243712 kB HugePages_Total: 0 #內(nèi)存大頁(yè)的總數(shù) HugePages_Free: 0 #內(nèi)存大頁(yè)剩余數(shù)量 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB #內(nèi)存大頁(yè)的大小(64位操作系統(tǒng)中有2MB/1GB兩種,默認(rèn)是2MB。) DirectMap4k: 4096 kB DirectMap2M: 2084864 kB DirectMap1G: 6291456 kB 博文來(lái)自:www.51niux.com 三、手工釋放內(nèi)存區(qū)緩存(這是只是記錄,但是不建議操作,本來(lái)cache就是為了提升系統(tǒng)性能,是linux區(qū)別于windows的優(yōu)勢(shì)所在,緩解磁盤的壓力,如果真有必要可手工釋放一下,也不要永久的的讓cache作用無(wú)法發(fā)揮) # sync; echo 1 > /proc/sys/vm/drop_caches #釋放 pagecache # sync; echo 2 > /proc/sys/vm/drop_caches #釋放 dentries 和 inodes: # sync; echo 3 > /proc/sys/vm/drop_caches #釋放 pagecache,dentries 和 inodes: # sync; echo 0 > /proc/sys/vm/drop_caches #默認(rèn)0為不釋放,讓系統(tǒng)自己調(diào)節(jié) 注: 操作前要使用sync,強(qiáng)制將內(nèi)存中內(nèi)容寫入硬盤,包含已修改的 i-node、已延遲的塊 I/O 和讀寫映射文件。這一步是確保第二步的安全性。防止數(shù)據(jù)或操作丟失。 linux內(nèi)核2.6和內(nèi)核3系列的區(qū)別: 內(nèi)核2.6的版本執(zhí)行上述的操作都沒(méi)問(wèn)題的,但是到了內(nèi)核3系列,就不能執(zhí)行echo 0 >/proc/sys/vm/drop_caches的操作了,這是一個(gè)坑,重啟才能改回去 # echo 0 >/proc/sys/vm/drop_caches -bash: echo: write error: Invalid argument # sysctl -a|grep vm.drop_caches #內(nèi)核中有這個(gè)參數(shù) vm.drop_caches = 3 # sysctl -w vm.drop_caches=0 #也寫不進(jìn)去,這個(gè)在內(nèi)核2.6系列上面可以的,這也是手工釋放內(nèi)存緩存的另一種形式(sysctl -w vm.drop_caches=3) error: "Invalid argument" setting key "vm.drop_caches" # sysctl -w vm.drop_caches=1 #執(zhí)行其他的是沒(méi)問(wèn)題的,但是就是執(zhí)行0的插入不可以,要重啟服務(wù)器。 vm.drop_caches = 1 注: swap清理: swapoff -a && swapon -a 注意:這樣清理有個(gè)前提條件,空閑的內(nèi)存必須比已經(jīng)使用的swap空間大。 上述只是暫時(shí)生效,但是系統(tǒng)重啟后,系統(tǒng)還是按照自己默認(rèn)的方法去使用緩存,有的網(wǎng)友會(huì)寫定時(shí)任務(wù)腳本晚上去釋放一下內(nèi)存cache,還有一種暴力的永久生效的方法,使cache的作用基本無(wú)法發(fā)揮。 修改/etc/sysctl.conf 添加如下選項(xiàng)后就不會(huì)內(nèi)存持續(xù)增加(這些配置摘抄自網(wǎng)上,未做測(cè)試,只是記錄一下) vm.dirty_ratio = 1 vm.dirty_background_ratio=1 vm.dirty_writeback_centisecs=2 vm.dirty_expire_centisecs=3 vm.drop_caches=3 vm.swappiness =100 vm.vfs_cache_pressure=163 vm.overcommit_memory=2 vm.lowmem_reserve_ratio=32 32 8 kern.maxvnodes=3 #下面是相關(guān)解釋: /proc/sys/vm/dirty_ratio 這個(gè)參數(shù)控制文件系統(tǒng)的文件系統(tǒng)寫緩沖區(qū)的大小,單位是百分比,表示系統(tǒng)內(nèi)存的百分比,表示當(dāng)寫緩沖使用到系統(tǒng)內(nèi)存多少的時(shí)候,開始向磁盤寫出數(shù)據(jù)。增大之會(huì)使用更多系統(tǒng)內(nèi)存用于磁盤寫緩沖,也可以極大提高系統(tǒng)的寫性能。但是,當(dāng)你需要持續(xù)、恒定的寫入場(chǎng)合時(shí),應(yīng)該降低其數(shù)值,一般啟動(dòng)上缺省是 10。設(shè)1加速程序速度 /proc/sys/vm/dirty_background_ratio 這個(gè)參數(shù)控制文件系統(tǒng)的pdflush進(jìn)程,在何時(shí)刷新磁盤。單位是百分比,表示系統(tǒng)內(nèi)存的百分比,意思是當(dāng)寫緩沖使用到系統(tǒng)內(nèi)存多少的時(shí)候,pdflush開始向磁盤寫出數(shù)據(jù)。增大之會(huì)使用更多系統(tǒng)內(nèi)存用于磁盤寫緩沖,也可以極大提高系統(tǒng)的寫性能。但是,當(dāng)你需要持續(xù)、恒定的寫入場(chǎng)合時(shí),應(yīng)該降低其數(shù)值,一般啟動(dòng)上缺省是 5 /proc/sys/vm/dirty_writeback_centisecs 這個(gè)參數(shù)控制內(nèi)核的臟數(shù)據(jù)刷新進(jìn)程pdflush的運(yùn)行間隔。單位是 1/100 秒。缺省數(shù)值是500,也就是 5 秒。如果你的系統(tǒng)是持續(xù)地寫入動(dòng)作,那么實(shí)際上還是降低這個(gè)數(shù)值比較好,這樣可以把尖峰的寫操作削平成多次寫操 /proc/sys/vm/dirty_expire_centisecs 這個(gè)參數(shù)聲明Linux內(nèi)核寫緩沖區(qū)里面的數(shù)據(jù)多“舊”了之后,pdflush進(jìn)程就開始考慮寫到磁盤中去。單位是 1/100秒。缺省是 30000,也就是 30秒的數(shù)據(jù)就算舊了,將會(huì)刷新磁盤。對(duì)于特別重載的寫操作來(lái)說(shuō),這個(gè)值適當(dāng)縮小也是好的,但也不能縮小太多,因?yàn)榭s小太多也會(huì)導(dǎo)致IO提高太快。建議設(shè)置為 1500,也就是15秒算舊。 /proc/sys/vm/drop_caches 釋放已經(jīng)使用的cache /proc/sys/vm/page-cluster 該文件表示在寫一次到swap區(qū)的時(shí)候?qū)懭氲捻?yè)面數(shù)量,0表示1頁(yè),1表示2頁(yè),2表示4頁(yè)。 /proc/sys/vm/swapiness 該文件表示系統(tǒng)進(jìn)行交換行為的程度,數(shù)值(0-100)越高,越可能發(fā)生磁盤交換。 /proc/sys/vm/vfs_cache_pressure 該文件表示內(nèi)核回收用于directory和inode cache內(nèi)存的傾向
|
|