Linux

/proc/sys/vm/drop_caches 值

  • October 23, 2018

我想知道 什麼值是可能的drop_caches,以及這些值的含義是什麼。

例如:

echo 3 > /proc/sys/vm/drop_caches

數字是什麼3意思?數字12或其他數字是真的嗎?如果是,它們的含義是什麼?

直接從 https://www.kernel.org/doc/Documentation/sysctl/vm.txt的文件中引用,通過簡單的Google搜尋“linux drop_caches”很容易找到:

drop_caches

寫入這將導致核心丟棄乾淨的記憶體,以及可回收的slab對象,如dentries和inode。一旦放下,他們的記憶就會自由。

釋放頁面記憶體:

迴聲 1 > /proc/sys/vm/drop_caches

釋放可回收的slab對象(包括dentries和inode):

迴聲 2 > /proc/sys/vm/drop_caches

釋放slab對象和頁面記憶體:

迴聲 3 > /proc/sys/vm/drop_caches

這是非破壞性操作,不會釋放任何臟對象。為了增加此操作釋放的對像數量,使用者可以在寫入 /proc/sys/vm/drop_caches 之前執行“同步”。這將最大限度地減少系統上臟對象的數量並創建更多要刪除的候選對象。

該文件不是控制各種核心記憶體(inode、dentries、pagecache 等)增長的方法,當系統其他地方需要記憶體時,核心會自動回收這些對象。

使用此文件可能會導致性能問題。由於它會丟棄記憶體的對象,因此重新創建丟棄的對象可能會花費大量的 I/O 和 CPU,尤其是在它們被大量使用的情況下。因此,不建議在測試或調試環境之外使用。

使用此文件時,您可能會在核心日誌中看到資訊性消息:

貓(1234):drop_caches:3

這些僅供參考。它們並不意味著您的系統有任何問題。要禁用它們,請將 4(位 3)回顯到 drop_caches。

引用自:https://unix.stackexchange.com/questions/477347