Поделиться через


Выделение виртуальной памяти

Функции виртуальной памяти управляют страницами памяти. Функции используют размер страницы на текущем компьютере для округления указанных размеров и адресов.

Функция VirtualAlloc выполняет одну из следующих операций:

  • Резервирует одну или несколько бесплатных страниц.
  • Фиксирует одну или несколько зарезервированных страниц.
  • Резервирует и фиксирует одну или несколько бесплатных страниц.

Вы можете указать начальный адрес страниц, которые будут зарезервированы или зафиксированы, или вы можете разрешить системе определить адрес. Функция округляет указанный адрес до соответствующей границы страницы. Зарезервированные страницы недоступны, но зафиксированные страницы можно выделить с помощью PAGE_READWRITE, PAGE_READONLY или PAGE_NOACCESS доступа. При фиксации страниц плата за память выделяется из общего размера ОЗУ и файлов подкачки на диске, но каждая страница инициализируется и загружается в физическую память только при первой попытке чтения или записи на нее. Вы можете использовать обычные ссылки указателей для доступа к памяти, зафиксированной функцией VirtualAlloc .