Некоторые файловые системы позволяют хранить данные в сжатом формате, чтобы они занимали меньше места на диске. Сжатие файлов может происходить как минимум на трех уровнях. На самом высоком уровне данные сжимаются в файловом формате. В качестве примера можно привести файлы JPEG: данные графического изображения хранятся в сжатом виде, а заголовок файла - нет. На следующем уровне внешняя программа сжимает все содержимое файла и создает новый файл1. Перед использованием сжатый файл необходимо распаковать в другой файл.

Последний и самый низкий уровень сжатия - сжатие данных на уровне файловой системы. В этом случае приложение, записывающее данные, не знает, что файл будет храниться в сжатом виде. В файловых системах используются два стандартных метода сжатия. Наиболее очевидное решение - применение к блокам данных стандартных алгоритмов сжатия, используемых для файлов. Во втором методе файловая система не выделяет физический блок данных, который должен быть заполнен одними нулями. Файлы, в которых пропускаются блоки данных, заполненные одними нулями, называются разреженными файлами; пример показан на рис. 8.12. Существует несколько способов реализации разреженных файлов. Например, UFS (Unix File System) записывает 0 в поле, в котором обычно хранится адрес блока. Ни одному файлу не может быть выделен блок 0; ОС знает, что ноль означает блок, заполненный одними нулями.

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

Рис. 8.12. Файл хранится в сжатом формате: блоки данных, заполненные одними нулями, не записываются на диск

Резервное пространство | Криминалистический анализ файловых систем | Шифрование файлов


Криминалистический анализ файловых систем



Новости за месяц

  • Апрель
    2020
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31