Ищете Windows RAM Disk, который отражает записи на жесткий диск

8

Я ищу RAM-диск (желательно свободный), который получает свое содержимое из указанной папки на жестком диске, а также записывает изменения, внесенные в него, обратно в эту папку. Есть ли такая вещь для Windows?

ctusch
источник
1
Нет, это не так. Этот вопрос вообще о виртуальных дисках и ничего не говорит о синхронизации жесткого диска.
Олли
Разве это не то, что делает дисковый кеш Windows?
Surfasb
Должно быть, я думаю. На практике, когда я компилирую свое решение на диске RAM, это вдвое быстрее, чем при использовании жесткого диска, даже при компиляции несколько раз подряд.
ctusch

Ответы:

4

Я бы пошел с VSuite Ramdisk . К сожалению, это условно-бесплатная (50 $).

Он поддерживает (почти) синхронизацию в реальном времени с жестким диском.

Фундаментальная проблема с синхронизацией в реальном времени - огромная потеря производительности. Если синхронизация будет синхронной, скорость записи на ОЗУ будет такой же, как на жестком диске. Скорость чтения будет быстрее, хотя.

Олли
источник
1
Выглядит хорошо, спасибо. Конечно, я имел в виду асинхронную синхронизацию данных обратно на жесткий диск. :)
ctusch
Некоторые другие программы RAM диск предлагает функцию резервного копирования также: Dataram , SuperSpeed .
Пользователь5910
4

Для тех, кто ищет бесплатную альтернативу, вы можете добиться чего-то подобного, создав диск RAM через ImDisk и затем выполнив шаги, которые я изложил здесь: Хранение файлов жесткого диска в виртуальной памяти без изменения путей к файлам .

При условии, что:

  • Вы уже создали ОЗУ в физической памяти, назначенной R:(любая другая буква тоже подойдет).
  • Вы хотите сделать папку C:\Folder1доступной в оперативной памяти для более быстрого доступа.
  • Folder1 хранится на локальном томе NTFS.

Применение изменений

  1. Закройте все программы, которые могут получить доступ Folder1.
  2. Переименуйте Folder1в Folder1.zTarget(реальное имя не важно, если оно другое).
  3. Скопируйте Folder1.zTargetв ОЗУ ( R:).
  4. Создайте [ссылку на соединение каталога] [1] с именем, Folder1указывающим на R:\Folder1.zTarget.

Отныне каждый раз, когда C:\Folder1вы получаете доступ к тому, к чему вы на самом деле обращаетесь, это данные, хранящиеся на диске RAM ( R:\Folder1.zTarget).

Возврат обратно

  1. Закройте все программы, которые могут получить доступ Folder1(теперь ссылка на соединение каталога).
  2. Если какой-либо файл внутри Folder1был изменен, скопируйте Folder1.zTargetиз RAM ( R:) в disk ( C:), чтобы сохранить изменения.
  3. Удалить ссылку соединения каталога с именем Folder1.
  4. Переименуйте Folder1.zTargetобратно в Folder1.

Проверьте связанный ответ для примера рабочего пакетного сценария.

Синхронизация будет выполняться только по запросу, что является наилучшим вариантом с точки зрения производительности. В конце концов, можно получить автоматическую синхронизацию, записывая данные обратно на диск, скажем, каждые 15 минут (например, с помощью запланированного задания).

and31415
источник