Adaptive Address Space Whitepaper
Adaptive Address Space
background
HP-UX provides various address space layouts for applications to choose from.
An address space layout represents a process’s accessible virtual address
space and how the operating system divides it into different regions into which
different types of memory objects can be attached.
The default address space layout for 32-bit processes is known as SHARE-
MAGIC. In this layout, the first 1GB of the process’s address space is reserved
exclusively for text. This 1GB is shared by all processes executing the same text
(hence the name SHARE-MAGIC). The memory layout for a 32-bit SHARE-
MAGIC process looks like:
(The diagram shows a SHARE-MAGIC process on IPF. Note, the figure is not drawn to
scale. The maximum stack sizes are decided by system tunables and process resource
limits at the time of process start-up).
Notice that the address space of the process is split into 4 quadrants,
numbered 0-3. Each quadrant is 1GB in size. Quadrant 0 is reserved for text,
quadrant 1 for process private data and quadrants 2 and 3 for data that can
be shared between processes.
The 2GB of shared data space between virtual addresses 0x8000 0000 and
3