Next generation computer systems will have gigabytes of physical memory and processors in the 200 MIPS range or higher. While this trend suggests that memory management for most programs will be less of a concern, memory-bound applications such as scientific simulations and database management systems will require more sophisticated memory management support, especially in a
multiprogramming environment. Furthermore, new architectures are introducing new complexities between the processor and memory, requiring techniques such as page coloring, variable page sizes and physical placement control. We describe the design, implementation and evaluation of a virtual memory system that provides application control of physical memory using external page-cache management. In this approach, a sophisticated application is able to monitor and control the amount of physical memory it has available for execution, the exact contents of this memory, and the scheduling and nature of page-in and page-out using the abstraction of a page frame cache provided by the kernel. It is also able to handle multiple page sizes and control the specific physical pages it uses. We claim that this approach can significantly improve performance for many memory-bound applications while reducing kernel complexity, yet does not complicate other applications
or reduce their performance.
Authors: Kieran Harty and David R. Cheriton|||||http://portal.acm.org/citation.cfm?id=143371.143511