posix-next API 0.1.0
Out-of-tree Zephyr POSIX module
Loading...
Searching...
No Matches
mman.h File Reference

POSIX memory management (<sys/mman.h>) More...

#include <stddef.h>
#include <sys/types.h>
Include dependency graph for mman.h:

Go to the source code of this file.

Macros

#define PROT_NONE   0x0
 Pages may not be accessed.
 
#define PROT_READ   0x1
 Pages may be read.
 
#define PROT_WRITE   0x2
 Pages may be written.
 
#define PROT_EXEC   0x4
 Pages may be executed.
 
#define MAP_SHARED   0x1
 Changes are shared between all mappings of the same object.
 
#define MAP_PRIVATE   0x2
 Changes are private (copy-on-write).
 
#define MAP_FIXED   0x4
 Map at the exact address given in addr.
 
#define MAP_ANONYMOUS   0x20
 Anonymous mapping; fd argument is ignored.
 
#define MS_SYNC   0x0
 Flush modified pages to the underlying file synchronously.
 
#define MS_ASYNC   0x1
 Schedule writes; return immediately.
 
#define MS_INVALIDATE   0x2
 Invalidate cached data so subsequent reads reflect the file.
 
#define MAP_FAILED   ((void *)-1)
 Value returned by mmap() on failure.
 
#define MCL_CURRENT   0
 Lock all currently mapped pages into memory.
 
#define MCL_FUTURE   1
 Lock all future mappings into memory.
 

Functions

int mlock (const void *addr, size_t len)
 Lock a range of the calling process's address space into memory.
 
int mlockall (int flags)
 Lock all current and/or future memory mappings of the calling process.
 
void * mmap (void *addr, size_t len, int prot, int flags, int fildes, off_t off)
 Map a file or device into memory.
 
int msync (void *addr, size_t length, int flags)
 Synchronise a memory mapping with the underlying storage.
 
int munlock (const void *addr, size_t len)
 Unlock a range of the calling process's address space.
 
int munlockall (void)
 Unlock all memory locked by the calling process.
 
int munmap (void *addr, size_t len)
 Unmap a previously mapped region.
 
int shm_open (const char *name, int oflag, mode_t mode)
 Open or create a shared memory object.
 
int shm_unlink (const char *name)
 Remove a shared memory object.
 

Detailed Description

POSIX memory management (<sys/mman.h>)

Provides memory mapping, shared memory objects, and memory locking.

See also
POSIX.1-2017 <sys/mman.h>

Definition in file mman.h.