Программные средства уплотнения носителей
Теоретические основы
В основе уплотнения носителей (например, дисков) также лежит принцип сжатия данных за счет уменьшения избыточности путем изменения структуры, но при этом надо иметь в виду ряд особенностей:
• процесс уплотнения носителей является относительным, то есть никакого физического увеличения емкости носителя не происходит, а вместо этого происходит сжатие записываемых данных, что вызывает эффект кажущегося увеличения емкости носителя;
• процесс сжатия данных происходит под управлением программ, работающих автоматически в фоновом режиме, и, тем самым, он «прозрачен» для пользователя, который никак не ощущает разницы в работе с обычным и уплотненным носителем, но может констатировать факт размещения на диске большего объема данных, чем физическая емкость диска;
• степень сжатия данных зависит, как мы знаем, от типа данных, поэтому наблюдаемое приращение емкости носителя не является величиной постоянной и непрерывно меняется в зависимости от того, какой тип данных добавляется на носитель.
Из вышесказанного вытекает, в частности, что в основе алгоритмов сжатия данных, используемых для уплотнения носителей, не могут лежать необратимые методы хотя бы потому, что заранее неизвестен тип данных, который будет записан, а некоторые типы данных (например, программный код) не допускают потери данных ни в малейшей степени.
Практическая реализация концепции уплотнения дисков
1. На физическом диске создается скрытый файл, предназначенный для записи сжатых данных. Данный файл называют файлом сжатого тома, а физический диск, на котором он размещен, называют несущим диском.
2. На уровне операционной системы происходит объявление файла сжатого тома в качестве нового уплотненного диска. То есть, данные, которые записываются на уплотненный диск, на самом деле заносятся в файл сжатого тома, расположенный на несущем диске.
3. Если файл сжатого тома занимает весь несущий диск, то несущий диск делается
скрытым и его место в операционной системе занимает уплотненный диск.
4. Весь обмен информацией с уплотненным диском происходит не под управлением
стандартных средств операционной системы, а под управлением специальной
программы — драйвера сжатого тома, которая интегрируется в операционную
систему и организует ее взаимодействие с нестандартной файловой системой,
созданной внутри файла сжатого тома.
«Присоединение» уплотненного диска
Термин присоединение диска (mounting — монтаж) возник еще в те годы, когда прикладные программисты работали за терминалами больших ЭВМ и были полностью оторваны от аппаратных средств компьютера. Если им требовалось программное обеспечение, расположенное на известном им магнитном диске (магнитном барабане, магнитной ленте), то приходилось лично или по телефону обращаться в группу технического обеспечения с просьбой установить носитель на нужное устройство чтения. Поскольку машинное время пользователям в те годы выделялось малыми порциями по утвержденному расписанию, иногда приходилось даже подавать предварительную заявку на установку носителей в определенные часы.
С персональной вычислительной техникой так не работают, но термин остался, хотя стал виртуальным. При присоединении уплотненного диска, конечно же, не происходит никаких монтажных работ, однако если в компьютерной системе имеется уплотненный диск, то со стороны операционной системы возможен двойной взгляд на его структуру.
Во-первых, операционная система может рассматривать его как обычный несущий диск, на котором расположен файл сжатого тома (самый обычный файл, только очень большой). С другой стороны, операционная система может рассматривать тот же диск через посредство драйвера сжатого тома, и тогда она «не видит» файла сжатого тома на несущем диске, но наблюдает как бы дополнительный диск, имеющийся в компьютерной системе.
Оба подхода имеют равные права на существование, и переход от первого представления ко второму и называется присоединением уплотненного диска. Обратная операция, соответственно, называется отсоединением.
Целесообразность уплотнения носителей
Подход к уплотнению носителей неоднозначен. Всегда есть компьютерные системы, имеющие недостаточную емкость жестких дисков, но нуждающиеся в хранении (хотя бы и временном) больших объемов данных. С другой стороны, удельная стоимость хранения единицы данных в последние годы падает столь стремительно, что актуальность уплотнения жестких дисков значительно снизилась. Оценивая возможность уплотнения носителей, следует иметь в виду, что наличие такого носителя в компьютерной системе несколько затрудняет ее обслуживание и заметно снижает ее надежность, в первую очередь в связи с особой сложностью восстановления информации в случае неожиданных повреждений аппаратного или программного обеспечения.
В то же время, типовые объемы данных, обрабатываемых компьютером, неуклонно растут. Существуют некоторые виды работ (прежде всего, это компьютерная графика и видеомонтаж), для которых характерно создание огромных объемов малоценных промежуточных данных. Использование уплотненных дисков для хранения результатов промежуточных операций во многих случаях бывает и рациональным, и оправданным. Следует также иметь в виду, что общее быстродействие компьютерной системы на ряде операций при таком подходе может не только не сократиться, но даже повыситься, в связи с тем, что в операциях чтения/записи участвуют механические устройства, а операции упаковки/распаковки данных выполняются только электронными средствами. Выигрыш от ускорения операций чтения/записи во многих случаях окупает проигрыш в операциях упаковки/распаковки.
Таким образом, принятие решения о целесообразности использования средств уплотнения носителей во всех случаях требует тщательного анализа и повышенной внимательности в обслуживании компьютерной системы. Многое из того, что может себе позволить владелец обычной компьютерной системы, недопустимо, небезопасно или просто неудобно для владельца системы, имеющей уплотненные диски.
Программа Сжатие данных (DriveSpace 3)
В состав операционной системы Windows 98 входит программа Сжатие данных (DriveSpace 3).
Она запускается командой Пуск > Программы > Стандартные > Служебные > Сжатие данных. Технология уплотнения ( на примере гибкого диска) представлена схемой на рис. 14.10. Как видно из схемы, в результате операции на гибком диске А: образуется скрытый несущий диск Н:, а сам диск А: после этого рассматривается как уплотненный.
SI В связи с тем, что в операционной системе Windows 98 реализован новый метод организации файловой системы (FAT 32), программа Сжатие данных (DriveSpaces) не рассчитана на работу с жесткими дисками большой емкости (более 512 Мбайт). Это понятно, если учесть, что потребность в уплотнении наиболее характерна для дисков малой емкости, хотя надо полагать, что по мере развития операционной системы в ближайших ее версиях появится и поддержка уплотнения для дисков размером более 512 Мбайт.
Рис. 14.10. Схема применения технологии уплотнения дисков