plock - Lock the text and/or data segments of a process in
memory
#include <sys/lock.h>
int plock(
int opr );
Specifies one of the following operations: Locks the text
and data segments into memory. Locks the text segment
into memory. Locks the data segment into memory. Removes
locks.
The plock() function locks or unlocks a process's text
segments, data segments, or both in physical memory. When
locked, the physical pages containing the text or data
segment will not be paged out. It is an error to lock a
segment that is already locked.
The caller must have superuser privilege to use the
plock() function.
Note that memory acquired subsequent to a plock() call may
or may not be locked in memory, depending on the specific
acquisition method. Memory acquired by using the brk() or
sbrk() function will be locked if the data segment was
locked. Memory acquired by means of the mmap() or vm_allocate()
function will not be locked.
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.
If the plock() function fails, errno may be set to one of
the following values: There are insufficient resources to
perform the operation. One of the following occurred: The
opr parameter is PROCLOCK, but the text segment or the
data segment is already locked. The opr parameter is TXTLOCK,
but the text segment is already locked. The opr
parameter is DATLOCK, but the data segment is already
locked. The opr parameter is UNLOCK, but neither the text
segment nor the data segment is locked. The caller does
not have appropriate privilege.
Functions: brk(2), mmap(2)
plock(2)
[ Back ] |