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

LinuxMM:
  • SystemThrashing

Song Jiang's paper on Simple token based thrashing protection has an excellent description on SystemThrashing:

"In a multiprogramming environment, allocated memory pages of a program will become replacement candidates if they have not been accessed for a certain period of time under two conditions: (1) the program does not need to access these pages; and (2) the program is conducting page faults (as a sleeping process) so that it is not able to access the pages although it might have done so without the page faults. We call the LRU pages generated by condition (1) true LRU pages, and those by condition (2) false LRU pages. These false LRU pages are produced by the time delay of page faults, not by the access delay of the program. Thus, the LRU principle is not held in this case.

Whenever page faults occur due to memory shortage in a multiprogramming environment, false LRU pages of a program can be generated, which will weaken the ability of the program to achieve its working set. For example, if a program does not access the already obtained memory pages on the false LRU condition, these pages may become replacement candidates (LRUpages) when the memory space is being demanded by other interacting programs. When the program is ready to use these pages in its execution turn, these LRU pages may have been replaced to satisfy requested allocations of other programs. The program then has to ask the virtual memory system to retrieve these pages by replacing LRU pages of others, possibly generating false LRU pages for other programs. The false LRU pages may be cascaded among the interacting programs, eventually causing system thrashing."

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