Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

plock(2) [hpux man page]

plock(2)							System Calls Manual							  plock(2)

NAME
plock() - lock process, text, data, stack, or shared library in memory SYNOPSIS
DESCRIPTION
The system call allows the calling process to lock the text segment of the process (text lock), its data segment (data lock), or both its text and data segment (process lock) into memory. Stack segments are also locked when data segments are locked. Shared library text and shared library data segments (shlib lock) can also be locked. Locked segments are immune to all routine swapping. also allows these seg- ments to be unlocked. The effective user ID of the calling process must be a user with the privilege. op must be one of the following: Lock text and data segments into memory (process lock) Lock text segment into memory (text lock) Lock data segment into memory (data lock) Remove locks Lock shared library text and shared library data segments (shared library lock) Lock text, data and shared library text and shared library data segments into memory (process and shared library lock) Lock text, shared library text and shared library data segments into memory (text and shared library lock) Lock data, shared library text and shared library data segments into memory (data and shared library lock) Although and the family of functions may be used together in an application, each may affect the other in unexpected ways. This practice is not recommended. Security Restrictions Some or all of the actions associated with this system call require the privilege. Processes owned by the superuser have this privilege. Processes owned by other users may have this privilege, depending on system configuration. See privileges(5) for more information about privileged access on systems that support fine-grained privileges. RETURN VALUE
returns the following values: Successful completion. Failure. The requested operation is not performed. is set to indicate the error. ERRORS
If fails, is set to one of the following values. op is equal to and a process lock, a text lock, or a data lock already exists on the calling process. op is equal to and a text lock or process lock already exists on the calling process. op is equal to and a data lock, or process lock already exists on the calling process. op is equal to and no type of lock exists on the calling process. op is equal to and there are no unlocked shared library segments in the calling process. op is equal to and a process lock, a text lock, or a data lock already exists on the calling process. op is equal to and a text lock or process lock already exists on the calling process. op is equal to and a data lock, or process lock already exists on the calling process. op is not equal to one of the values specified in is not allowed in a window. See vfork(2). There is not enough lockable memory in the system to satisfy the locking request. The effective user ID of the calling process is not a user with the privilege. EXAMPLES
The following call to locks the calling process in memory: SEE ALSO
setprivgrp(1M), exec(2), exit(2), fork(2), getprivgrp(2), mlock(2), vfork(2), privileges(5). STANDARDS CONFORMANCE
plock(2)

Check Out this Related 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)
Man Page

Featured Tech Videos