Branch
Hash :
adfbfffa
Author :
Date :
2024-07-20T20:02:14
doc: Sort the ISO C and POSIX Function Substitutes by header file. * doc/gnulib.texi (Function Substitutes): Add one section per header file. * doc/posix-functions/*.texi: Each of these files is now a subsection.
@node mmap
@subsection @code{mmap}
@findex mmap
POSIX specification:@* @url{https://pubs.opengroup.org/onlinepubs/9799919799/functions/mmap.html}
Gnulib module: ---
Portability problems fixed by Gnulib:
@itemize
@item
On platforms where @code{off_t} is a 32-bit type, this function may not
work correctly across the entire data range of files 2 GiB and larger.
@xref{Large File Support}.
@end itemize
Portability problems not fixed by Gnulib:
@itemize
@item
This function is missing on some platforms:
mingw, MSVC 14.
@item
To get anonymous memory, on some platforms, you can use the flags
@code{MAP_ANONYMOUS | MAP_PRIVATE} and @code{-1} instead of a file descriptor;
on others you have to use a read-only file descriptor of @file{/dev/zero}.
@item
On HP-UX, passing a non-NULL first argument, as a hint for the address (even
without @code{MAP_FIXED}), often causes @code{mmap} to fail. Better pass NULL
in this case.
@item
On HP-UX, @code{MAP_FIXED} basically never works. On other platforms, it depends
on the circumstances whether memory can be returned at a given address.
@end itemize