Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

exec(2)

exit(2)

fork(2)

memcntl(2)

mlock(3C)

mlockall(3C)

plock(3C)

NAME

plock − lock or unlock into memory process, text, or data

SYNOPSIS

#include <sys/lock.h>

int plock(int op);

DESCRIPTION

plock() 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.  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. 

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. 

ERRORS

plock() fails and does not perform the requested operation if one or more of the following are true:

EAGAIN Not enough memory. 

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. 

EPERM The effective user of the calling process is not super-user. 

SEE ALSO

exec(2), exit(2), fork(2), memcntl(2), mlock(3C), mlockall(3C)

NOTES

mlock(3C) and mlockall(3C) are the preferred interfaces to process locking. 

SunOS 5.5.1  —  Last change: 25 Jan 1993

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026