plock(2) — SYSTEM CALLS
NAME
plock − lock into memory or unlock process, text, or data
SYNOPSIS
#include <sys/lock.h>
int plock(int op);
DESCRIPTION
plock allows the calling process to lock into memory or unlock 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. plock 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.
plock fails and does not perform the requested operation if one or more of the following are true:
EPERM The effective user ID of the calling process is not super-user.
EINVAL op is equal to PROCLOCK and a process lock, a text lock, or a data lock already exists on the calling process.
EINVAL op is equal to TXTLOCK and a text lock, or a process lock already exists on the calling process.
EINVAL op is equal to DATLOCK and a data lock, or a process lock already exists on the calling process.
EINVAL op is equal to UNLOCK and no lock exists on the calling process.
EAGAIN Not enough memory.
SEE ALSO
exec(2), exit(2), fork(2), memcntl(2)
DIAGNOSTICS
Upon successful completion, a value of 0 is returned to the calling process. Otherwise, a value of −1 is returned and errno is set to indicate the error.
NOTES
memcntl is the preferred interface to process locking.