快取演算法是指令的乙個明細表,用於提示 計算裝置的 快取資訊中 哪些條目應該被刪去。
常見快取演算法包括lfu、lru、arc、fifo、mru。
最不經常使用演算法(lfu):這個快取演算法使用乙個計數器來記錄條目被訪問的頻率。通過使用lfu快取演算法,最低訪問頻率的條目首先被移除。這個方法並不經常使用,因為它無法對乙個擁有最初高訪問頻率之後長時間沒有被訪問的條目快取負責。
最近最少使用演算法(lru):這個快取演算法將最近使用的條目存放到靠近快取頂部的位置。當乙個新條目被訪問時,lru將它放置到快取的頂部。當快取達到極限時,較早之前訪問的條目將從快取底部開始被移除。這裡會使用到昂貴的演算法,而且它需要記錄「年齡位」來精確顯示條目是何時被訪問的。此外,當乙個lru快取演算法刪除某個條目後,「年齡位」將隨其他條目發生改變。
自適應快取替換演算法(arc):由ibm almaden研究中心開發,這個快取演算法同時跟蹤記錄lfu和lru,以及驅逐快取條目,來獲得可用快取的最佳使用。
最近最常使用演算法(mru):這個快取演算法最先移除最近最常使用的條目。乙個mru演算法擅長處理乙個條目越久,越容易被訪問的情況。(???具體??)先進先出演算法(fifo):fifo是英文first in first out 的縮寫,是一種先進先出的資料快取器,他與普通儲存器的區別是沒有外部讀寫位址線,這樣使用起來非常簡單,但缺點就是只能順序寫入資料,順序地讀出資料,其資料位址由內部讀寫指標自動加1完成,不能像普通儲存器那樣可以由位址線決定讀取或寫入某個指定的位址。
參考:
作業系統快取機制
在每個指令週期中,cpu至少會訪問記憶體一次,來抓取下一條執行的指令,而且經常會附帶著更多次的訪問,來獲取運算元,以及儲存結果。而cpu執行指令的速度就因此大大受限於對記憶體的訪問速度,而且隨著cpu的速度提高大大快於記憶體的訪問速度提高,這個問題會越來越嚴重。理論上來說,我們可以製造一種訪問速度與...
作業系統之排程演算法
作業系統管理了系統的有限資源,當有多個程序 或多個程序發出的請求 要使用這些資源時,因為資源的有限性,必須按照一定的原則選擇程序 請求 來占用資源。這就是排程。目的是控制資源使用者的數量,選取資源使用者許可占用資源或占用資源。這時就可以根據不同的排程的方法來進行處理程序。先來先服務排程演算法 在程序...
作業系統之作業系統引論
掌握作業系統的概念 特徵 功能和提供的服務,作業系統的發展與分類 作業系統是計算機硬體與使用者的橋梁,是計算機硬體上的的第一層軟體,是對硬體系統的首次擴充.作業系統是一組控制和管理計算機硬體和軟體資源.合理地對各類作業 job 進行排程,以及方便使用者的程式的集合.無作業系統 單批道作業系統 多批道...