1/* 2 * sys/mman.h 3 * mman-win32 4 */ 5 6#ifndef _SYS_MMAN_H_ 7#define _SYS_MMAN_H_ 8 9#ifndef _WIN32_WINNT // Allow use of features specific to Windows XP or later. 10#define _WIN32_WINNT 0x0501 // Change this to the appropriate value to target other versions of Windows. 11#endif 12 13/* All the headers include this file. */ 14#ifndef _MSC_VER 15#include <_mingw.h> 16#endif 17 18#include <sys/types.h> 19 20#ifdef __cplusplus 21extern "C" { 22#endif 23 24#define PROT_NONE 0 25#define PROT_READ 1 26#define PROT_WRITE 2 27#define PROT_EXEC 4 28 29#define MAP_FILE 0 30#define MAP_SHARED 1 31#define MAP_PRIVATE 2 32#define MAP_TYPE 0xf 33#define MAP_FIXED 0x10 34#define MAP_ANONYMOUS 0x20 35#define MAP_ANON MAP_ANONYMOUS 36 37#define MAP_FAILED ((void *)-1) 38 39/* Flags for msync. */ 40#define MS_ASYNC 1 41#define MS_SYNC 2 42#define MS_INVALIDATE 4 43 44void* mmap(void *addr, size_t len, int prot, int flags, int fildes, off_t off); 45int munmap(void *addr, size_t len); 46int mprotect(void *addr, size_t len, int prot); 47int msync(void *addr, size_t len, int flags); 48int mlock(const void *addr, size_t len); 49int munlock(const void *addr, size_t len); 50 51#ifdef __cplusplus 52}; 53#endif 54 55#endif /* _SYS_MMAN_H_ */ 56