summaryrefslogtreecommitdiff
path: root/vere/pkg/c3/platform/windows/mman.h
diff options
context:
space:
mode:
authorpolwex <polwex@sortug.com>2025-10-05 21:56:51 +0700
committerpolwex <polwex@sortug.com>2025-10-05 21:56:51 +0700
commitfcedfddf00b3f994e4f4e40332ac7fc192c63244 (patch)
tree51d38e62c7bdfcc5f9a5e9435fe820c93cfc9a3d /vere/pkg/c3/platform/windows/mman.h
claude is gud
Diffstat (limited to 'vere/pkg/c3/platform/windows/mman.h')
-rw-r--r--vere/pkg/c3/platform/windows/mman.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/vere/pkg/c3/platform/windows/mman.h b/vere/pkg/c3/platform/windows/mman.h
new file mode 100644
index 0000000..965fecf
--- /dev/null
+++ b/vere/pkg/c3/platform/windows/mman.h
@@ -0,0 +1,26 @@
+#ifndef _SYS_MMAN_H
+#define _SYS_MMAN_H
+
+void *mmap(void *addr, size_t length, int prot, int flags, int fd, off_t offset);
+int munmap(void *addr, size_t length);
+int msync(void *addr, size_t length, int flags);
+int mprotect(void *addr, size_t len, int prot);
+
+#define PROT_NONE 0x00 /* No access. */
+#define PROT_READ 0x01 /* Pages can be read. */
+#define PROT_WRITE 0x02 /* Pages can be written. */
+#define PROT_EXEC 0x04 /* Pages can be executed. */
+
+#define MAP_FILE 0x0001 /* Mapped from a file or device. */
+#define MAP_ANON 0x0002 /* Allocated from anonymous virtual memory. */
+#define MAP_TYPE 0x000f /* Mask for type field. */
+#define MAP_SHARED 0x0010 /* Share changes. */
+#define MAP_PRIVATE 0x0000 /* Changes private; copy pages on write. */
+#define MAP_FIXED 0x0100 /* Map address must be exactly as requested. */
+#define MAP_FAILED ((void *) -1)
+
+#define MS_ASYNC 1 /* Sync memory asynchronously. */
+#define MS_SYNC 0 /* Synchronous memory sync. */
+#define MS_INVALIDATE 2 /* Invalidate the caches. */
+
+#endif//_SYS_MMAN_H