問題詳情

45. What the replacement algorithm is to replace the block in the set that has been in cachethe longest and has not referenced it?
(A) FIFO
(B) CLM
(C) LFU
(D) LRU

參考答案

答案:D
難度:計算中-1
書單:沒有書單,新增

用户評論

【用戶】不叫賭俠的陳小刀

【年級】高三下

【評論內容】什麼替換算法是替換集合中在緩存中時間最長且未被引用的塊?(A) FIFO(B) CLM(C) LFU(D) LRULRU(Least Recently Used Cache) 是一種快取的實做方式,概念是會儲存最近用過的內容,會透過 Hash Map與 Double Linked List 來搭配實做,如果欲常被使用,內容會被擺在 List愈前方的位置,如果快取滿了,則會從 List最末端元素開始移除。LFU(Least Frequently Used)最近最少使用演算法。它是基於“如果一個數據在最近一段時間內使用次數很少,那麼在將來一段時間內被使用的可能性也很小”的思路。注意LFU和LRU演算法的不同之處,LRU的淘汰規則是基於訪問時間,而LFU是基於訪問次數的。FIFO(First in First out),先進先出。其實在作業系統的設計理念中很多地方都利用到了先進先出的思想,比如作業排程(先來先服務),為什麼這個原則在很多地方都會用到呢?因為這個原則簡單、且符合人們的慣性思維,具備公平性,並且實現起來簡單,直接使用資料結構中的佇列即可實現。在FIFO Cache設計中,核心原則就是:如果一個數據最先進入快取中,則應該最早淘汰掉。

【用戶】不叫賭俠的陳小刀

【年級】高三下

【評論內容】什麼替換算法是替換集合中在緩存中時間最長且未被引用的塊?(A) FIFO(B) CLM(C) LFU(D) LRULRU(Least Recently Used Cache) 是一種快取的實做方式,概念是會儲存最近用過的內容,會透過 Hash Map與 Double Linked List 來搭配實做,如果欲常被使用,內容會被擺在 List愈前方的位置,如果快取滿了,則會從 List最末端元素開始移除。LFU(Least Frequently Used)最近最少使用演算法。它是基於“如果一個數據在最近一段時間內使用次數很少,那麼在將來一段時間內被使用的可能性也很小”的思路。注意LFU和LRU演算法的不同之處,LRU的淘汰規則是基於訪問時間,而LFU是基於訪問次數的。FIFO(First in First out),先進先出。其實在作業系統的設計理念中很多地方都利用到了先進先出的思想,比如作業排程(先來先服務),為什麼這個原則在很多地方都會用到呢?因為這個原則簡單、且符合人們的慣性思維,具備公平性,並且實現起來簡單,直接使用資料結構中的佇列即可實現。在FIFO Cache設計中,核心原則就是:如果一個數據最先進入快取中,則應該最早淘汰掉。