LRU算法-今日头条笔试题
操作系统中可以使用LRU(Least Recently Used)算法淘汰旧数据的内存管理策略:如果内存需要加载新数据时空间不足,则会按照最近访问时间对内存单元进行排序,将较老的数据淘汰;假设当前内存空间大小为5,原本内存中没有数据,对内存中数据的访问顺序如下:
1,2,5,3,4,6,1,4,3,6,7,8,3,9
求整个访问过程中发生缺页的次数为______次。
解:
(1):1,2,5,3,4 依次进入内存,无缺页
(2):6(缺页),1淘汰,6进入,6,2,5,3,4
(3):1(缺页),2淘汰,1进入,6,1,5,3,4
(4):4命中,不进入;
(5):3命中,不进入;
(6):6命中,不进入;
(7):7(缺页),5淘汰,7进入,6,1,7,3,4
(8):8(缺页),1淘汰,8进入,6,8,7,3,4
(9):3命中,不进入;
(10):9(缺页),4淘汰,9进入,6,8,7,3,9
缺页共计5次;
易错点:内存命中时,不做替换处理;
第(5)步中,对3进行一次访问,因此第(8)步中是1淘汰,而非3;