To "快取就是所謂的緩衝buffer,在CPU上在硬碟的快取其目的都是一樣的"
這點我不認同耶
.CPU 快取是一個微指令儲蓄通道 (對外,可不要拿來與暫存器聯想)
.CPU 指令都是很小的 (不像HDD 幾乎都以file為一個單位)
.CPU 沒有長期儲存指令的問題 (指令是拿來執行的)
.CPU 快取和 CPU暫存器完全定位使用皆不同
.HDD 可知外部要求資料都很快的,怎麼可能 HDD 先預讀資料(又HDD 如何知道使用者下筆要讀什麼),所以只有外部送太多資料到 HDD 的問題,此時放進 buffer 以此空檔時間磁頭移到定位
.HDD 的讀取緩衝幾乎都是 主RAM 來儲存負責 (HDD buffer太小了無法達到讀取緩衝的作用)
.HDD 讀取重複率低,要也是存到 主RAM 裡
零零種種證實了
CPU 快取是用來搜索用的(也就是讀取方面)
HDD buffer是用來緩存用的(也就是以此空檔找到磁碟定位),預讀可能性低
也就是之前講的
"嚴格說起來, 快取與緩衝區都是記憶體的一種, 但作用、位置僅相似, 卻不相同。不過市場上卻經常有人將這兩個名詞混用。事實上, 硬碟中只有緩衝區, 並無快取記憶體。所以大的 緩衝記憶體 是可增加 "寫入" 效能
P.S. 快取是增加 "讀取" 效能"
++++++++++++++++++++++++++++++++++++++
To "減少相當多的機械性運作"
資料送到 HDD 就是要存(不會說放在 buffer碰運氣),能減少機械性運作是送到 主RAM 的磁碟Cache才能達到此要求 (畢竟這裡大很多,有這個能耐)
++++++++++++++++++++++++++++++++++++++
To "(2)外部傳輸率就是IDE介面把資料送出/送入的傳輸率....
IDE控制器<====(2)=====>磁碟控制器<===(1)====>buffer
一般來說1的速度會比2來的快很多...."
所謂 HDD 外部、內部傳輸率是以 HDD為界
沒有人會探討 "磁碟控制器<===(1)====>buffer" 的傳輸率問題
(無意義)因為磁頭送資料給磁碟控制器慢
怎會有 "1的速度會比2來的快很多" 之思維呢?
++++++++++++++++++++++++++++++++++++++
8MB和2MB緩衝的意義
To "高緩衝的HD可以提高快取命中率增加傳輸效能...."
先前已說過了,證實 HDD buffer 無關 "命中率",而是主要用於儲存緩衝之用(填充 8M的時間足夠找到磁碟儲存位址)
++++++++++++++++++++++++++++++++++++++
先寫到這裡...
當然以上可能有人不認同
大家還是有討論的空間
|