2
我寫了一個頁面替換的模擬程序,其中Clock算法(使用1位使用位)與FIFO完全相同,這讓我非常困惑。時鐘頁面替換算法和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逐出頭版(第一),並插入到最後。在這個例子中,Clock與FIFO完全相同,它總是驅逐最老的(前面)頁面。
我不知道我做錯了什麼,有人可以指出它嗎?
凌源