При передаче данных через компьютерную сеть, а также при сохранении резервных копий файлов существенным фактором является их объем. Поэтому часто применяют сжатия файлов. Сжимать можно не только один файл, но и папку, содержащую несколько файлов или папок. Результатом сжатия является упакованный файл, или архив. Создавать такие файлы и работать с ними дают возможность специальные программы, которые называют архиваторами и программами резервного копирования.
Часто употребляемыми являются программы-архиваторы 7-Zip, WinRar, WinZip. Архивы, созданные с помощью этих программ, имеют расширение соответственно 7z, rar, zip.
Какие функции выполняют программы-архиваторы?
К базовым функциям, которые выполняют большинство современных архиваторов, относят:
- создание новых архивов;
- распаковки файлов из архивов (разархивирование);
- добавления файлов в архив;
- создание самораспаковывающихся архивов;
- создание распределенных архивов на носителях малой емкости;
- тестирование целостности структуры архивов;
- полное или частичное восстановление поврежденных архивов;
- защита архивов от просмотра и несанкционированной модификации.
Архивация предполагает упаковку и сжатие данных. Упаковка и сжатие (компрессия) — не одно и то же. Упаковка — это слияние нескольких файлов или папок в единый файл, который называется архивом. Сжатие же — сокращение объема выходного файла или группы файлов.
В разных архиваторах применяют различные способы сжатия, поэтому размер файла архива по сравнению с исходным файлом может различаться в зависимости от программы-архиватора, с помощью которой он был создан.
Быстро создать файл архива со значениями его свойств, установленными по умолчанию, или распаковать архив можно с помощью команд контекстного меню проводника. Если на компьютере установлена программа-архиватор, то команды для выполнения наиболее часто используемых операций с архивами выносятся в контекстное меню проводника Windows.
Для добавления файлов в только что созданный или открытой архив следует выбрать в программе-архиваторе команду Добавить, а затем найти и выделить нужные файлы и еще раз воспользоваться указанием Добавить, то есть подтвердить выполнения ранее выбранной команды.
Для извлечения из архива одного или нескольких файлов сначала следует найти архив. Затем с помощью программы-архиватора выделить те файлы, которые следует распаковать, и выбрать папку для распаковки, указав соответствующее место на диске для размещения файлов из архива. При создании архива и занесении в него файлов и при его распаковке остаются неизменными файлы-источники: при архивировании — файлы, которые сжимаются; при распаковке архива — сжатые файлы и сам архив. Однако, при необходимости, можно выбрать опцию удаления исходных файлов после упаковки, или удаления самого файла архива после его распаковки.
ОС Windows 10 имеет встроенные средства для работы с zip-архивами, которые еще называют zip-папками. Отличить zip-папку от обычных папок можно по значку — он содержит «застежку-молнию»
Если дважды щелкнуть на таком значке, то можно увидеть список файлов, находящихся в архиве, а также в режиме Таблицы можно увидеть объем исходных файлов и «упакованный» объем. При необходимости просмотра файлов, содержащихся в zip-архиве, можно дважды щелкнуть на значке соответствующего файла. Однако внесении изменений в такие документы возможно лишь тогда, когда файл разархивирован, или как говорят, файл извлечен из архива. Чтобы разархивировать все файла из zip-архива, надо его выделить и выбрать команду «Извлечь все файлы».
В тех случаях, когда архивация выполняется для передачи пакета документов другому пользователю, необходимо предусмотреть наличие у него программного средства, необходимого для распаковки исходных данных из архива. В том случае, когда пользователь не имеет необходимой программы-архиватора, на основе обычного архива можно создать архив, который самораспаковывается, путем присоединения небольшого программного модуля. Файл архива получает расширение .exe, что свидетельствует о том, что он является исполняемым файлом. Пользователь сможет запустить этот файл как обычную программу, после чего распаковка архива выполнится на его компьютере автоматически.
Кроме того, каждая из программ-архиваторов имеет много дополнительных функций.
В чем заключаются основные методы сжатия данных?
Характерной особенностью большинства форматов данных, с которыми традиционно работает пользователь, есть определенная избыточность. Степень избыточности зависит от типа данных.
Примером избыточности является повторение в тексте фрагментов, например некоторых слов или буквосочетаний в текстовых документах. Подобный избыток обычно устраняется заменой повторяющихся фрагментов коротким значением — кодом. Например, пусть есть файл, который содержит много однотипных слов: компьютер, компьютера, компьютерная, компьютеризация и тому подобное. Если слово из 9 букв «компьютер» заменить простой комбинацией символов «ЧЦ», то рассматриваемый набор слов превратится на систему «чц», «чца», «чцная», «чцизация» и другие.
Другой вид избыточности связан с тем, что некоторые значения в данных, которые подвергаются сжатию сжимаются, встречаются чаще других. При этом можно заменять данные, которые часто встречаются, короткими кодами, а те, что редко — длинными.
У видеофайлов избыточность, как правило, в несколько раз меньше, чем в графических, а в графических — в несколько раз меньше, чем в текстовых. Кроме того, степень избыточности данных зависит от принятой системы кодирования.
Существует большое количество алгоритмов сжатия данных, но все они работают по одному принципу — уменьшение избыточности данных в файле с помощью различных математических методов. В результате, в зависимости от сложности алгоритма и типа исходного файла, его размер может существенно уменьшиться: типичным значением для документов является коэффициент сжатия 40-50% и более. Сверхнизкие показатели сжатия у видео и аудиофайлов. И это вполне логично, ведь данные, хранящиеся в них, уже подвергались компрессии и практически не имеют избыточности.
Различают следующие виды сжатия:
- сжатие без потерь, при котором возможно восстановление исходных данных без искажений;
- сжатия с потерями — восстановление возможно с незначительными изменениями.
Сжатие без потерь используется, в частности, при обработке и хранении компьютерных программ и данных, когда такие потери являются недопустимыми. Сжатия с потерями обычно применяется для уменьшения объема звуковых, фото и видеоданных.
В основе работы программ-архиваторов лежит процедура поиска и перекодирования одинаковых фрагментов содержимого файла.
Каждая из программ-архиваторов работает по разным алгоритмам сжатия данных различных типов. В реальных программах-архиваторах процедура поиска и перекодирования данных происходит значительно сложнее.