Linux釋放cache記憶體
/proc是個虛擬文件系統,我們能夠透過對他的讀寫操作做為和kernel實體間進行通訊的一種手段。也就是說能夠透過修改/proc中的文件,來對當前kernel的行為做出調整。
那麼我們能夠透過調整/proc/sys/vm/drop_caches來釋放記憶體。操作如下:
1、檢視 /proc/sys/vm/drop_caches的值,預設為0:
[root@server test]# cat /proc/sys/vm/drop_caches 0
2、手動執行sync命令:
[root@server test]# sync
sync 命令執行 sync 子例程。假如必須停止系統,則執行 sync 命令以確保文件系統的完整性。sync 命令將任何未寫的系統緩衝區寫到磁碟中,包含已修改的 i-node、已延遲的塊 I/O 和讀寫對映文件。
3、將/proc/sys/vm/drop_caches值設為3
[root@server test]# echo 3 > /proc/sys/vm/drop_caches [root@server test]# cat /proc/sys/vm/drop_caches 3
4、再來執行free命令:
[root@server test]# free -m total used free shared buffers cached Mem: 249 66 182 0 0 11 -/+ buffers/cache: 55 194 Swap: 511 0 511
發現現在的used為66MB,free為182MB,buffers為0MB,cached為11MB。有效的釋放了buffer和cache。
有關/proc/sys/vm/drop_caches的用法在下面進行了說明:
/proc/sys/vm/drop_caches (since Linux 2.6.16)
Writing to this file causes the kernel to drop clean caches,
dentries and inodes from memory, causing that memory to become
free.
To free pagecache, use echo 1 > /proc/sys/vm/drop_caches; to
free dentries and inodes, use echo 2 > /proc/sys/vm/drop_caches;
to free pagecache, dentries and inodes, use echo 3 >
/proc/sys/vm/drop_caches.
Because this is a non-destructive operation and dirty objects
are not freeable, the user should run sync(8) first.
相關文章
- Linux下如何釋放cache記憶體Linux記憶體
- Linux系統釋放cache記憶體Linux記憶體
- 如何釋放linux cache佔用的記憶體Linux記憶體
- 手工釋放linux記憶體——/proc/sys/vm/drop_cacheLinux記憶體
- linux釋放記憶體Linux記憶體
- Linux釋放記憶體及手動釋放Oracle共享記憶體段Linux記憶體Oracle
- 轉 linux 記憶體釋放Linux記憶體
- linux 記憶體釋放命令Linux記憶體
- 手動釋放linux下cache所佔用的實體記憶體Linux記憶體
- Linux之 手動釋放記憶體Linux記憶體
- Linux手動釋放快取記憶體Linux快取記憶體
- vector 的記憶體釋放記憶體
- XCode釋放記憶體XCode記憶體
- vector 避免記憶體頻繁分配釋放與手動釋放vector記憶體記憶體
- Linux記憶體、Swap、Cache、BufferLinux記憶體
- 記憶體的分配與釋放,記憶體洩漏記憶體
- 記錄一下,linux釋放記憶體的方法Linux記憶體
- Linux系統手動釋放記憶體快取Linux記憶體快取
- Linux手動釋放CacheLinux
- C# 垃圾回收釋放記憶體C#記憶體
- 正確釋放Vector的記憶體記憶體
- FireFox記憶體自動釋放Firefox記憶體
- Linux下清理記憶體和Cache方法Linux記憶體
- Linux 記憶體管理:Kmem_cache_initLinux記憶體
- golang 釋放記憶體機制的探索Golang記憶體
- vector clear() 方法 記憶體釋放問題記憶體
- C/C++記憶體分配以及釋放C++記憶體
- mongodb釋放記憶體-切換日誌MongoDB記憶體
- 手工釋放linux記憶體——/proc/sys/vm/drop_caches(轉載)Linux記憶體
- 如何主動釋放 HeapIdle 的記憶體API記憶體
- .Net記憶體管理釋放的兩種方式記憶體
- Linux記憶體管理Swap和Buffer Cache機制Linux記憶體
- 共享記憶體段未釋放導致資料庫記憶體被耗盡記憶體資料庫
- Vector() 記憶體釋放 不得不說的故事記憶體
- C++ vector 釋放記憶體的兩種方法C++記憶體
- android釋放記憶體的一個辦法Android記憶體
- 簡單分配和釋放記憶體指令碼[更新]記憶體指令碼
- Chrome 再次最佳化記憶體佔用問題,新增記憶體釋放開關Chrome記憶體