NAME
plock - Locks a process' text and/or data segments in
memory
SYNOPSIS
#include <sys/lock.h>
int plock(
int opr) ;
PARAMETERS
opr Specifies one of the following operations:
PROCLOCK Locks the text and data segments into
memory.
TXTLOCK Locks the text segment into memory.
DATLOCK Locks the data segment into memory.
UNLOCK Removes locks.
DESCRIPTION
The plock() function locks or unlocks a process' text seg-
ments, data segments, or both in physical memory. When
locked, the physical pages containing the text or data seg-
ment will not be paged out. It is an error to lock a seg-
ment that is already locked.
The caller must have superuser privilege to use the plock()
function.
Note that memory acquired subsequent to a plock() function
may or may not be locked in memory, depending on the
specific acquisition method. Memory acquired using the
brk() function (or the sbrk() function) will be locked if
the data segment was locked. Memory acquired via the mmap()
or vm_allocate() functions will not be locked.
RETURN VALUES
Upon successful completion, a value of 0 (zero) is returned
to the calling process. Otherwise, a value of -1 is
returned and errno is set to indicate the error.
ERRORS
If the plock() function fails, errno may be set to one of
the following values:
[EPERM] The caller does not have appropriate privilege.
[EAGAIN] There are insufficient resources to perform the
operation.
[EINVAL] The opr parameter is PROCLOCK, but the text seg-
ment or the data segment is already locked.
[EINVAL] The opr parameter is TXTLOCK, but the text segment
is already locked.
[EINVAL] The opr parameter is DATLOCK, but the data segment
is already locked.
[EINVAL] The opr parameter is UNLOCK, but neither the text
segment nor the data segment is locked.
RELATED INFORMATION
Functions: brk(2), mmap(2)
Acknowledgement and Disclaimer