1. 程式人生 > >LRU演算法的實現

LRU演算法的實現

最後,讓我們來談論一下LRU演算法。首先,這是一個相當好的演算法,它是理想演算法很好的近似。在計算機系統中應用廣泛的區域性性原理給它打造了堅實的理論基礎,而在實際運用中,這一演算法也被證明擁有極高的效能。在大規模的程式執行中,它產生的缺頁中斷次數已很接近理想演算法。或許我們還能找到更好的演算法,但我想,得到的收益與付出的代價恐怕就不成比例了。當然,LRU演算法的缺點在於實現方法的不足——效率高的硬體演算法通常在大多數機器上無法執行,而軟體演算法明顯有太多的開銷。與之相對的,FIFO演算法,和與LRU相似的NRU演算法,效能儘管不是最好,卻更容易實現。所以,找到一個優秀的演算法來實現LRU,就是一個非常有意義的問題。