Я ищу RAM-диск (желательно свободный), который получает свое содержимое из указанной папки на жестком диске, а также записывает изменения, внесенные в него, обратно в эту папку. Есть ли такая вещь для Windows?
Я ищу RAM-диск (желательно свободный), который получает свое содержимое из указанной папки на жестком диске, а также записывает изменения, внесенные в него, обратно в эту папку. Есть ли такая вещь для Windows?
Ответы:
Я бы пошел с VSuite Ramdisk . К сожалению, это условно-бесплатная (50 $).
Он поддерживает (почти) синхронизацию в реальном времени с жестким диском.
Фундаментальная проблема с синхронизацией в реальном времени - огромная потеря производительности. Если синхронизация будет синхронной, скорость записи на ОЗУ будет такой же, как на жестком диске. Скорость чтения будет быстрее, хотя.
Для тех, кто ищет бесплатную альтернативу, вы можете добиться чего-то подобного, создав диск RAM через ImDisk и затем выполнив шаги, которые я изложил здесь: Хранение файлов жесткого диска в виртуальной памяти без изменения путей к файлам .
При условии, что:
- Вы уже создали ОЗУ в физической памяти, назначенной
R:
(любая другая буква тоже подойдет).- Вы хотите сделать папку
C:\Folder1
доступной в оперативной памяти для более быстрого доступа.Folder1
хранится на локальном томе NTFS.Применение изменений
- Закройте все программы, которые могут получить доступ
Folder1
.- Переименуйте
Folder1
вFolder1.zTarget
(реальное имя не важно, если оно другое).- Скопируйте
Folder1.zTarget
в ОЗУ (R:
).- Создайте [ссылку на соединение каталога] [1] с именем,
Folder1
указывающим наR:\Folder1.zTarget
.Отныне каждый раз, когда
C:\Folder1
вы получаете доступ к тому, к чему вы на самом деле обращаетесь, это данные, хранящиеся на диске RAM (R:\Folder1.zTarget
).Возврат обратно
- Закройте все программы, которые могут получить доступ
Folder1
(теперь ссылка на соединение каталога).- Если какой-либо файл внутри
Folder1
был изменен, скопируйтеFolder1.zTarget
из RAM (R:
) в disk (C:
), чтобы сохранить изменения.- Удалить ссылку соединения каталога с именем
Folder1
.- Переименуйте
Folder1.zTarget
обратно вFolder1
.
Проверьте связанный ответ для примера рабочего пакетного сценария.
Синхронизация будет выполняться только по запросу, что является наилучшим вариантом с точки зрения производительности. В конце концов, можно получить автоматическую синхронизацию, записывая данные обратно на диск, скажем, каждые 15 минут (например, с помощью запланированного задания).