【发布时间】:2017-02-14 15:16:38
【问题描述】:
我只是在学习分页,我想知道我为页面替换所做的是否正确,因为我在网上找到的教程似乎到处都是。我主要是在寻求澄清我是否做错了什么,并且想要一个解释而不是直接链接到其他地方的东西我必须进一步解释那些没有真正帮助的东西。
我已经为序列做了 3 帧内存, 0, 3, 1, 2, 3, 2, 0, 1, 0, 1, 3, 0, 2, 3, 1
Y = 有故障,N = 无故障。
更新:尝试修复我的 FIFO, new working for FIFO
【问题讨论】:
-
你的 lru 是正确的。你的fifo似乎和lru一模一样,为什么?当第二个零出现(#7)时,帧是 3、1 和 2。当您删除第 1 页时,lru 正确,但 fifo 不正确。在 fifo 中,您应该已经删除了第 3 页。请参阅第 1 页是在第 3 步中引入的,因此它比第 3 页在第 2 步中引入的要年轻。第 2 页是第 4 步中引入的最年轻的页面。在fifo中,替换最旧的,即。第 3 页。在 lru 中替换 old-untouched。
-
@inquisitive 所以我又做了一次 FIFO,不完全确定这次我是否正确。
-
在fifo中,替换最旧的。检查步骤 #11。第 3 页与第 1 页 (#3)、第 2 页 (#4) 和第 0 页 (#7) 竞争。应该删除第 1 页,为什么却删除了第 0 页?
标签: memory-management paging fifo lru page-replacement