1. 程式人生 > 其它 >buffer和cache的區別

buffer和cache的區別

buffer

1.buffer:緩衝區,buffer是為了提高記憶體和硬碟(或其他I/O裝置)之間資料交換速度而設計的。

buffer是根據硬碟的讀寫設計的,把分散的寫操作集中進行,減少磁碟碎片和硬碟的反覆尋道,從而提高系統性能。

cache

2.cache:快取區,cache是為了提高CPU和記憶體之間的資料交換速度而設計的。

即將經常用到的資料放到快取區內,方便CPU的讀取,從而提高效能。

簡單理解下:

buffer是緩衝(緩和衝擊),主要通過減少不必要的狀態切換和裝置I/O來提高效能;

cache是快取(快取資料),主要通過將部分資料放到讀寫速度快的地方,加快取用速度,從而提高效能。

共性:

都屬於記憶體,資料都是臨時的,一旦關機資料都會丟失。

差異:

1.buffer是寫入資料,cache是讀取資料

2.buffer資料丟失會影響資料完整性,源資料不受影響;cache資料丟失不影響資料完整性,但影響效能

3.buffer大小夠用就行;cache越大,效能越好