記憶體中的cache

2021-10-07 17:18:43 字數 506 閱讀 3286

在linux的記憶體管理中,這裡的buffer指linux記憶體的:buffer cache。這裡的cache指linux記憶體中的:page cache。翻譯成中文可以叫做緩衝區快取和頁面快取。

什麼是page cache?

page cache主要用來作為檔案系統上的檔案資料的快取來用,尤其是針對當程序對檔案有read/write操作的時候。

什麼是buffer cache?

buffer cache則主要是設計用來在系統對塊裝置進行讀寫的時候,對塊進行資料快取的系統來使用。

這意味著某些對塊的操作會使用buffer cache進行快取,比如我們在格式化檔案系統的時候。

一般情況下兩個快取系統是一起配合使用的,比如當我們對乙個檔案進行寫操作的時候,page cache的內容會被改變,而buffer cache則可以用來將page標記為不同的緩衝區,並記錄是哪乙個緩衝區被修改了。

這樣,核心在後續執行髒資料的回寫(writeback)時,就不用將整個page寫回,而只需要寫回修改的部分即可。

49 記憶體管理中的cache

在維基百科中有這樣一段描述 凡是位於速度相差較大的兩種硬體之間的,用於協調兩者資料傳輸速度差異的結構,均可稱之為cache。從最初始的處理器與記憶體間的cache開始,都是為了讓資料訪問的速度適應cpu的處理速度,其基於的原理是記憶體中 程式執行與資料訪問的局域性行為 同樣php記憶體管理中的快取也...

記憶體中的Buffer和Cache

這個介面包含了物理記憶體mem和交換分割槽swap的使用情況,其中包括以用記憶體 快取 可用記憶體等。其中快取是buffer和cache這兩部分的總和。從字面意思理解,buffer和cache分別代表緩衝區和快取的意思,二者都是資料再記憶體中的臨時儲存。buffers是核心緩衝區用到的記憶體,對應的...

linux記憶體中buffer和 cached的比較

經常遇到一些剛接觸linux的新手會問記憶體占用怎麼那麼多?在linux中經常發現空閒記憶體很少,似乎所有的記憶體都被系統占用了,表面感覺是記憶體不夠用了,其實不然。這是linux記憶體管理的乙個優秀特性,在這方面,區別於windows的記憶體管理。主要特點是,無論物理記憶體有多大,linux 都將...