Allocating primary memory to processes
The important task of allocating memory to processes, and efficiently
ensuring that processes have their instructions and data in main memory when
needed, is termed memory management.
We'll need to consider the role that memory plays from two (conflicting?)
perspectives:
- the operating system's perspective of how to allocate and manage
all memory fairly and efficiently, and
- the process's perspective of how to access the memory allocated
to it,
and how to obtain more.
An important goal of the operating system is to keep as many processes
executable as possible, and it will achieve this only when processes have
available the memory they require.
Processes requiring specific memory
(holding either instructions or data) cannot execute,
and are blocked,
until that memory is available (to them).
For simplicity, we'll initially assume that a process's image occupies a
contiguous region of main memory.
CITS2002 Systems Programming, Lecture 13, p1, 11th September 2023.
|