POSIX_MEMALIGN(3C) Standard C Library Functions POSIX_MEMALIGN(3C)
NAME
posix_memalign - aligned memory allocation
SYNOPSIS
#include <sys/mman.h>
int posix_memalign(
void **memptr,
size_t alignment,
size_t size);
DESCRIPTION
The
posix_memalign() function allocates size bytes aligned on a
boundary specified by alignment, and returns a pointer to the
allocated memory in
memptr. The value of alignment must be a power of
two multiple of
sizeof(
void *).
Upon successful completion, the value pointed to by
memptr will be a
multiple of alignment.
If the size of the space requested is 0, the value returned in
memptr will be a null pointer.
The
free(3C) function will deallocate memory that has previously been
allocated by
posix_memalign().
RETURN VALUES
Upon successful completion,
posix_memalign() returns zero. Otherwise,
an error number is returned to indicate the error.
ERRORS
The
posix_memalign() function will fail if:
EINVAL The value of the alignment parameter is not a power of two
multiple of
sizeof(
void *).
ENOMEM There is insufficient memory available with the requested
alignment.
ATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+--------------------+-------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-------------------+
|Interface Stability | Committed |
+--------------------+-------------------+
|MT-Level | MT-Safe |
+--------------------+-------------------+
|Standard | See
standards(7). |
+--------------------+-------------------+
SEE ALSO
free(3C),
malloc(3C),
memalign(3C),
attributes(7),
standards(7) July 14, 2008 POSIX_MEMALIGN(3C)