Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
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 segments	to  be
       unlocked.

       The effective user ID of	the calling process must be a superuser	or the
       user must be a member of	a group	that has the MLOCK privilege (see get-
       privgrp(2) and setprivgrp(1M)).

       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.

RETURN VALUE
       returns the following values:

	      Successful completion.
	      Failure.
		     The requested operation is	not performed.	is set to  in-
		     dicate the	error.

ERRORS
       If fails, is set	to one of the following	values.

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

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

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

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

	      [EINVAL]	     op	is equal to and	there are no  unlocked	shared
			     library segments in the calling process.

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

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

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

	      [EINVAL]	     op	is not equal to	one of the values specified in

	      [EINVAL]	     is	not allowed in a window.  See vfork(2).

	      [ENOMEM]	     There is not enough lockable memory in the	system
			     to	satisfy	the locking request.

	      [EPERM]	     The effective user	ID of the calling  process  is
			     not a superuser and the user does not belong to a
			     group that	has 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).

STANDARDS CONFORMANCE
								      plock(2)

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | EXAMPLES | SEE ALSO | STANDARDS CONFORMANCE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=plock&sektion=2&manpath=HP-UX+11.22>

home | help