copy_on_write(5)copy_on_write(5)NAMEcopy_on_write - dynamically enable or disable copy-on-write semantics
for privately mapped files, private segments of child process after
fork(), and private segments locked by mlock()VALUES
Failsafe
Default
Allowed values
or
DESCRIPTION
This tunable dynamically enables or disables the copy-on-write behavior
in private and system calls. When the tunable is disabled, copy-on-
access behavior is followed; this is the legacy behavior (HP-UX 11i v3
and previous releases) where private segments are copied upon access.
Disabling this tunable will preserve that old behavior.
Following is a summary of what happens when the tunable is enabled:
· For a process' private data (data segment, stack, heap, RSE)
is copied only when the child process writes for the first
time.
· For if mapping is created for a file for which exists, a sep‐
arate copy of the page is created for only when it first
writes to the page. As long as reads, it shares the page
with mapping. That is, updates made by shared mapping will
be visible to private mapping until private mapping writes.
· For locking privately mapped segments does not result in
copying those segments. However, segments are locked in mem‐
ory and only when the content of the page changes, a copy is
made and the lock is transferred to the new segment.
Who Is Expected to Change This Tunable?
System administrators who wish to change the default copy-on-write
behavior.
Restrictions on Changing
Changes to this tunable take effect immediately.
When Should the Tunable Be Turned Off?
If an application depends on copy-on-access behavior, where a process
accessing a privately mapped file for the first time gets a copy of the
page and the contents of the page does not change unless private map‐
ping writes to it, the tunable should be turned off to get copy-on-
access behavior.
What Are the Side Effects of Turning the Tunable Off?
Some workloads might see increased memory consumption since private
segments are copied when accessed for the first time.
When Should the Tunable Be Turned On?
If an application wants industry standard semantics, which allows users
to share data via private mapping of a file for which shared mapping
exists, the tunable should be enabled. Turning the tunable on can also
reduce memory consumption on some workloads since private segments are
only copied upon write.
What Are the Side Effects of Turning the Tunable On?
Applications that privately map a file for which shared mapping exists
can now see the updates performed by shared mapping.
What Other Tunables Should Be Changed at the Same Time?
None.
WARNINGS
All HP-UX kernel tunable parameters are release specific. This parame‐
ter may be removed or have its meaning changed in future releases of
HP-UX.
Installation of optional kernel software, from HP or other vendors, may
cause changes to tunable parameter values. After installation, some
tunable parameters may no longer be at the default or recommended val‐
ues. For information about the effects of installation on tunable val‐
ues, consult the documentation for the kernel software being installed.
For information about optional kernel software that was factory
installed on your system, see at
AUTHOR
was developed by HP.
SEE ALSOfork(2), mlock(2), mmap(2).
Tunable Kernel Parameters copy_on_write(5)