Memory 转到Windows将标志传递到内存映射系统调用

Memory 转到Windows将标志传递到内存映射系统调用,memory,go,system-calls,memory-mapped-files,Memory,Go,System Calls,Memory Mapped Files,在Unix中,Go可以执行以下操作: // func Mmap(fd int, offset int64, length int, prot int, flags int) (data []byte, err error) syscall.Mmap(., ., ., ., syscall.MAP_SHARED|syscall.XXX) 在Windows中,您可以使用以下选项: 但是我没有看到Windows的CreateFileMapping的任何标志参数 是否有人知道如何将标志传递给Crea

在Unix中,Go可以执行以下操作:

// func Mmap(fd int, offset int64, length int, prot int, flags int) (data []byte, err error)
syscall.Mmap(., ., ., ., syscall.MAP_SHARED|syscall.XXX)
在Windows中,您可以使用以下选项:

但是我没有看到Windows的
CreateFileMapping
的任何标志参数


是否有人知道如何将标志传递给
CreateFileMapping
函数,如
syscall.MAP\u SHARED | syscall.XXX

看起来您可以从中获取保护标志的整数值。似乎没有Unix-y标志的一对一映射,例如,没有共享映射的标志,当您将调用传递给文件名时,默认情况下您会得到一个共享映射。

看起来您可以从中获取保护标志的整数值。似乎不存在带有Unix-y标志的一对一映射,例如,在传递调用文件名时,默认情况下,您会得到一个共享映射,而不是共享映射的标志

// func CreateFileMapping(fhandle Handle, sa *SecurityAttributes, prot uint32, maxSizeHigh uint32, maxSizeLow uint32, name *uint16) (handle Handle, err error)
syscall.CreateFileMapping(., ., syscall.PAGE_READONLY, ., ., nil)