aboutsummaryrefslogtreecommitdiffstats
path: root/man-pages-posix-2003/man0p/sys_mman.h.0p
diff options
context:
space:
mode:
Diffstat (limited to 'man-pages-posix-2003/man0p/sys_mman.h.0p')
-rw-r--r--man-pages-posix-2003/man0p/sys_mman.h.0p229
1 files changed, 229 insertions, 0 deletions
diff --git a/man-pages-posix-2003/man0p/sys_mman.h.0p b/man-pages-posix-2003/man0p/sys_mman.h.0p
new file mode 100644
index 0000000..e822d74
--- /dev/null
+++ b/man-pages-posix-2003/man0p/sys_mman.h.0p
@@ -0,0 +1,229 @@
+.\" Copyright (c) 2001-2003 The Open Group, All Rights Reserved
+.TH "<sys/mman.h>" 0P 2003 "IEEE/The Open Group" "POSIX Programmer's Manual"
+.\" <sys/mman.h>
+.SH NAME
+sys/mman.h \- memory management declarations
+.SH SYNOPSIS
+.LP
+\fB#include <sys/mman.h>\fP
+.SH DESCRIPTION
+.LP
+The \fI<sys/mman.h>\fP header shall be supported if the implementation
+supports at least one of the following
+options:
+.IP " *" 3
+The Memory Mapped Files option
+.LP
+.IP " *" 3
+The Shared Memory Objects option
+.LP
+.IP " *" 3
+The Process Memory Locking option
+.LP
+.IP " *" 3
+The Memory Protection option
+.LP
+.IP " *" 3
+The Typed Memory Objects option
+.LP
+.IP " *" 3
+The Synchronized Input and Output option
+.LP
+.IP " *" 3
+The Advisory Information option
+.LP
+.IP " *" 3
+The Typed Memory Objects option
+.LP
+.LP
+If one or more of the Advisory Information, Memory Mapped Files, or
+Shared Memory Objects options are supported, the following
+protection options shall be defined:
+.TP 7
+PROT_READ
+Page can be read.
+.TP 7
+PROT_WRITE
+Page can be written.
+.TP 7
+PROT_EXEC
+Page can be executed.
+.TP 7
+PROT_NONE
+Page cannot be accessed.
+.sp
+.LP
+The following \fIflag\fP options shall be defined:
+.TP 7
+MAP_SHARED
+Share changes.
+.TP 7
+MAP_PRIVATE
+Changes are private.
+.TP 7
+MAP_FIXED
+Interpret \fIaddr\fP exactly.
+.sp
+.LP
+The following flags shall be defined for \fImsync\fP():
+.TP 7
+MS_ASYNC
+Perform asynchronous writes.
+.TP 7
+MS_SYNC
+Perform synchronous writes.
+.TP 7
+MS_INVALIDATE
+Invalidate mappings.
+.sp
+.LP
+The following symbolic constants shall be defined for the \fImlockall\fP()
+function:
+.TP 7
+MCL_CURRENT
+Lock currently mapped pages.
+.TP 7
+MCL_FUTURE
+Lock pages that become mapped.
+.sp
+.LP
+The symbolic constant MAP_FAILED shall be defined to indicate a failure
+from the \fImmap\fP() function.
+.LP
+If the Advisory Information and either the Memory Mapped Files or
+Shared Memory Objects options are supported, values for
+\fIadvice\fP used by \fIposix_madvise\fP() shall be defined as follows:
+.TP 7
+POSIX_MADV_NORMAL
+.sp
+The application has no advice to give on its behavior with respect
+to the specified range. It is the default characteristic if no
+advice is given for a range of memory.
+.TP 7
+POSIX_MADV_SEQUENTIAL
+.sp
+The application expects to access the specified range sequentially
+from lower addresses to higher addresses.
+.TP 7
+POSIX_MADV_RANDOM
+.sp
+The application expects to access the specified range in a random
+order.
+.TP 7
+POSIX_MADV_WILLNEED
+.sp
+The application expects to access the specified range in the near
+future.
+.TP 7
+POSIX_MADV_DONTNEED
+.sp
+The application expects that it will not access the specified range
+in the near future.
+.sp
+.LP
+The following flags shall be defined for \fIposix_typed_mem_open\fP():
+.TP 7
+POSIX_TYPED_MEM_ALLOCATE
+.sp
+Allocate on \fImmap\fP().
+.TP 7
+POSIX_TYPED_MEM_ALLOCATE_CONTIG
+.sp
+Allocate contiguously on \fImmap\fP().
+.TP 7
+POSIX_TYPED_MEM_MAP_ALLOCATABLE
+.sp
+Map on \fImmap\fP(), without affecting allocatability.
+.sp
+.LP
+The \fBmode_t\fP, \fBoff_t\fP, and \fBsize_t\fP types shall be defined
+as described in \fI<sys/types.h>\fP .
+.LP
+The \fI<sys/mman.h>\fP header shall define the structure \fBposix_typed_mem_info\fP,
+which includes at least the
+following member:
+.sp
+.RS
+.nf
+
+\fBsize_t posix_tmi_length \fP Maximum length which may be allocated \fB
+ \fP from a typed memory object. \fB
+\fP
+.fi
+.RE
+.LP
+The following shall be declared as functions and may also be defined
+as macros. Function prototypes shall be provided.
+.sp
+.RS
+.nf
+
+\fB
+int mlock(const void *, size_t);
+
+
+int mlockall(int);
+
+
+void *mmap(void *, size_t, int, int, int, off_t);
+
+
+int mprotect(void *, size_t, int);
+
+
+int msync(void *, size_t, int);
+
+
+int munlock(const void *, size_t);
+
+
+int munlockall(void);
+
+
+int munmap(void *, size_t);
+
+
+int posix_madvise(void *, size_t, int);
+
+
+int posix_mem_offset(const void *restrict, size_t, off_t *restrict,
+ size_t *restrict, int *restrict);
+int posix_typed_mem_get_info(int, struct posix_typed_mem_info *);
+int posix_typed_mem_open(const char *, int, int);
+
+
+int shm_open(const char *, int, mode_t);
+int shm_unlink(const char *);
+
+\fP
+.fi
+.RE
+.LP
+\fIThe following sections are informative.\fP
+.SH APPLICATION USAGE
+.LP
+None.
+.SH RATIONALE
+.LP
+None.
+.SH FUTURE DIRECTIONS
+.LP
+None.
+.SH SEE ALSO
+.LP
+\fI<sys/types.h>\fP, the System Interfaces volume of
+IEEE\ Std\ 1003.1-2001, \fImlock\fP(), \fImlockall\fP(), \fImmap\fP(),
+\fImprotect\fP(), \fImsync\fP(), \fImunlock\fP(), \fImunlockall\fP(),
+\fImunmap\fP(), \fIposix_mem_offset\fP(),
+\fIposix_typed_mem_get_info\fP(), \fIposix_typed_mem_open\fP(), \fIshm_open\fP(),
+\fIshm_unlink\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 .