我写了一个页面替换的模拟程序,其中Clock算法(使用1位使用位)执行与FIFO完全一样,这让我很困惑。
在这里,我有一个简单的案例来复制我的困难:
Say I have page 1 3 5 7 in memory, and initially memory is like:
1 use=1 <- handle
3 use=1
5 use=1
7 use=1
When 2 needs to be inserted, clock handle travels through all the pages and
at last substitute 1:
1 use=0 <- handle
3 use=0
5 use=0
7 use=0
To:
2 use=1
3 use=0 <- handle
5 use=0
7 use=0
Then I need to insert 4:
2 use=1
4 use=1
5 use=0 <- handle
7 use=0
Then after 6 and 8:
2 use=1 <- handle
4 use=1
6 use=1
8 use=1
假设 FIFO 驱逐首页(第一页),并插入到最后。在本例中,时钟与 FIFO 完全相同,它总是驱逐最旧的(首页)页面。
我不知道我做错了什么,有人可以指出吗?
凌源