Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

plock(2) [ultrix man page]

plock(2)							System Calls Manual							  plock(2)

Name
       plock - lock or unlock process, text, or data in memory

Syntax
       #include <sys/lock.h>

       int plock (op)
       int op;

Description
       The  call allows the calling process to lock its text segment (text lock), its data segment (data lock), or both its text and data segments
       (process lock) into memory.  Locked segments are immune to page outs, and the process is immune to swap outs.  The call also unlocks  these
       segments.

       The op argument specifies the following:

       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,  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.

Diagnostics
       The call fails under the following conditions:

       [EPERM]	      The effective user ID of the calling process is not superuser.

       [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.

       [EINVAL]       The op argument is equal to TXTLOCK, and a text lock or a process lock already exists on the calling process.

       [EINVAL]       The op argument is equal to DATLOCK, and a data lock or a process lock already exists on the calling process.

       [EINVAL]       The op argument is equal to UNLOCK, and no type of lock exists on the calling process.

Restrictions
       The effective user ID of the calling process must be superuser to use this call.

       Both PROCLOCK and TXTLOCK lock the text segment of a process, and a locked text segment is locked for all sharing processes.

       Because the effective user ID of the calling process is superuser, take care not to lock more virtual pages than can be contained in physi-
       cal memory.  A deadlock can result.

See Also
       execve(2), exit(2), fork(2), shmctl(2)

																	  plock(2)

Check Out this Related Man Page

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(5) 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(5) SunOS 5.10 22 Mar 2004 plock(3C)
Man Page