Lecture 7
Lecture 7
Memory Management
• Background
• Contiguous Memory Allocation
• Paging
• Structure of the Page Table
• Swapping
• Example: The Intel 32 and 64-bit Architectures
• Example: ARMv8 Architecture
Objectives
• Multiple-partition allocation
• Degree of multiprogramming limited by number of partitions
• Variable-partition sizes for efficiency (sized to a given process’ needs)
• Hole – block of available memory; holes of various size are scattered throughout
memory
• When a process arrives, it is allocated memory from a hole large enough to
accommodate it
• Process exiting frees its partition, adjacent free partitions combined
• Operating system maintains information about:
a) allocated partitions b) free partitions (hole)
Dynamic Storage-Allocation
Problem
How to satisfy a request of size n from a list of free holes?