57

Сжать и загрузиться: программы уплотнения дисков.

Введение


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


Программы сжатия дисков были доступны для:

- MS-DOS старше 5 версии

- PC-DOS старше 5 версии

- Windows 3.x

- Windows 95

- Windows 98

- Windows Me только сжатие гибких дисков

- OS/2 старше 2 версии

- OS/2 Warp

- Novell NetWare 3.x. использовала NetSqueeze


Речь пойдет о сжатии дисков программами Stacker 4 и DriveSpace 3. Именно их я использовал в годы острой нехватки свободного пространства. Суть сжатия заключается в создании на диске файла сжатого диска, при этом сам файл монтировался в систему и получал букву как обычный диск.


- Под сжатие можно отдать весь диск или его часть.

- Размер файла сжатого диска можно менять в обе стороны.

- Несущий диск можно скрыть.

- Можно сжать системный диск и загружаться с него.

- Большинство загрузочных дисков DOS корректно воспринимают сжатые диски

- Поддерживаются только FAT12 и FAT16

- Сжать можно как жесткий, так и гибкий диск.



Повреждение данных


Потеря данных конечно возможна. Обусловлена она в основном двумя факторами и оба человеческие. Первый - это безусловно, отключение компьютера до сброса дискового кэша. Оно и сейчас губительно для данных, но в случае со сжатыми данными внутри одного файла, ситуация обостряется. Второй фактор: если диск не примонтирован (например был не загружен драйвер сжатия), пользователь вместо содержимого сжатого диска лишь файл большого размера. И этот файл ничто не мешает удалить, потеряв всё.



Stacker

(Экран установки Stacker)


После установки я сдал системный диск и второй диск, размером 1 Гб. На него я буду записывать файлы с целью определить, сколько данных поместится. На снимке ниже в левой панели виден сжатый диск С, а на правой панели несущий диск D. На нем я выделил файл сжатого диска.

(Выделен файл сжатого диска)

(Статистика сжатия диска С)


Теперь суть эксперимента: у меня есть диск с файлами: 2Гб разных файлов. И есть сжатый 1 Гб диск. Проверим сколько поместится.

(Начинаю копирование.)


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

(Коэффициент сжатия 2 к 1)


На этом снимке хорошо видно, что 1 299 Мб полезных данных заняли 1 782 Мб, заняв фактически 858 Мб. Создавая сжатый диск размером, близким к пределу FAT16 мы попадаем на потери, вызванные большим размером кластера: 32КБ. Впрочем, больших дисков тогда и не водилось.

DriveSpace 3


Корпорация Microsoft так-же не стояла на месте и совершенствовала свой продукт. Сложно сказать, у кого лучше получилось. Основные отличия появились именно в DriveSpace 3: появился Агент сжатия, оптимизирующий соотношение скорость/сжатие и на выбор три алгоритма сжатия.


Начнем со сжатия диска

(Сжатие диска)



После сжатия я начинаю копировать данные до получения сообщения об исчерпании свободного пространства.

Система выдала долгожданную ошибку, смотрим свойства диска:

(При использовании стандартного сжатия, коэффициент 1,67 к 1 и свободно на диске 1,2 МБ)


Но и тут у нас есть выход: Использовать Агент сжатия. Запускаем, разрешив использовать только HiPack. Это хороший алгоритм сжатия, обеспечивающий сильную компрессию и хорошую производительность. Кстати, можно совмещать два алгоритма в зависимости от использования файлов.

(Выборочное использование UltraPack)

(Прирост свободного места)

(Отчет о сжатии.)


Повторю оптимизацию, разрешив использование UltraPack для всех файлов

Обратите внимание: при переходе со стандартного сжатия (1,67 к 1) на HiPack (1,8 к 1), мы освободили дополнительно 109 МБ пространства. Но при переходе на алгоритм UltraPack получив коэффициент 2,02 к 1 мы не получили дополнительного пространства: те - же 109 Мб. Коэффициент сжатия вырос, но мы достигли лимита FAT16.


Потери на остатках кластеров


На этом снимке хорошо видно, что 1,47 Гб полезных данных заняли 2 Гб, заняв фактически 1 Гб. И мы опять уперлись в предел FAT 16 и попали на большой размер кластера.

Получается, что сжатие диска обязывает нас использовать FAT16, а это вызывает потери на остатках кластера. При этом стоит напомнить, что за счет сжатия мы всё равно остаемся в плюсе.



FAT32 экономит пространство


FAT32 пришла на смену FAT16 в августе 1996 года (Windows95 OSR2).

При наличии дисков больше 2 Гб имеет смысл задуматься об использовании FAT32. На этом снимке диск FAT16 2Гб. Размер кластера 32КБ. Обратите внимание на свободное пространство диска D до конвертации в FAT32.

А теперь посмотрите на него после конвертации: сэкономили почти четверть: это был переход на FAT32 с кластером 4Кб.

Описанные в статье методы сжатия давно уже неактуальны, в связи с ростом объема носителя. Сжатие дисков теперь стало возможностью файловых систем. Принцип контейнерного хранения теперь используется в шифровании.



Бонусные видео для сравнения:

(Дефрагментация диска)

(Дефрагментация сжатого диска)



Функционала галереи тут нету, поэтому больше фото в моем блоге.

IT минувших дней

1.2K поста7.4K подписчика

Правила сообщества

Запрещается добавлять новости о прошлогодних новинках, а также посты, не относящиеся к тематике "ретро в ИТ".

Желательно соблюдать правила приличия.