瀏覽單個文章
nkaf61
Basic Member
 

加入日期: Apr 2007
文章: 22
引用:
作者chlang
所以這邊強調的重點是.

硬碟上面的 記憶體 機制就是 Buffer.

寫入時當作暫存器.

讀取時也不考慮有重複讀取的可能, 純粹也是當作暫存器.

因此沒有任何 Cache 的需求跟可能.

不知道這樣理解對不對 ?


嗯...我發現還是乖乖描述一下吧~XD
我也不太確定你的理解狀況

讀取的策略有可能如下
cpu跟硬碟要1000筆資料
CPU就跑去做其他事情
等到硬碟乖乖把這些全都搬到Buffer去之後
有可能會發中斷告訴CPU 叫CPU來從Buffer拿資料回去用
(或是透過DMA之類的...等)←在此可忽略

上述狀況若發生在cache大致上是
cpu"未來可能"要跟硬碟要資料A
然後cache就很開心的跑去把資料A 搬進cache去
但是cpu可能最後決定不拿資料了
或是 cpu最後決定拿的 是資料B
(明白說就是cache猜錯了)
然後cache就要重新去把正確的資料B搬進cache
之後cpu才從cache拿到資料B
這樣就算是失誤
總之cache就是猜cpu接下來想要什麼 然後偷跑
至於要怎麼偷跑 當然是會有策略性的偷跑
因為失誤 會有處罰~~~(不是SM鞭 !)
而這種策略就是cache的偷跑演算法 XD

由於Buffer不用這樣猜 (它不是偷跑的)
所以當然不用考慮偷跑用的演算法...

以上說法可能有些錯誤 還希望大大指正 ^口^
舊 2008-02-23, 09:38 PM #28
回應時引用此文章
nkaf61離線中