Разреженные файлы являются расширением файловой системы, которое впервые было представлено в операционной системе Windows 2000. Идея разреженных файлов предназначена для сохранения дискового пространства, которое выделяется под хранение больших однородных файлов. Представьте, что необходимо прочитать книгу, в которой используются только символы "0" и "1" (именно так выглядит жесткий диск для компьютера).

Предположим, что необходимо прочитать данные, состоящие из одной 1 и миллиона 0. Вместо записи 100000000 (здесь мы остановимся, чтобы не заставлять вас просматривать несколько страниц, состоящих из одних 0). Не проще ли будет записать 1[здесь миллион 0]? Именно так устроены разреженные файлы. Бессмысленные данные (большие последовательности, состоящие из одних 0) не требуют выделения дискового пространства и для них просто записывается ссылка. Поддержка разреженных файлов позволяет не только сохранить дисковое пространство, но и увеличить быстродействие операций чтения и записи.

Команда fsutil sparse позволяет:

  • Находить разреженные файлы
  • Отмечать файлы, как разреженные
  • Сканировать файлы на предмет наличия диапазонов ненулевых данных
  • Заполнять фрагменты файлов нулями

Команда fsutil sparse имеет следующий синтаксис:

fsutil sparse <queryflag | queryrange | setflag | setrange > <path> [offset] [length]

Параметры команды fsutil sparse рассматриваются в следующей таблице.

Параметры команды fsutil sparse

Параметр

Использование

queryflag

Определяет, помечен ли файл, как разреженный

queryrange

Отображает диапазоны разреженного файла, которые содержат ненулевые данные.

setflag

Устанавливает флаг разреженности для файла

setrange

Заполняет диапазон (определяемый параметрами offset и length) указанного разреженного файла нулями

path

Указывает полный путь к разреженному файлу. Если путь содержит пробелы, то его необходимо заключить в кавычки

offset

Указывает точку в пределах файла, которая должна быть отмечена, как разреженная (начало последовательности нулей)

length

Указывает длину в байтах диапазона, который указывается, как разреженный

Для указания файла D:\Docs\HornyMommy.txt, как разреженного файла необходимо запустить следующую команду:

fsutil sparse setflag d:\docs\hornymommy.txt

Для того, чтобы после этого просмотреть диапазоны файла с ненулевыми данными, необходимо запустить следующую команду:

fsutil sparse queryrange d:\docs\hornymommy.txt

Команда fsutil sparse является самым эффективным средством для работы с разрешенными файлами.