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
Revision 5 as of 2007-03-14 21:03:29
LinuxMM:
  • SoftwareZones

Requirements

  • A container must have some limit on the amount of memory it may use.
  • The overhead in storage, processing time, and dedicated lines of code to the greater kernel should be minimized
  • Should allow runtime flexibility in size and number of containers
    • We should be able to change limits easily
    • We should be able to create and destroy them easily to satisfy the needs of application containers (not all containers are long-lived)
  • Memory which is private to the container (say, anonymous memory) must be strictly accounted to that container
  • Memory for files may be accounted to either the container or a shared pool
    • Some care should be taken to ensure that a container may not abuse this shared pool
    • It is preferable to actually determine when sharing is "actually" occurring, but approximate metrics should be OK. This requirement is very secondary to any overhead which it might exhibit.

Software Zones

Use the existing Linux zone model to create sets of contiguous memory. Each of these is a subset of a current 'struct zone'. Each container gets one or more of these zones from which to allocate its pages. Pages shared between containers will be placed in centralized, "shared" zones.

Static Page Ownership

Software Zones

Static Page Ownership

Partial Page Ownership

enforces memory limits

<bgcolor="green">

<bgcolor="green">

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