Билет 3. Программы-архиваторы и их назначение
Архиватором (упаковщиком) называется программа, позволяющая за счет применения специальных методов сжатия информации создавать копии файлов меньшего размера, а также объединять копии нескольких файлов в один архивный файл, из которого можно при необходимости извлечь файлы в их первоначальном виде. Весь спектр существующих сегодня архиваторов можно разделить на три группы, которые условно называются файловыми, программными и дисковыми. Программные архиваторы позволяют упаковать за один прием один единственный файл — исполняемую программу EXE-типа, но зато так, что заархивированная программа будет сразу после ее запуска на исполнение самораспаковываться в оперативной памяти и тут же начинать работу. Здесь удается добиться того, что программа становится вполовину меньше по размеру и ее работоспособность сохраняется. Кроме того, достигается и некоторая защита от постороннего глаза. Дисковые архиваторы позволяют программным способом увеличить почти вдвое доступное дисковое пространство на жестком или гибком диске. Это такие программы, как "Стекер", DblSpace из комплекта DOS, DrvSpase из комплекта Windows 95 и др. Типичный дисковый архиватор представляет собой резидентный (загружаемый в оперативную память и находящуюся в ней, пока не будет выключено питание компьютера) драйвер, который незаметно для пользователя архивирует любую записанную на диск информацию и распаковывает ее обратно при чтении. При этом на физическом диске создается огромный архивный файл (обычно с атрибутом "скрытый"), а для пользователя его содержимое показывается как содержимое еще одного, созданного при инсталляции архиватора, логического раздела диска. В результате эффект почти тот же, как при установке на компьютер дополнительного жесткого диска, однако операции чтения/записи несколько замедляются, поскольку процессору требуется время для упаковки и распаковки, кроме того, при использовании некоторых программ, непосредственно обращающихся к диску, возможны сложности, когда такая программа конфликтует с драйвером архиватора. Файловые архиваторы. Для долговременного хранения или передачи по компьютерным сетям файлы архивируются (сжимаются) с помощью файловых менеджеров и специализированных приложений − архиваторов. Такие архиваторы позволяют упаковывать один или несколько файлов (например, все содержимое данного подкаталога вместе с вложенными в него подкаталогами) в единый архивный файл. Размер архивного файла меньше, чем суммарный размер исходных файлов, но воспользоваться запакованными программами или данными, пока они находятся в архиве, нельзя, пока они не будут распакованы. Существует большое количество специализированных программ — архиваторов файлов (WinZip, WinRAR, RowerArchiver и др.). Одним из наиболее популярных средств создания архивов и управления ими является полностью русифицированный архиватор WinRAR, версии которого существуют для различных операционных систем: MS-DOS, Windows, Linux и др. WinRAR позволяет работать с архивами RAR и ZIP, использует высокоэффективный алгоритм сжатия данных, создает многотомные и самораспаковывающиеся архивы и так далее. Алгоритмы и методы архивации. Существуют различные алгоритмы архивации данных без потери информации, при которых при разархивации данные будут восстановлены в исходном виде. Самый простой алгоритм сжатия данных (running) основан на замене повторяющихся битов (в тексте может иметься последовательность одинаковых символов, в графическом файле − закрашенная одним цветом область и так далее). Например, в тексте подряд идут 10 пробелов, которые кодируются 10-ю байтами. При архивации они заменяются 3-мя байтами (первый байт − кодирует заменяемый символ; второй байт − специальный байт «флажка» архивации, который указывает на необходимость развернуть первый байт в последовательность байтов; третий байт указывает количество повторяющихся байтов). Алгоритм кодирования одинаковых последовательностей символов (LZW) ищет в текстовых файлах одинаковые слова, а в графических − одинаковые «узоры». Каждый такой фрагмент файла представляется определенным кодом (последовательностью бит) и в процессе архивации при повторных появлениях заменяется ссылкой на первичный код. Существуют различные методы архивации файлов (ZIP, RAR, ARJ и др.), которые используют вышеописанные и другие алгоритмы архивации. Методы архивации различаются степенью сжатия файлов, скоростью выполнения и другими параметрами. Лучше всего сжимаются текстовые и графические файлы и практически не сжимаются файлы архивов.
|