Windows等效于sys / mman.h

我在尝试在Win64上编译我的C代码时遇到了问题。 更具体地说,编译器找不到sys/mman.h头文件,我理解只能在Unix环境中找到它。

我已经知道这是内存分配的处理。

是否有一个等效的Windows我可以用来移植代码(第一次尝试)?

代码导致问题:

 /* Allocate memory required by processes */ buf = (int*) malloc (sizeof(int)); if (!buf) { perror("Error"); free (buf); return -3; } /* Lock down pages mapped to processes */ puts("Locking down processes."); if(mlockall (MCL_CURRENT | MCL_FUTURE) < 0) { perror("mlockall"); free (buf); return -4; } 

你应该看一下mman-win32库 。 但正如@Mgetz所指出的,更简单的方法是查看[VirtualAllocEx][2]函数并尝试调整代码。