1. 程式人生 > >chche和buffer

chche和buffer

1. Cache:快取區,是快取記憶體,是位於CPU和主記憶體之間的容量較小但速度很快的儲存器,因為CPU的速度遠遠高於主記憶體的速度,CPU從記憶體中讀取資料需等待很長的時間,而  Cache儲存著CPU剛用過的資料或迴圈使用的部分資料,這時從Cache中讀取資料會更快,減少了CPU等待的時間,提高了系統的效能。

    Cache並不是快取檔案的,而是快取塊的(塊是I/O讀寫最小的單元);Cache一般會用在I/O請求上,如果多個程序要訪問某個檔案,可以把此檔案讀入Cache中,這樣下一個程序獲取CPU控制權並訪問此檔案直接從Cache讀取,提高系統性能。

2. Buffer:緩衝區,用於儲存速度不同步的裝置或優先順序不同的裝置之間傳輸資料;通過buffer可以減少程序間通訊需要等待的時間,當儲存速度快的裝置與儲存速度慢的裝置進行通訊時,儲存慢的資料先把資料存放到buffer,達到一定程度儲存快的裝置再讀取buffer的資料,在此期間儲存快的裝置CPU可以幹其他的事情。

Buffer:一般是用在寫入磁碟的,例如:某個程序要求多個欄位被讀入,當所有要求的欄位被讀入之前已經讀入的欄位會先放到buffer中。