LRU approximation page replacement
In this we are able to use the reference bit associated with the page entry to choose a page to be removed. The various algorithms used for the implementation is discussed below.
a. Second chance Algorithm
When a page is selected the reference bit is checked to see whether it has been referenced before. If that is the case afterward it is given a second chance. The page is moved as of head to tail and its reference bit is made 0. If it hasn't been referenced then it is removed.
Example Consider 1,2,3,4,3,5,6. Now 1, 2, 3 are entered in to memory and when 4 comes 1 is removed. While 5 come 2 is removed. While 6 come 4 is removed instead of 3 as 3 has been referenced in between.
b. Enhanced Second chance algorithm
In this a modify bit is as well used. Now if the ordered pair of reference and modify is
(0,0) neither recently used nor modified - the best page to replace.
(1,1) both referenced and modified- the worst to replace
(1,0) referenced but not modified
(0,1) not recently used but modified.
This algorithm is utilized in the Macintosh virtual memory management scheme.
c. Additional Reference bits algorithm
Here we keep an 8-bit byte for every page in memory. At standard intervals the reference bit is shifted by the OS. If a shift register contains 00000000 then the page hasn't been used for the last 8 time periods. A page with a history 11000000 is more recently used than 01000000. The no of bits are able to be varied accordingly to the needs of the OS.