Архиватором (упаковщиком) называется программа, позволяющая за счет применения специальных методов сжатия информации создавать копии файлов меньшего размера, а также объединять копии нескольких файлов в один архивный файл, из которого можно при необходимости извлечь файлы в их первоначальном виде.
Сжатию могут быть подвергнуты: файлы, папки, диски. Сжатие файлов и папок необходимо либо для их транспортировки, либо для резервного копирования, либо для обмена информацией по сети Интернет. Уплотнение дисков применяют для повышения эффективности использования их рабочего пространства (обычно для дисков недостаточной емкости).
Существует много программ-архиваторов, имеющих различные показатели по степени и времени сжатия, эти показатели могут быть разными для различных файлов (текстовых, графических, исполняемых и т.д.), то есть один архиватор хорошо сжимает текстовый файл, а другой — исполняемый.
В основе работы программ-архиваторов лежит процедура поиска и перекодирования одинаковых фрагментов содержимого файлов.
Программы архиваторы. #видеоуроки
Архивный файл включает оглавление, содержащее следующую информацию о файлах, хранящихся в архиве: имя файла; сведения о папке, в которой он находился; дату и время создания файла; размер файла; код циклического контроля для каждого файла, используемый для проверки целостности архива.
Весь спектр существующих архиваторов можно разделить на три группы: файловые, программные и дисковые.
Файловые архиваторы позволяют упаковывать один или несколько файлов (например, все содержимое данного подкаталога вместе с вложенными в него подкаталогами) в единый архивный файл. Размер последнего, как правило, меньше, чем суммарный размер исходных файлов, но воспользоваться запакованными программами или данными, пока они находятся в архиве, нельзя, пока они не будут распакованы. Для распаковки архивного файла обычно используется тот же самый архиватор. Примеры: WinRar, WinZip, 7Z.
Программные архиваторы позволяют упаковать за один прием один единственный файл — исполняемую программу (с расширением *.exe), но зато так, что заархивированная программа будет сразу после ее запуска на исполнение самораспаковываться в оперативной памяти и тут же начинать работу. Примеры: PkLite, AsPack.
Дисковые архиваторы позволяют программным способом увеличить доступное пространство на жестком диске. Дисковый архиватор представляет собой программу, которая незаметно для пользователя сжимает любую записываемую на диск информацию и распаковывает ее обратно при чтении. Однако операции чтения/записи файлов несколько замедляются, поскольку процессору требуется время для упаковки и распаковки. Примеры: DriveSpace, DiskSpace.
Основными характеристиками программ-архиваторов являются: скорость работы, набор функций архиватора, степень сжатия (отношение размера исходного файла к размеру упакованного файла).
Возможности программ-архиваторов: создание архивных файлов; добавление файлов в архив; извлечение и удаление файлов из архива; просмотр содержимого архива; поиск в архивированных файлах; создание многотомных архивов; создание самораспаковывающихся архивов; обеспечение защиты информации в архиве; тестирование архива; восстановление файлов из поврежденных архивов; поддержка различных типов архивов, созданных другими архиваторами.
Dockerfile. Формат и создание образа контейнера
Большинство программ-архиваторов позволяют создавать многотомные, непрерывные и самораспаковывающиеся (SFX) архивы. Многотомный архив — это последовательность архивных файлов, размер которых не превышает заданного размера тома. Обычно создается при необходимости переноса архива на гибких дисках, если размер архива превышает емкость дискеты.
Многотомный архив имеет общее имя, но в расширении каждого тома указывается его номер. Самораспаковывающийся архив — это определенным образом обработанный архивный файл, являющийся выполняемым файлом. Выполнение такого файла приводит к распаковке содержащихся в нем файлов.
SFX-архивы удобны в тех случаях, когда нужно передать кому-то архив, но нет уверенности, что у адресата есть соответствующий архиватор для его распаковки. Непрерывный архив — это архив, упакованный специальным способом, при котором все сжимаемые файлы рассматриваются как один последовательный файл. Непрерывная архивация значительно увеличивает степень сжатия, особенно при добавлении в архив существенного количества небольших файлов с похожим содержимым. У непрерывной архивации есть недостатки: операции с непрерывными архивами происходит медленнее, чем операции с обычными архивами; если в непрерывном архиве какой-либо файл окажется повреждённым, то не удастся извлечь и все файлы, следующие после него. Поэтому при сохранении непрерывного архива на не слишком надёжном носителе (например, на дискете) рекомендуется добавлять информацию для восстановления.
Помимо полной поддержки архивов RAR и ZIP, в архиваторе WinRar реализована поддержка основных операций с архивами форматов 7Z, ACE, ARJ, BZ2, CAB, GZ, ISO, JAR, LZH, TAR, UUE, Z, созданными с помощью других программ. WinRar способен распаковывать такие архивы, просматривать их содержимое, показывать комментарии и информацию об архиве. Для работы с этими архивами никаких дополнительных программ не требуется.
Пользовательский интерфейс WinRar содержит заголовок, главное меню, панель инструментов, рабочую область, в которой показаны все файлы текущей папки, строку состояния (рис. 6.1). При работе с WinRar архивы воспринимаются как папки, содержимое которых можно просмотреть обычными способами.
Для запуска архиватора нужно выбрать команду “Пуск”->“Программы”->“WinRar” и выбрать пункт “WinRar”.
Выделение файлов и папок.
Если нужно выделить только один файл или папку, то следует переместить на него курсор или щелкнуть левой кнопкой мыши. Выделение файлов и папок происходит так же, как и в операционной системе Windows и файловом менеджере Total Commander.
Создание архивных файлов. Добавление файлов в архив.
- 1. Перейти в папку, в которой находятся файлы, предназначенные для архивации.
- 2. Выделить файлы и папки, которые нужно заархивировать.
- 3. Нажать кнопку “Добавить”. В появившемся диалоговом окне нужно ввести имя архива (формат архива, метод сжатия, размер тома и т.д.) и нажать кнопку “OK”.
Добавлять файлы в существующий архив можно методом перетаскивания. Для этого нужно выделить архив в окне WinRar и нажать клавишу “ENTER” (или дважды щёлкните мышью) на его имени. Архиватор покажет содержимое архива. Теперь можно добавлять файлы в архив, простым перетаскиванием их из другой программы в окно WinRar.
Ещё один способ добавить файлы в существующий архив — перетащить значки файлов на значок существующего архива в окне “Мой компьютер” или Total Commander.
Извлечение файлов из архива.
Чтобы извлечь файлы из архива, сначала нужно открыть архив в WinRar. Это можно сделать несколькими способами:
- 1. Дважды щёлкнуть левой кнопкой мыши или нажать клавишу “ENTER” на файле архива в Windows (в “Проводнике” или на “Рабочем столе”);
- 2. Дважды щёлкнуть мышью или нажать клавишу “ENTER” на файле архива в окне WinRar;
- 3. Перетащить архив на значок или окно WinRar. Перед тем как это сделать, необходимо убедиться, что в окне WinRar не открыт другой архив, иначе перетаскиваемый архив будет добавлен в уже открытый архив;
Далее необходимо выделить файлы и папки, которые нужно извлечь. Выделив один или несколько файлов, следует нажать кнопку “Извлечь. ” на панели инструментов, ввести в появившемся диалоговом окне нужный путь, после чего нажать кнопку “OK”.
При выполнении команды “Просмотреть файл”, WinRar показывает содержимое файла под курсором в окне встроенной программы просмотра вне зависимости от содержимого файла. При нажатии клавиши “ENTER” на имени архива, WinRar откроет и покажет содержимое этого архива.
Источник: vuzlit.com
Архиваторы
Архиваторы — это программы, позволяющие создавать, за счет специальных методов сжатия, копии файлов меньшего размера и объединять копии нескольких файлов в один архивный файл, а также распаковывать архивы (извлекать файлы из архива).
Существуют различные алгоритмы архивации данных без потери информации, т.е. при разархивации данные будут восстановлены в исходном виде.
Самый простой алгоритм сжатия данных основан на замене повторяющихся битов (в тексте может иметься последовательность одинаковых символов, в графическом файле – закрашенная одним цветом область и т.д.). Например, в тексте подряд идут 10 пробелов, которые кодируются 10-тью байтами. При архивации они заменяются 3-мя байтами (первый байт – кодирует заменяемый символ; второй байт – специальный байт «флажка» архивации, который указывает на необходимость развернуть первый байт в последовательность байтов; третий байт указывает количество повторяющихся байтов).
Алгоритм кодирования одинаковых последовательностей символов ищет в текстовых файлах одинаковые слова, а в графических — одинаковые «узоры». Каждый такой фрагмент файла представляется определенным кодом (последовательностью бит) и в процессе архивации при повторных появлениях заменяется ссылкой на первичный код.
Наиболее популярные форматы архивов
ZIP — еще со времен ОС DOS один из самых популярных и распространенных архивных форматов, основанный на алгоритмах сжатия предложенных в 80-х годах прошлого столетия израильскими математиками Лемпелем и Зивом. Он отличается приемлемой степенью сжатия информации и достаточно высоким быстродействием. Сегодня он является стандартом де-факто в Интернете, и его поддерживают практически все программы-архиваторы.
RAR — разработан российским программистом Евгением Рошалем и позволяет получить размер сжатого файла гораздо меньший, чем ZIP, ценой этому является более продолжительный процесс обработки архива. В целом формат RAR значительно лучше других оптимизирован для решения сложных задач с использованием большого количества файлов и гигабайтных дисковых пространств.
CAB — применяется в продуктах Microsoft как стандартный для упаковки файлов, причем его алгоритм, нигде не опубликованный, представляет собой достаточно совершенный продукт, имеющий высокий коэффициент сжатия.
GZIP, TAR — получили наибольшее распространение в системах на базе Unix и ее самой популярной разновидности Linux.
ACE — достаточно новый формат с высокой степенью сжатия, завоевывающий все большую популярность.
Многие программы, являющиеся достаточно популярными в мире архиваторов базируются на том или ином формате и носят аналогичные названия. Например, для ОС Windows наиболее популярными являются архиваторы WinRAR, WinZIP, WinACE. Кроме этого все они имеют инструменты для работы с другими форматами архивов. Несмотря на это, могут возникнуть проблемы с совместимостью форматов архивов в различных программах. Во многих случаях удачным решением проблемы совместимости архивов различных типов является создание архивов в виде самораспаковывающихся программ (EXE-файлов), в состав которых входят все необходимые механизмы для извлечения информации из архива, таким образом, отпадает необходимость иметь на компьютере соответствующую программу-распаковщик архива.
Источник: studopedia.ru
Сжатие и упаковка объектов файловой системы
Объектами сжатия информации в файловой системе ОС Windows могут быть:
- файл;
- группа файлов;
- папка;
- носитель.
- версия с графическим интерфейсом пользователя (GUI) – WinRAR.exe;
- консольная версия – Rar.exe, запускаемая из командной строки и работающая в текстовом режиме.
- полная поддержка архивов RAR и ZIP;
- использование оригинального высокоэффективного алгоритма сжатия данных;
- наличие графической оболочки с поддержкой технологии перетаскивания (drag
- возможность использования интерфейса командной строки;
- управление архивами других форматов (CAB, ARJ, LZH, TAR, GZ, ACE, UUE, BZ2, JAR, ISO);
- поддержка метода непрерывного (solid) архивирования, при котором может быть достигнута на 10 – 50% более высокая степень сжатия, чем дают обычные методы, особенно если упаковывается значительное количество небольших файлов однотипного содержания;
- поддержка многотомных архивов;
- создание самораспаковывающихся (SFX) обычных и многотомных архивов с помощью стандартного или дополнительных модулей SFX;
- возможность восстановления физически поврежденных архивов;
- возможность создания и использования томов для восстановления, позволяющих воссоздавать недостающие части многотомных архивов.
- поддержка кодировки Unicode в именах файлов;
- наличие других дополнительных функций, например, шифрования данных и имён файлов в архиве, добавления архивных комментариев, ведения протокола ошибок и пр.
Источник: studfile.net