maxdsiz.5 (2010 09)
m
maxdsiz(5) maxdsiz(5)
(Tunable Kernel Parameters)
NAME
maxdsiz, maxdsiz_64bit - maximum size (in bytes) of the data segment for any user process
VALUES
Default
32 bit:
1GB
64 bit: 4GB
Allowed values
32 bit minimum: 0x40000
32 bit maximum: 0xfffff000
64 bit minimum: 0x40000
64 bit maximum: 0x3ffbffff000
DESCRIPTION
User programs on HP-UX systems are composed of five discrete segments of virtual memory: text (or
code), data, stack, shared, and I/O. Each segment occupies an architecturally defined range of the virtual
address space that sets the upper limit to their size. However, text, data, and stack segments may have a
smaller maximum enforced by the maxtsiz, maxdsiz, and maxssiz tunables.
This tunable defines the maximum size of the static data storage segment for 32-bit and 64-bit processes.
The data storage segment contains fixed data storage such as globals, arrays, static variables, local vari-
ables in main(), strings, and space allocated using
sbrk() and malloc().
Who is Expected to Change This Tunable?
Anyone.
Restrictions on Changing
Changes to this tunable take effect only for processes started after the modification. In addition, a process
which modifies its
rlimit for the data segment propagates the modified limit to all child processes,
thereby exempting them from any future modification of maxdsiz. The value specified is expected to be
a multiple of the base page size. See the description of _SC_PAGE_SIZE
in getconf(1) for more details.
If the value specified is not a multiple of the base page size, it will be rounded down to the nearest multi-
ple of the base page size.
When Should the Value of This Tunable Be Raised?
This tunable should be raised if user processes are receiving the [ENOMEM] error message:
exec(2): data exceeds maxdsiz
or
exec(2): data exceeds maxdsiz_64bit
This may or may not cause a process failure depending on the program code.
What Are the Side Effects of Raising the Value?
Raising this tunable by definition allows larger data segments for every process. This means that
maxdsiz and maxssiz function as limitations on the amount of swap space that can be reserved or
used by each process. Therefore, using more virtual address space does not translate directly into using
more physical address space because virtual pages can be swapped out.
If swap space on the machine is near capacity, raising this tunable increases the amount of reservable
swap per process. This could exhaust the swap space on the system by allowing a process with a memory
leak or a malicious program that uses huge amounts of memory to reserve too much swap space.
When Should the Value of This Tunable Be Lowered?
This tunable should be lowered if swap space is at a premium on the machine and programs that are
using too much swap space are affecting the execution of other critical user processes.
What Are the Side Effects of Lowering the Value?
If swap space on the machine is near capacity, lowering this tunable will limit the amount of swap
reserved for each process and will cause the processes that consume large amounts of swap space to
HP-UX 11i Version 3: September 2010 − 1 − Hewlett-Packard Company 1