Подтвердить что ты не робот

Есть ли отображение памяти api на платформе Windows, как и mmap() на linux?

Есть ли api для отображения памяти, так же, как

mmap()

в linux?

4b9b3361

Ответ 1

Отображение файлов

Сопоставление файлов - это связь содержимого файла с частью виртуального адресного пространства процесса. Система создает объект сопоставления файлов (также известный как объект раздела), чтобы поддерживать эту связь. Представление файла - это часть виртуального адресного пространства, которую процесс использует для доступа к содержимому файла. Сопоставление файлов позволяет процессу использовать как случайный ввод и вывод (I/O), так и последовательный ввод/вывод. Это также позволяет процессу эффективно работать с большим файлом данных, таким как база данных, без необходимости отображать весь файл в память. Несколько процессов могут также использовать отображенные в памяти файлы для обмена данными.

Процессы читают и записывают в представление файла, используя указатели, так же, как и при динамически распределенной памяти. Использование сопоставления файлов повышает эффективность, поскольку файл находится на диске, а представление файла находится в памяти. Процессы также могут манипулировать видом файла с помощью функции VirtualProtect.

Ответ 2

Зависит от того, для чего именно вы хотите его использовать. Если вы хотите отобразить существующие файлы в память, это поддерживается файлами, отображенными в память. Их также можно использовать для разделения памяти между процессами (используйте именованный объект отображения без основного файла). Если вы хотите отобразить физическую память, это обычно не поддерживается в пользовательском режиме, хотя есть некоторые хитрости.