Segment

From Computer History Wiki
Revision as of 03:26, 16 April 2018 by Jnc (talk | contribs) (A start)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Segmentation (using segments) is an enhancement to the main memory naming semantics of some CPU architectures. Segments are blocks of memory identified by a segment number.

Most CPUs support a linear (single axis) address space; memory locations are defined by a single number, the address. With segmentation, the CPU's address space is defined by a two-axis matrix: the segment number on one axis, and then the offset byte/word within the segment on the other; memory locations are named by a tuple (segment and offset).

Segmentation has been used to expand the amount of main memory accessible to a given CPU architecture (as in the Intel x86 architecture]], but this usage is somewhat of a kludge.

Segmentation is also used in building single-level store systems.