Comparison: Buffer vs. Cache
Context
Comparison
Cache 和 buffer 都可能使用 main memory,但目的不同:
- Buffer:為了協調資料傳輸,可能保存資料唯一 copy。
- Cache:為了加速存取,保存某個已存在於其他地方的資料副本。
例如資料剛從 network 收到、還沒交給 application 時,kernel buffer 可能是唯一 copy;但如果某個 file block 已經存在 disk 上,kernel 把它放進 memory,這份 memory data 就是 cache copy。
因此判斷重點不是「有沒有放在 memory」,而是「這份資料是傳輸中的暫存,還是為了加速而保留的副本」。