Luna/libc/include/sys/mman.h
apio b01aa72f17
All checks were successful
continuous-integration/drone/push Build is passing
libc+init+shmem-test: Add POSIX shared memory objects
2023-08-03 10:32:52 +02:00

42 lines
875 B
C

/* sys/mman.h: Memory allocation and deallocation. */
#ifndef _SYS_MMAN_H
#define _SYS_MMAN_H
#include <bits/mmap-flags.h>
#include <sys/types.h>
#define PAGE_SIZE 4096UL
#define MAP_FAILED (void*)-1
#define MS_SYNC 1
#define MS_ASYNC 2
#define MS_INVALIDATE 4
#ifdef __cplusplus
extern "C"
{
#endif
/* Map a file into memory. */
void* mmap(void* addr, size_t len, int prot, int flags, int fd, off_t offset);
/* Remove a memory mapping. */
int munmap(void* addr, size_t len);
/* Write modified shared memory back to its associated file. */
int msync(void* addr, size_t len, int flags);
/* Create a new POSIX shared memory object. */
int shm_open(const char* name, int oflag, mode_t mode);
/* Delete a POSIX shared memory object from the file system. */
int shm_unlink(const char* name);
#ifdef __cplusplus
}
#endif
#endif