diff options
Diffstat (limited to 'man3p/mlockall.3p')
-rw-r--r-- | man3p/mlockall.3p | 133 |
1 files changed, 133 insertions, 0 deletions
diff --git a/man3p/mlockall.3p b/man3p/mlockall.3p new file mode 100644 index 000000000..a0672cb36 --- /dev/null +++ b/man3p/mlockall.3p @@ -0,0 +1,133 @@ +.\" Copyright (c) 2001-2003 The Open Group, All Rights Reserved +.TH "MLOCKALL" P 2003 "IEEE/The Open Group" "POSIX Programmer's Manual" +.\" mlockall +.SH NAME +mlockall, munlockall \- lock/unlock the address space of a process +(\fBREALTIME\fP) +.SH SYNOPSIS +.LP +\fB#include <sys/mman.h> +.br +.sp +int mlockall(int\fP \fIflags\fP\fB); +.br +int munlockall(void); \fP +\fB +.br +\fP +.SH DESCRIPTION +.LP +The \fImlockall\fP() function shall cause all of the pages mapped +by the address space of a process to be memory-resident until +unlocked or until the process exits or \fIexec\fPs another process +image. The \fIflags\fP +argument determines whether the pages to be locked are those currently +mapped by the address space of the process, those that are +mapped in the future, or both. The \fIflags\fP argument is constructed +from the bitwise-inclusive OR of one or more of the +following symbolic constants, defined in \fI<sys/mman.h>\fP: +.TP 7 +MCL_CURRENT +Lock all of the pages currently mapped into the address space of the +process. +.TP 7 +MCL_FUTURE +Lock all of the pages that become mapped into the address space of +the process in the future, when those mappings are +established. +.sp +.LP +If MCL_FUTURE is specified, and the automatic locking of future mappings +eventually causes the amount of locked memory to exceed +the amount of available physical memory or any other implementation-defined +limit, the behavior is implementation-defined. The +manner in which the implementation informs the application of these +situations is also implementation-defined. +.LP +The \fImunlockall\fP() function shall unlock all currently mapped +pages of the address space of the process. Any pages that +become mapped into the address space of the process after a call to +\fImunlockall\fP() shall not be locked, unless there is an +intervening call to \fImlockall\fP() specifying MCL_FUTURE or a subsequent +call to \fImlockall\fP() specifying MCL_CURRENT. If +pages mapped into the address space of the process are also mapped +into the address spaces of other processes and are locked by +those processes, the locks established by the other processes shall +be unaffected by a call by this process to +\fImunlockall\fP(). +.LP +Upon successful return from the \fImlockall\fP() function that specifies +MCL_CURRENT, all currently mapped pages of the +process' address space shall be memory-resident and locked. Upon return +from the \fImunlockall\fP() function, all currently mapped +pages of the process' address space shall be unlocked with respect +to the process' address space. The memory residency of unlocked +pages is unspecified. +.LP +The appropriate privilege is required to lock process memory with +\fImlockall\fP(). +.SH RETURN VALUE +.LP +Upon successful completion, the \fImlockall\fP() function shall return +a value of zero. Otherwise, no additional memory shall +be locked, and the function shall return a value of -1 and set \fIerrno\fP +to indicate the error. The effect of failure of +\fImlockall\fP() on previously existing locks in the address space +is unspecified. +.LP +If it is supported by the implementation, the \fImunlockall\fP() function +shall always return a value of zero. Otherwise, the +function shall return a value of -1 and set \fIerrno\fP to indicate +the error. +.SH ERRORS +.LP +The \fImlockall\fP() function shall fail if: +.TP 7 +.B EAGAIN +Some or all of the memory identified by the operation could not be +locked when the call was made. +.TP 7 +.B EINVAL +The \fIflags\fP argument is zero, or includes unimplemented flags. +.sp +.LP +The \fImlockall\fP() function may fail if: +.TP 7 +.B ENOMEM +Locking all of the pages currently mapped into the address space of +the process would exceed an implementation-defined limit on +the amount of memory that the process may lock. +.TP 7 +.B EPERM +The calling process does not have the appropriate privilege to perform +the requested operation. +.sp +.LP +\fIThe following sections are informative.\fP +.SH EXAMPLES +.LP +None. +.SH APPLICATION USAGE +.LP +None. +.SH RATIONALE +.LP +None. +.SH FUTURE DIRECTIONS +.LP +None. +.SH SEE ALSO +.LP +\fIexec\fP() , \fIexit\fP() , \fIfork\fP() , \fImlock\fP() , \fImunmap\fP() +, the Base +Definitions volume of IEEE\ Std\ 1003.1-2001, \fI<sys/mman.h>\fP +.SH COPYRIGHT +Portions of this text are reprinted and reproduced in electronic form +from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology +-- Portable Operating System Interface (POSIX), The Open Group Base +Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of +Electrical and Electronics Engineers, Inc and The Open Group. In the +event of any discrepancy between this version and the original IEEE and +The Open Group Standard, the original IEEE and The Open Group Standard +is the referee document. The original Standard can be obtained online at +http://www.opengroup.org/unix/online.html . |