Загальна характеристика архиваторов

Отже, як було зазначено у вступній частині роботи, програми-пакувальники (архіватори) дозволяють за рахунок спеціальних методів стиснення інформації створювати копії файлів меншого розміру і об'єднувати копії декількох файлів в один архівний файл. Це дає можливість розмістити на фіксованому носії більше інформації, тобто підвищити щільність зберігання інформації на одиницю об'єму носія.







Різними розробниками були створені спеціальні програми для архівації файлів. Як правило, програми для архівації файлів дозволяють поміщати копії файлів на диску в стислому вигляді в архівний файл, витягувати файли з архіву, переглядати зміст архіву і т.д. Різні програми відрізняються форматом архівних файлів, швидкістю роботи, ступенем стиснення файлів при приміщенні в архів, зручністю використання.

В даний час застосовується кілька десятків програм - архіваторів, які відрізняються переліком функцій і параметрами роботи, проте найкращі з них мають приблизно однакові характеристики. З числа найбільш популярних програм можна виділити ARJ, PKPAK, LHA, ICE, HYPER, ZIP, РАК, ZOO, EXPAND - розроблені за кордоном, а також AIN і RAR - розроблені в Росії. Зазвичай упаковка і розпакування файлів виконуються однією і тією ж програмою, але в деяких випадках це здійснюється різними програмами, наприклад, програма РКZIР виробляє упаковку файлів, a PKUNZIP - розпакування файлів.

Програми-архіватори дозволяють створювати і такі архіви, для вилучення з яких містяться в них файлів не потрібні будь - які програми, так як самі архівні файли можуть містити програму розпакування. Такі архівні файли називаються саморозпаковується.

Саморозпаковується архівний файл - це завантажувальний, виконуваний модуль, який здатний до самостійного розархівації знаходяться в ньому файлів без використання програми - архіватора.

Саморозпаковується отримав назву SFX - архів (SelF - eXtracting). Архіви такого типу в MS DOS зазвичай створюються у формі * .ЕХЕ - файлу.

Багато програм - архіватори виробляють розпакування файлів, вивантажуючи їх на диск, але є і такі, які призначені для створення упакованого виконуваного модуля (програми). В результаті такої упаковки створюється програмний файл з тими ж ім'ям і розширенням, який при завантаженні в оперативну пам'ять саморозпаковується і відразу запускається. Разом з тим можливо і зворотне перетворення програмного файлу в розпакований формат. До числа таких архіваторів належать програми PKLITE, LZEXE, UNP.

Програми - архіватори RAR і AIN, крім звичайного режиму стиснення, мають режим solid, в якому створюються архіви з підвищеним ступенем стиснення і особливою структурою організації. У таких архівах всі файли стискаються як один потік даних, тобто областю пошуку повторюваних послідовностей символів є вся сукупність файлів, завантажених в архів, і тому розпакування кожного файлу, якщо він не перший, пов'язана з обробкою інших. Архіви такого типу краще використовувати для архівування великої кількості однотипних файлів.







Управління програмою - архіватором здійснюється одним із двох способів:

ü за допомогою командного рядка MS DOS, в якій формується команда запуску, що містить ім'я програми - архіватора, команду управління і ключі її налаштування, а також імена архівного і вихідного файлів; подібне управління характерно для архіваторів ARJ, AIN, ZIP, РАК, LHA і ін .;

ü за допомогою вбудованої оболонки і діалогових панелей, що з'являються після запуску програми і дозволяють вести управління з використанням меню і функціональних клавіш, що створює для користувача більш комфортні умови роботи. Таке управління має програма - архіватор RAR.

Розглянемо найбільш відомі реалізації програм-архіваторів.

Програма створює багатотомні архіви лише у форматі RAR. Формат RAR перевершує ZIP, ARJ і LZH за паливною ефективністю стискування, однак у найбільшою мірою перевага цієї технології проявляється у разі «безперервних» архівів, які не допускають внесення змін і обробляються досить повільно. Вікно архіватора нагадує системну утиліту «Мій комп'ютер», архіви виглядають і поводяться подібно до звичайних папок (рис.2).

Рис.3. інтерфейс WinZip

Загальна характеристика архиваторов
3. 7-Zip - вільний файловий архіватор з високим ступенем стиснення даних (рис.4). Підтримує декілька алгоритмів стиснення і безліч форматів даних, включаючи власний формат 7z c високоефективним алгоритмом стиснення LZMA.

Рис.4. інтерфейс 7Zip

7-Zip використовує багатопоточність і дозволяє задіяти для стиснення, в залежності від алгоритму або формату, різну кількість потоків. При створенні архівів, в яких файли можуть стискатися незалежно один від одного (наприклад, ZIP), програма може використовувати до 8 потоків одночасно. Для алгоритму стиснення LZMA архіватор одночасно може використовувати до 2 потоків. Неможливість використання більшої їх кількості пояснюється послідовним характером безперервного стиснення. Алгоритм стиснення LZMA2 не має цього недоліку.

При стисненні в форматі 7z використовуються також спеціальні фільтри-нормалізатори. Так, для більш оптимального стиснення 32-бітного x86 коду використовуються нормалізують конвертори BCJ і BCJ2. Програма також має оптимізує дельта-конвертер для деяких типів мультімедіаданних, наприклад незжатих 24-бітних зображень.

Результати за ступенем стиснення сильно залежать від стискаються даних. Зазвичай 7-Zip стискує у формат 7z на 4-25% краще, ніж у формат zip.

Варто відзначити, що будь-яким архіватором (і не тільки з перерахованих), найбільш добре стискаються файли графічних образів, текстові файли і файли даних, для яких коефіцієнт стиснення може досягати 5 - 40%, менше стискуються файли виконуваних програм і завантажувальних модулів Кс = 60 - 90%. Майже не стискуються архівні файли. Це неважко пояснити, якщо знати, що більшість програм-архіваторів використовують для стиснення варіанти алгоритму LZ77 (Лемпеля-Зива)

Всі алгоритми стиснення даних діляться на:

1. алгоритми стиснення без втрат, при використанні яких дані на приймальні відновлюються без найменших змін;

Перевага віддається природно, першої групи алгоритмів.

1. Алгоритм Хаффмана. Алгоритм заснований на тому факті, що деякі символи зі стандартного 256-символьного набору в довільному тексті можуть зустрічатися частіше середнього періоду повтору, а інші, відповідно, - рідше. Отже, якщо для запису поширених символів використовувати короткі послідовності біт, довжиною менше 8, а для запису рідкісних символів - довгі, то сумарний обсяг файлу зменшиться.

Так фраза «КОЛОКОЛ_ОКОЛО_КОЛОКОЛЬНІ» закодується як «КОЛО (-4,3) _ (- 5,4) Про _ (- 14,7) ЬНІ».

Крім того, програми для архівації все-таки різняться реалізаціями алгоритмів стиснення, що відповідно впливає на ступінь стиснення.

В деякі програми-архіватори додатково включаються кошти, спрямовані на зменшення коефіцієнта стиснення Кс. Так в програмі WinRAR реалізований механізм безперервного (solid) архівування, при використанні якого може бути досягнута на 10 - 50% вищий ступінь стиснення, ніж дають звичайні методи, особливо якщо упаковується значна кількість невеликих файлів однотипного змісту.







Схожі статті