Linux-MM
  • Comments
  • Immutable Page
  • Menu
    • Navigation
    • RecentChanges
    • FindPage
    • Local Site Map
    • Help
    • HelpContents
    • HelpOnMoinWikiSyntax
    • Display
    • Attachments
    • Info
    • Raw Text
    • Print View
    • Edit
    • Load
    • Save
  • Login

Linux Memory Management

  • Front Page

  • Documentation

  • Internals

  • Projects

  • Academic Research

References

  • LinuxKernelMailingLists

  • MemoryManagementLinks

Related sites

  • Kernel Newbies

  • Memory Management Forum

Wiki

  • Site Editors

  • Side Bar

  • Hosted by WikiWall

Navigation

  • RecentChanges
  • FindPage
  • HelpContents

Upload page content

You can upload content for the page named below. If you change the page name, you can also upload content for another page. If the page name is empty, we derive the page name from the file name.

File to load page content from
Page name
Comment

Revision 2 as of 2005-04-22 23:01:20
LinuxMM:
  • ClockProApproximation

This is an almost complete design to approximate CLOCK-Pro replacement in a zoned VM with a big hash table instead of a non-resident list. Step 2 probably needs some work to filter out correlated references...

  1. new pages get added to the inactive (cold) list
  2. if they are referenced they go to the active (hot) list
  3. if an active page was referenced, it goes to the head of the list
  4. if an active page wasn't referenced, it goes to the head of the inactive list
  5. if an inactive page wasn't referenced, we remember we recently evicted this page
  6. if we recycled an empty slot in the non-resident table, we do nothing
  7. if we recycled an occupied slot in the non-resident table, we reduce the number of inactive pages we keep around
  8. if, on page fault time, we fault in a page that was on the non-resident table (ie. recently evicted), we add it to the active list immediately and increase the number of inactive pages we keep around

Correlated References Filter

In point 2. above, we really only want to promote pages from the inactive list to the active list when they were referenced again after their initial page fault and reference. In short, we need a way to filter out correlated references. One idea would be to have a "new pages" list that's maybe 5% or 10% the size of the inactive list. New pages (after a page fault of an unknown page) go onto this list, and the reference bit gets cleared when the page leaves the list, to be placed at the head of the inactive list.

Back to AdvancedPageReplacement

  • MoinMoin Powered
  • Python Powered
  • GPL licensed
  • Valid HTML 4.01