它是页面替换算法。该算法从编号最小的非空类中随机删除一个页面。该算法的隐含之处在于,与频繁使用的干净页面相比,最好至少删除一个时钟滴答之后仍未引用的已修改页面。
它易于理解,实现起来效率适中,并且所提供的性能虽然肯定不是最佳的,但可能是足够的。修改页面时,将设置修改后的位。当需要替换页面时,操作系统会将页面分为4类。
- 0:-未引用,未修改
- 1:-未引用,已修改
- 2:-引用,未修改
- 3:-已引用,已修改
在上述4个类别中,如果存在,则NRU将替换“未引用,未修改”页面。请注意,此算法暗示“修改但未引用”的重要性不如“未修改并参考”重要。
例子 –
Page | Referenced | Modified |
---|---|---|
0 | 1 | 0 |
1 | 0 | 1 |
2 | 0 | 0 |
3 | 1 | 1 |
- 情况1暗示未引用和修改。
- 情况2表示未引用和未修改。
- 情况3暗示引用和修改。
- 情况0表示“引用”和“未修改”。
算法 :
从给定的参考字符串, NRU将从随机编号最低的非空类中随机删除一个页面。该算法的隐含之处在于,与频繁使用的干净页面相比,最好删除至少一个时钟滴答(通常为20毫秒)中未引用的修改页面。
例子 –