Buffer 與 Cache 的區別
Buffer cache是針對磁碟塊的快取,也就是在沒有檔案系統的情況下,直接對磁碟進行操作的資料會快取到buffer cache中,例如,檔案系統的後設資料都會快取到buffer cache中。
簡單說來,page cache用來快取檔案資料,buffer cache用來快取磁碟資料。在有檔案系統的情況下,對檔案操作,那麼資料會快取到page cache,如果直接採用dd等工具對磁碟進行讀寫,那麼資料會快取到buffer cache。
補充一點,在檔案系統層每個裝置都會分配一個def_blk_ops的檔案操作方法,這是裝置的操作方法,在每個裝置的inode下面會存在一個 radix tree,這個radix tree下面將會放置快取資料的page頁。這個page的數量將會在top程式的buffer一欄中顯示。如果裝置做了檔案系統,那麼會生成一個 inode,這個inode會分配ext3_ops之類的操作方法,這些方法是檔案系統的方法,在這個inode下面同樣存在一個radix tree,這裡會快取檔案的page頁,快取頁的數量在top程式的cache一欄進行統計。從上面的分析可以看出,2.6核心中的buffer cache和page cache在處理上是保持一致的,但是存在概念上的差別,page cache針對檔案的cache,buffer是針對磁碟塊資料的cache,僅此而已。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-708255/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- buffer與cache的區別
- buffer 與cache 的區別2
- linux cache與buffer的區別Linux
- Buffer和Cache的區別
- Cache 和 Buffer的區別
- Linux free中buffer與cache區別Linux
- Linux Buffer/Cache 的區別Linux
- Cache 和 Buffer 的區別在哪裡?
- 轉貼_大牛_tolywang_Buffer 與 Cache 的區別
- Cache 和 Buffer 有什麼區別?
- Ask Hoegh(5)——buffer cache和buffer有什麼區別?
- page cache與buffer cache的關係
- Cache和Buffer都是快取,有什麼區別?Linux快取Linux
- Linux記憶體管理機制中buffer和cache的區別Linux記憶體
- oracle buffer cache管理機制_buffer cache dump與lru機制小記Oracle
- Buffer Cache Size(資料緩衝區)
- Linux作業系統中記憶體buffer和cache的區別Linux作業系統記憶體
- Buffer cache 的調整與優化(二)優化
- Buffer cache 的調整與優化(一)優化
- buffer cache與相關的latch等待事件事件
- buffer busy waits, latch cache buffers chains, read by other session區別AISession
- 計算機buffer和cache的區別?linux運維學習知識計算機Linux運維
- Buffer Cache 原理
- cache buffer chainAI
- 記憶體中,cache與buffer的含義記憶體
- Service Worker Cache 和 HTTP Cache 的區別HTTP
- Linux作業系統中記憶體buffer和cache的區別(轉載)Linux作業系統記憶體
- create table中的buffer pool 設定 KEEP 及CACHE 引數的聯絡及區別
- IO之核心buffer----"buffer cache"
- Buffer cache的執行原理
- Buffer Cache Hit Ratio
- Oracle Buffer Cache原理Oracle
- Oracle database buffer cacheOracleDatabase
- CACHE BUFFER CHAINSAI
- Database Buffer Cache (79)Database
- 【Cache】將常用的“小表”快取到Buffer Cache快取
- 轉_Buffer Cache的原理及使用
- Oracle Cache Buffer ChainsOracleAI