Home

Paging

Paging is a memory management scheme that eliminates external fragmentation by dividing both virtual address space and physical memory into fixed-size blocks called pages and frames, respectively. A process’s virtual address space is partitioned into equal-sized pages, while physical memory is divided into frames of the same size. A page table maintained by the operating system stores the mapping from page numbers to frame numbers, and a memory management unit translates virtual addresses to physical addresses by consulting this table and a translation lookaside buffer for speed.

During execution, the page number portion of a virtual address is used to index the page table,

Benefits of paging include efficient use of memory, no external fragmentation, and strong process isolation. Drawbacks

Variants and related concepts include demand paging, where pages are loaded only when needed; pre-paging, which

yielding
the
corresponding
frame
number,
which
combines
with
the
offset
to
form
a
physical
address.
If
the
required
page
is
not
in
RAM,
a
page
fault
occurs;
the
operating
system
must
bring
the
page
from
secondary
storage
into
a
free
frame
and
update
the
page
table,
possibly
evicting
another
page
using
a
replacement
policy
such
as
LRU
or
CLOCK.
include
overhead
for
maintaining
page
tables,
potential
latency
from
page
faults,
and
the
need
for
fast
storage
and
memory
bandwidth
to
minimize
delays.
preloads
multiple
pages;
and
inverted
page
tables,
which
map
frames
to
pages
to
reduce
table
size
in
large
address
spaces.
Typical
page
sizes
are
around
4
KB,
with
larger
“huge”
pages
used
for
certain
workloads.
Paging
is
a
foundational
technique
in
modern
operating
systems
and
many
computer
architectures.