Illustrating FIFO-2C
Consume frames from the head of
If free shrinks below threshhold, kick
the paging daemon to start a scan (I, II).
2. Page has not been referenced? pmap_page_protect and place on tail of free list.
3. Page is dirty? Push to backing store and return it to inactive list tail (clean).
I. Restock inactive list by pulling pages from
the head of the active list: clear the ref bit and
place on inactive list (deactivation).
II. Inactive list scan from head:
1. Page has been referenced? Return to tail of active list (reactivation).
Paging daemon typically scans a few times per
second, even if not needed to restock free list.