У меня есть папка, которая содержит более 200 файлов и имеет размер более 1,3 ГБ:
Я использую программное обеспечение Gizmo Drive для создания файла .iso из этой папки.
Интересно, что это займет всего 1 или 2 секунды !
Я пробовал это несколько раз. Я даже пытался создать файл .iso на другом томе. Опять же, это займет всего 1 или 2 секунды.
Я попытался смонтировать файл .iso, все отлично работает. Я подумал, что это может быть файл .iso, ссылающийся на исходную папку, затем я переместил исходную папку в другое место, но не повезло. Даже копирование созданного .iso файла занимает минуты!
Так как создание файла .iso занимает всего 1 секунду! У вас есть какое-нибудь объяснение этому?
Заметки
- Все тесты проводятся на обычном HDD, без SSD.
- Используя Windows 7 x64, имеем 16 Гб памяти, процессор Core i5.
Я использовал sync.exe для сброса всех данных файловой системы на диск сразу после того, как файл .iso был создан, и для sync.exe потребовалось 14 секунд, чтобы сбросить данные. Это означает, что на самом деле создание файла .iso занимает 14 секунд. Быстрый тест на моем диске D: показывает, что он может записать тот же файл .iso с SSD на мой диск D: за 14 секунд, и это подтверждает, что исходная папка находится в ОЗУ, а для очистки данных требуется 14 секунд. **
источник
D:
это не RAM Drive - вряд ли, но возможно.Sync
упомянутую здесь команду после создания ISO, посмотрите, сколько времени это займет.Ответы:
С 16 ГБ ОЗУ у вас, вероятно, есть много свободного места для кэширования диска. Скорее всего, ISO только что был буферизован операционной системой в ОЗУ; это будет записано на диск позже, но приложения не должны ждать этого.
источник
WriteFile
до момента, когда данные начинают попадать на контроллер диска. В течение этого времени вызовы чтения / записи будут относиться к версии в памяти. Флаг сквозной записи позволит вам обойти кеш Windows, но вы все еще находитесь в зависимости от кеша контроллера диска.