Эквивалент Windows для sys / mman.h

Я сталкиваюсь с проблемами при попытке скомпилировать свой код C на Win64. Более конкретно, компилятор не может найти заголовок 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] и попытаться адаптировать ваш код.