Memory Management

Memory is like an orgasm. It's a lot better if you don't have to fake it.
Seymour Cray

3.1 NO MEMORY ABSTRACTION

3.2 A MEMORY ABSTRACTION: ADDRESS SPACES

3.2.1 The Notion of an Address Space

3.2.2 Swapping

3.2.3 Managing Free Memory

3.3 VIRTUAL MEMORY

3.3.1 Paging

3.3.2 Page Tables

3.3.3 Speeding Up Paging

3.3.4 Page Tables for Large Memories

3.4 PAGE LACEMENT ALGORITHMS

3.4.1 The Optimal Page Replacement Algorithm

3.4.2 The Not Recently Used Page Replacement Algorithm

3.4.3 The First-In, First-Out

3.4.4 The Second Chance Page Replacement Algorithm

3.4.5 The Clock Page Replacement Algorithm

3.4.6 The Least Recently Used

3.4.7 Simulating LRU in Software

3.4.8 The Working Set Page Replacement Algorithm

3.4.9 The WSClock Page Replacement Algorithm

3.4.10 Summary of Page Replacement Algorithms

3.5 DESIGN ISSUES FOR PAGING SYSTEMS

3.5.1 Local versus Global Allocation Policies

3.5.2 Load Control

3.5.3 Page Size

3.5.4 Separate Instruction and Data Spaces

3.5.5 Shared Pages

3.5.6 Shared Libraries

3.5.7 Mapped Files

3.5.8 Cleaning Policy

3.5.9 Virtual Memory Interface

3.6 IMPLEMENTATION ISSUES

3.6.1 Operating System Involvement with Paging

3.6.2 Page Fault Handling

3.6.3 Instruction Backup

3.6.4 Locking Pages in Memory

3.6.5 Backing Store

3.6.6 Separation of Policy and Mechanism

3.7 SEGMENTATION

3.7.1 Implementation of Pure Segmentation

3.7.2 Segmentation with Paging: MULTICS

3.7.3 Segmentation with Paging: The Intel Pentium

3.8 RESEARCH ON MEMORY MANAGEMENT

3.9 SUMMARY

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-Share Alike 2.5 License.