PLOCK(3C) Standard C Library Functions PLOCK(3C)
NAME
plock - lock or unlock into memory process, text, or data
SYNOPSIS
#include <sys/lock.h>
int plock(
int op);
DESCRIPTION
The
plock() function allows the calling process to lock or unlock
into memory its text segment (text lock), its data segment (data
lock), or both its text and data segments (process lock). Locked
segments are immune to all routine swapping. The effective user ID of
the calling process must be super-user to use this call.
The
plock() function performs the function specified by
op:
PROCLOCK Lock text and data segments into memory (process lock).
TXTLOCK Lock text segment into memory (text lock).
DATLOCK Lock data segment into memory (data lock).
UNLOCK Remove locks.
RETURN VALUES
Upon successful completion,
0 is returned. Otherwise,
-1 is returned
and
errno is set to indicate the error.
ERRORS
The
plock() function fails and does not perform the requested
operation if:
EAGAIN Not enough memory.
EINVAL The
op argument is equal to
PROCLOCK and a process lock, a
text lock, or a data lock already exists on the calling
process; the
op argument is equal to
TXTLOCK and a text
lock or a process lock already exists on the calling
process; the
op argument is equal to
DATLOCK and a data
lock or a process lock already exists on the calling
process; or the
op argument is equal to
UNLOCK and no lock
exists on the calling process.
EPERM The {
PRIV_PROC_LOCK_MEMORY} privilege is not asserted in
the effective set of the calling process.
USAGE
The
mlock(3C) and
mlockall(3C) functions are the preferred interfaces
for process locking.
ATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+---------------+-----------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+-----------------+
|MT-Level | MT-Safe |
+---------------+-----------------+
SEE ALSO
exec(2),
exit(2),
fork(2),
memcntl(2),
mlock(3C),
mlockall(3C),
attributes(7) March 22, 2004 PLOCK(3C)