Контакти

Архіватори. Алгоритми стиснення даних без втрат Що таке ступінь стиснення файлів


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

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

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

Стискатися можуть як один, так і декілька файлів, які в стислому вигляді поміщаються в архівний файл або архів.

Архівний файл (Архів, або файл-архів) - це спеціальнимчином організований файл, який містить в собі один або НЕскільки файлів в стислому або компресії та службову інформацію про імена файлів, дату і час їх створення або модифікованогокации, розмірах і т. п.

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

Ступінь стиснення залежить від використовуваної програми-архіватора, методу стиснення і типу вихідного файлу. Найбільш добре стискаються текстові файли і файли даних, для яких ступінь стиснення може досягати 80-90%, менше стискуються файли виконуваних програм і завантажувальних модулів - 5-40%. Майже не стискуються архівні файли.

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

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

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


ОСНОВНІ ВИДИ ПРОГРАМ-архіватори.

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

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

Процес запису файлу в архівний файл називається архівуванням (Упаковкою, стисненням), а витяг файлу з архіву - розархівація (Розпакуванням). Упакований (стиснений) файл називається архівом.

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

Ступінь стиснення інформації залежить від вмісту файлу, а також від обраного методу архівації. Ступінь (якість) стиснення файлів характеризується коефіцієнтом стиснення K c, Який визначається як відношення обсягу стисненого файлу V c до обсягу вихідного файлу V o, Виражене у відсотках:

Чим менше величина K c,тим вище ступінь стиснення інформації.

Всі існуючі методи стиску інформації можна розділити на два класи: упаковка без втрат інформації (оборотний алгоритм) і упаковка з втратою інформації (незворотний алгоритм). У першому випадку вихідну інформацію можна точно відновити за наявною упакованої інформації. У другому випадку розпаковане повідомлення буде відрізнятися від вихідного повідомлення.

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

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

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

Ряд архиваторов дозволяють створювати багатотомні архіви, архіви, архіви, що містять каталоги.

найбільш популярні і широко використовуються наступні архіватори: ARJ, PKZIP / PKUNZIP, RAR, ACE, LHA, ICE, PAK, PKARC / PKXARC, ZOO, HYPER, AIN.

найбільш високоефективними є архіватори RAR, ACE, AIN, ARJ.

Вони забезпечують найбільший ступінь стиснення інформації та мають найбільш високу швидкість роботи. Архіватор RAR має зручний графічний інтерфейс і дозволяє читати текстові файли, що знаходяться як в rar-архіві, так і в arj і zip-архівах. Архіватор AIN має російськомовний інтерфейс. Архіватори WinRAR-95 і WinZIP працюють тільки в середовищі Windows. Вони необхідні при роботі з довгими і російськими іменами файлів в Windows. В даний час саме ці архіватори застосовуються найчастіше.


Розділ 3. Прикладне програмне забезпечення ІТ

Всі алгоритми стиснення оперують вхідним потоком інформації з метою отримання більш компактного вихідного потоку за допомогою деякого перетворення. Основними технічними характеристиками процесів стиснення і результатів їх роботи є:

· Ступінь стиснення - відношення обсягів вихідного і результуючого потоків;

· Швидкість стиснення - час, що витрачається на стиснення деякого обсягу інформації вхідного потоку, до отримання з нього еквівалентного вихідного потоку;

· Якість стиснення - величина, що показує, на скільки сильно упакований вихідний потік при застосуванні до нього повторного стиснення за тим же або іншим алгоритмом.

Алгоритми, які усувають надмірність записи даних, називаються алгоритмами стиснення даних, або алгоритмами архівації. В даний час існує величезна безліч програм для стиснення даних, заснованих на декількох основних способи.

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

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

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

Існує два основні методи архівації без втрат:

алгоритм Гоффмана (англ. Huffman), орієнтований на стиснення послідовностей байт, не пов'язаних між собою,

алгоритм Лемпеля-Зива (англ. Lempel, Ziv), орієнтований на стиснення будь-яких видів текстів, тобто використовує факт неодноразового повторення "слів" - послідовностей байт.

Практично всі популярні програми архівації без втрат (ARJ, RAR, ZIP тощо) використовують об'єднання цих двох методів - алгоритм LZH.

Алгоритм Хаффмана.

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

Алгоритм Лемпеля-Зива. Класичний алгоритм Лемпеля-Зива -LZ77, названий так по році свого опублікування, гранично простий. Він формулюється так: якщо в минулому раніше вихідному потоці вже зустрічалася подібна сукупність електронних даних, причому запис про її довжині і зміщення від поточної позиції коротше ніж сама ця послідовність, то у вихідний файл записується посилання (зміщення, довжина), а не сама послідовність.

4.Показатели ступеня стиснення файлів

Стиснення інформації в архівних файлах виробляється за рахунок усунення надмірності різними способами, наприклад за рахунок спрощення кодів, виключення з них постійних бітів або подання повторюваних символів або повторюваної послідовності символів у вигляді коефіцієнта повторення і відповідних символів. Алгоритми подібного стиснення інформації реалізовані в спеціальних програмах-архіваторах (найбільш відомі з яких arj / arjfolder, pkzip / pkunzip / winzip, rar / winrar) застосовуються певні стискає можуть як один, так і декілька файлів, які в стислому вигляді поміщаються в так званий архівний файл або архів.

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

Ступінь стиснення файлів характеризується коефіцієнтом Кс, який визначається як відношення обсягу стисненого файлу Vc до обсягу вихідного файлу Vо, виражене у відсотках (в деяких джерелах використовується зворотне співвідношення):

Кс \u003d (Vc / Vo) * 100%

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

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

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

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

Характеристики архиваторов - назад залежні величини. Тобто, чим більше швидкість стиснення, тим менше ступінь стиснення, і навпаки.

На комп'ютерному ринку пропонується безліч архіваторів - у кожного свій набір підтримуваних форматів, свої плюси і мінуси, своє коло шанувальників, котрі щиро вірять в те, що вони використовують архіватор найкращий. Не будемо нікого і ні в чому переконувати - просто спробуємо неупереджено оцінити найпопулярніші архіватори в плані функціональності і ефективності. До таких віднесемо WinZip, WinRAR, WinAce, 7-Zip - вони лідирують за кількістю скачувань на софтових серверах. Розглядати інші архіватори навряд чи доцільно, оскільки відсоток застосовують їх користувачів (судячи по числу завантажень) невеликий.

ВведеніеАрхіваторамі ми користуємося постійно. На нашому сайті є докладний (нехай і давно написане) опис найбільш популярних програм-архіваторів ( Архіватори: Погляд з боку), Яке ми тут повторювати не будемо, а займемося тільки алгоритмами стиснення, які застосовуються в цих програмах. У чому тут проблема? Сучасні архіватори надають нам можливість на вибір використовувати кілька алгоритмів стиснення. Ось, наприклад, характеристики деяких програм ...

Формати, які підтримуються архиваторами

архіватор Упаковка і розпакування тільки розпакування
WinZip ZIP TAR, GZIP, BH, ARJ, LZH, ARC
WinRar RAR, ZIP CAB, ARJ, LZH, TAR, GZ, ACE, UUE, BZ2, JAR, JSO
WinAce ACE, ZIP, LHA, MSCAB RAR, ARC, ATJ, GZIP, TAR ZOO
7-Zip 7Z, ZIP, GZIP, TAR, BZIP2 RAR, CAB, ARJ, CPIO, RPM, DEB, SPLIT
Power Archiver TAR, BH, CAB, LHA, ZIP RAR, ACE, ARJ, GZIP, BZIP2, ARC, ZOO

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

Зміст дослідження планується в наступному вигляді:

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

2. Проведення попередніх тестів на комплексному наборі і уточнення (за результатами) плану подальших локальних випробувань.

3. Обробка і аналіз результатів з обґрунтуванням рекомендацій щодо практичного застосування різних алгоритмів (форматів) архівації.

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

Визначення загальних характеристик основних архівних форматів

Для випробувань використовувався матеріал, що імітує деяку "призначену для користувача кошик", складену з файлів формату DOC, HTM, JPG, MP3, PDF, TXT. Всього кошик містить 359 папок і 3337 файлів, і має сумарний розмір 208893 Кбайт (близько 204 Мбайт). Склад цього набору наведено в таблиці нижче:

Склад набору файлів для випробувань

Тип кількість папок кількість файлів Розмір, Кбайт На диску, Кбайт
TXT 0 2 34781 34783
HTM 329 2869 30913 36962
DOC 3 24 31443 31474
PDF 0 1 33691 33694
JPG 26 430 40493 41382
MP3 1 11 37571 37589

Разом 359 3337 208893 215884

Кожне випробування полягало в проведенні циклу архівації з фіксацією часу роботи архіватора від моменту натискання кнопки Add до моменту відкриття вікна з вмістом отриманого архівного файлу.

Тестувати програми:

WinZip 8.1 SR-1
WinRar 3.30
WinAce 2.5
7Zip 3.13
Power Archiver 8.70 07b


Інформація про конфігурацію системи

Процесор Intel Celeron 1700MHz
256 Mb (DDR SDRAM)
HDD ST360015A (60 Gb, 7200PRM)
Windows 2000 Pro, SP3

Результати випробувань наведені в наступних таблицях:

Результати тестування для формату ZIP

Архіватор / Режим Розмір, Кбайт Час, мин.-сек. стиснення Швидкість, Кбайт / с

WinZip
без стиснення 208893 - - -
норма 146408 2-00 70.0% 1740
максимум 145884 2-45 69.8% 1266
швидко 147690 1-58 70.7% 1770
Дуже швидко 149450 1-50 71.5% 1899

WinRar
зазвичай 146 078 2-22 69.9% 1471
максимум 145881 3-07 69.8% 1117

WinAce
норма 146 418 2-28 70.1% 1411
максимум 145844 2-40 69.8% 1305

7-Zip
Норма / Deflate 145 480 3-22 69.6% 1034
Ультра / Deflate 145 341 5-55 69.6% 588
Ультра / Deflate64 144924 6-10 69.4% 565

Power Archiver
норма 146074 3-40 69.9% 950
максимум 145948 3-42 69.9% 941

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

режим Розмір, Кбайт Час, мин.-сек. стиснення Швидкість, Кбайт / с
без стиснення 208893 - - -
Store 209129 0-58 100.1% 3601
Fastest 144017 6-00 68.9% 580
Fast 143281 6-22 68.6% 547
Normal 142830 6-40 68.4% 522
Good 139826 6-58 66.9% 499
Best 140023 7-25 67.0% 469
Best (64kb) 140685 5-40 67.3% 614

У налаштуванні режиму можлива зміна розміру словника в межах 64 - 4096 кілобайт. За замовчуванням встановлюється максимальний розмір (4096 Кб), з яким і отримані результати в даній таблиці. Тільки в рядку Best (64kb) був встановлений мінімальний розмір - 64 кілобайт. Очевидно, що отримана зміна стиснення і швидкодії може служити аналогом для всіх інших рядків цієї таблиці.
Рядки Good і Best перевірялися, і їх значення повністю підтвердилися, тому нелогічний перехід між ними не можна вважати наслідком помилок при тестуванні.

Результати тестування формату ACE

режим Розмір, Кбайт Час, мин.-сек. стиснення Швидкість, Кбайт / с
без стиснення 208893 - - -
Normal 132978 8-30 63.7% 410
Maximum 132918 8-42 63.6% 400
Good 132925 9-50 63.6% 354
Fast 133216 8-53 63.8% 397
Super Fast 133273 8-46 63.8% 397
Store 209136 1-48 100.1% 1934

Зміни режиму роботи архіватора WinAce в нашому випадку мало впливають на показники стиснення - розкид знаходиться в межах десятих часток відсотка.

Результати тестування формату 7z

режим Розмір, Кбайт Час, мин.-сек. стиснення Швидкість, Кбайт / с
без стиснення 208893 - - -
нормальний 130964 9-24 64.2% 362
Максимальний 130000 13-51 63.7% 246
Швидкий 141922 4-16 69.6% 797
Ультра (1 Мб) 131392 8-47 64.4% 387
Ультра (6 Мб) 130101 11-40 63.8% 291
Ультра (12 мб) 129871 12-47 63.7% 266
Ультра (24 мб) - - - -
Ультра (Deflate) 141171 3-15 69.2% 1046
Ультра (PPMd) 140171 8-45 68.7% 389
Ультра (Bzip2) 135342 7-32 66.4% 451

Примітка:

Для формату 7z архіватор дозволяє встановлювати:

- Рівень (Швидкий, Нормальний, Максимальний, Ультра),
- Метод (LZMA, PPMd, Bzip2, Deflate),
- Розмір словника (32кб - 192 мб),
- Розмір слова (8 - 255).

Як бачимо, можливо дуже велике число комбінацій настройки режиму роботи архіватора, що може збити користувача з пантелику. Можна керуватися наступними посилками:

- Чим більше розмір словника, тим більше стиснення і час упаковки. Стиснення зростає повільно, а час упаковки - виростає дуже сильно.

- Те ж саме - щодо розміру слова.

- Оптимальні настройки встановлюються самі (настройки за замовчуванням), і без потреби їх можна не збивати.


Результати тестування формату CAB

режим Розмір, Кбайт Час, мин.-сек. стиснення Швидкість, Кбайт / с
без стиснення 208893 - - -

PowerArchiver
Medium 140444 9-55 67.2% 351
Maximum 137152 15-55 65.6% 219

WinAce
норма 144374 3-24 69.1% 1024
максимум 138538 12-54 66.3% 270

Формат CAB (cabinet file) заснований на алгоритмах MS-Zip і LZX, підтримується і застосовується фірмою Microsoft. Розпаковують формату є в Windows 98 і вище. Алгоритм має відкритий код і може вільно застосовуватися всіма програмістами.

Результати тестування форматів BH і LHA

режим Розмір, Кбайт Час, мин.-сек. стиснення Швидкість, Кбайт / с
без стиснення 208893 - - -

PowerArchiver, формат LHA
Norma 147518 4-40 70.6% 746
Maximum 147518 4-47 70.6% 728

PowerArchiver, формат BH
Norma 145912 2-16 69.8% 1536
Maximum 145718 2-34 69.8% 1356

Показники архівних форматів LHA і BH мають рівень показників архівного формату ZIP, і якихось переваг не проглядається.

Загалом, як видно, найкращі показники стиснення забезпечуються форматами ACE і 7Z. Кращі показники швидкодії - показали формати ZIP і BH. Подальші випробування планується провести за такою ж принциповою схемою, але з "кошиками" однорідного складу, з форматами файлів: TXT, HTML, DOC, JPG, MP3, PDF.

Визначення стисливості файлів різних форматів

Для забезпечення цієї серії випробувань були складені зовсім однорідні за форматами файлів набори, причому, що повторюються файли в наборі виключалися. Файли EXE і DLL бралися з системної папки Windows без всякого відбору. Справа в тому, що файли формату EXE бувають вже стислими і подальше їх стиснення - не має сенсу. Характеристики наборів наводяться в наступній таблиці:

Формати файлів в наборах для випробувань

формат Кількість папок Кількість файлів Сумарний розмір, Кбайт
TXT 0 27 35096
HTM 7 1371 25076
DOC 1 33 37211
PDF 0 1 33691
JPG 26 430 40493
MP3 2 11 37571
EXE 0 316 32446
DLL 0 184 40323
XLS 6 15 17228
CHM 0 69 33940
MPEG 0 24 46606
WAV 0 1 30804
BMP 0 15 31713
AVI 0 89 9261

При випробуваннях використовувався тільки нормальний (звичайний) режим роботи архіватора. При цьому, кожен формат архіву створювався власним архіватором (WinZip, WinRar, WinAce, 7-Zip), для упаковки в формат CAB використовувався Power Archiver, який свого (фірмового) формату не має.

Стисливість файлів в залежності від формату архіву

формат ZIP RAR ACE 7Z CAB
TXT 43.7% 37.8% 37.4% 34.3% 36.3%
HTM 29.2% 28.3% 9.09% 7.75% 15.0%
DOC 8.76% 6.39% 5.47% 5.21% 6.49%
PDF 97.7% 97.4% 97.8% 97.5% 97.3%
JPG 98.5% 98.5% 85.0% 85.1% 97.9%
MP3 98.1% 97.9% 98.1% 97.9% 97.7%
EXE 46.9% 42.1% 37.8% 32.7% 39.3%
DLL 45.6% 39.6% 37.6% 34.3% 39.6%
XLS 11.8% 8.27% 7.44% 5.97% 8.49%
CHM 98.6% 98.8% 99.0% 99.6% 98.6%
MPEG 95.3% 94.7% 94.8% 94.5% 94.4%
AVI 86.1% 84.1% 84.5% 82.7% 83.4%
WAV 92.2% 62.8% 62.6% 87.0% 92.1%
BMP 63.5% 31.9% 30.6% 51.5% 56.2%

Середній показник 65.5% 59.2% 56.2% 58.3% 61.6%

Як коментар до таблиці можна відзначити наступне:

- Найкраще стиснення за основними форматами вихідних файлів забезпечується архівних форматом 7z.

- Кращий показник в середньому має архівний формат ACE за рахунок рекордного стиснення форматів WAV і BMP.

Якщо говорити про стисливості вихідних файлів, то можна відзначити наступне: показник стиснення залежить від вихідного формату файлів, іноді який передбачає внутрішнє стиснення даних. Якщо файл попередньо ущільнений за своїми алгоритмами, то стисливість його архіватором - невелика. Наприклад, файл формату CHM є ущільненим варіантом файлу формату HTML і, відповідно, стисливість їх - різна. Те ж ми бачимо відносно Wav і MP3, BMP і JPG і так далі.

Швидкість роботи архіватора, Кбайт / с

формат ZIP RAR ACE 7Z CAB
TXT 2064 408 386 217 226
HTM 2507 836 627 643 411
DOC 7400 2862 1550 1378 886
PDF 2246 293 370 387 370
JPG 2670 587 337 368 287
MP3 2348 458 368 335 332
EXE 2318 773 601 416 433
DLL 2016 858 672 474 434
XLS 4300 1436 1148 507 224
CHM 1886 556 365 357 323
MPEG 2453 583 416 370 338
AVI 1852 617 463 370 356
WAV 2370 1711 1184 354 288
BMP 2883 1269 933 401 373

Середній показник 2838 856 609 485 385

Ця таблиця демонструє очевидне правило - за краще стиснення майже завжди необхідно платити швидкістю упаковки.

Стисливість різних форматів файлів. доповнення

формат ZIP RAR ACE 7Z
VXD 55.1% 52.5% 43.3% 40.8%
INF 14.9% 13.3% 13.2% 12.3%
VBP 78.3% 72.6% 26.0% 18.5%
GIF 90.0% 94.3% 87.2% 86.1%
SCR 88.8% 88.0% 88.1% 87.9%
DAT 23.1% 20.1% 20.5% 18.0%
INI 35.6% 33.2% 32.5% 30.2%

Середній показник 55.1% 53.4% 44.4% 42.0%

Ця таблиця містить додаткові дані по стисливості файлових форматів. Тут тестування проводилося без фіксації часу на наборах невеликого обсягу (100-200 кб). Як видно, за всіма форматам найкраще стиснення дає архівний формат 7z.

Далі, як приклад приведу результати упаковки реального дистрибутива програми Norton Antivirus. Упаковка виконувалася в нормальному режимі, додатково отримані саморозпаковуються варіанти цих же архівів. Результат цього випробування наведено в таблиці нижче (остання колонка - приблизний час завантаження упакованого дистрибутива по мережі при звичайному модемному з'єднанні при швидкості 2.7 Кбайт в секунду):

формат архіву Розмір, Кбайт час стиснення Час завантаження, год.-хв.
без стиснення 47410 - - 4-53
ZIP 29045 0-21 61.3% 2-59
RAR 26619 1-15 56.1% 2-44
ACE 23838 1-30 50.3% 2-27
7Z 22871 1-50 48.2% 2-21
CAB 26804 2-22 56.5% 2-45
EXE (RAR) 26671 1-15 56.3% 2-45
EXE (ACE) 23903 1-30 50.4% 2-28
EXE (7Z) 22941 1-52 48.4% 2-22

Результати таблиці наочно демонструють, що:

При передачі файлів по мережі - упаковка практично обов'язкове.

Упаковка з хорошим стисненням може скоротити час передачі файлу, в нашому випадку - на півгодини.

Застосування перспективних форматів ACE і 7Z цілком виправдано вже зараз у вигляді архівів. Ця обставина бажано враховувати розповсюджувачам програмної продукції по мережі Інтернет.

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

висновок

Програми-архіватори залишаються незамінним засобом упаковки і стиснення цифрової інформації. Оброблена інформація суттєво економить місце на хранителів і час передачі по каналах зв'язку в мережі. Найбільш популярними і вживаними є зараз формати упаковки ZIP і RAR. Інші формати, наприклад, ARJ, ICE, PAC, ARC і деякі ще - поступово витіснили і призабули. Але технологія упаковки не стоїть на місці. Архіватори - затребувані, тому програмісти безупинно ведуть пошук більш ефективних методів стиснення. Про це свідчать і результати нашого експерименту. Реально існують, принаймні, два архівних формату (ACE і 7z), які зі стиснення істотно перевершують звичні ZIP і RAR. Застосування цих форматів дозволить помітно скоротити час передачі файлів по мережі Інтернет, що відповідає інтересам численних користувачів ...

Доповнення від 24 травня 2004 р

У цьому розділі ми розглянемо вплив опції Solid на показники роботи архіваторів. Нагадаємо, що упаковка з опцією Solid призводить до того, що в архів не можна додати файл і не можна з нього витягти окремий файл, архів упаковується і розпаковується тільки цілком. У загальному випадку це може викликати певні незручності при використанні таких архівів. Але іноді такі незручності можуть мати другорядне значення в порівнянні з перевагами.

Додаткове тестування зроблено в точності так, як це описано в основному розділі на тих же самих наборах матеріалу. З урахуванням додаткового тестування таблиця "Результати тестування формату RAR" основного тексту стала виглядати так ...

Результати тестування формату RAR

режим Розмір, Кбайт Час, мин.-сек. стиснення Швидкість, Кбайт / с
без стиснення 208893 - - -
Store 209129 0-58 100.1% 3601
Fastest 144017 6-00 68.9% 580
Fast 143281 6-22 68.6% 547
Normal 142830 6-40 68.4% 522
Normal (Solid) 131664 9-14 63.0% 377
Good 139826 6-58 66.9% 499
Good (Solid) 129314 8-24 61.9% 414
Best 140023 7-25 67.0% 469
Best (Solid) 129527 8-36 62.0% 405
Best (64kb) 140685 5-40 67.3% 614

Налаштування архиватора WinRar включає в себе:

1. Вибір способу стиснення (Normal, Store, Fastest, Fast, Good, Best).

2. Вибір модифікації:
- Add and replace files,
- Add and update files,
- Fresh existing files only,
- Syncronize axchive contents.

3. Вибір опції:
- Deleting files after archiving,
- Create SFX archive,
- Create solid archive,
- Put autohenlicity verification,
- Put recovery record,
- Test archived files,
- Lock archive.

Неважко помітити, що можливо більше сотні комбінацій налаштувань, що визначають режим роботи архіватора. Відповідно і діапазон результатів для цього формату і цього архіватора вийшов досить великим - ступінь стиснення: 61.9 - 68.9%, швидкість: 377 - 614 Кбайт / сек.

Опцію Solid має також архіватор WinAce. Але в цей архіватор опція (Make solid archive) включена постійно (за замовчуванням) і тому увійшла в результати тестування. Таким чином, несправедливість була допущена тільки для формату RAR і архиватора WinRar.

З урахуванням нових обставин таблиця лідерів за ступенем стиснення виглядає так:

1. RAR (Good, Solid) - 61.9%.

2. 7-Zip (Максимум) - 62.2%.

3. ACE (Good) - 63.6%.

Доповнена таблиця результатів упаковки реального дистрибутива програми Norton Antivirus ( "Приклад упаковки дистрибутива Norton Antivirus") стала виглядати так ...

Приклад упаковки дистрибутива Norton Antivirus

формат архіву Розмір, Кбайт час стиснення Час завантаження, год.-хв.
без стиснення 47410 - - 4-53
ZIP 29045 0-21 61.3% 2-59
RAR 26619 1-15 56.1% 2-44
RAR (Normal, Solid) 22745 1-21 48.0% 2-20
RAR (Good, Solid) 22680 1-28 47.8% 2-20
ACE 23838 1-30 50.3% 2-27
7Z 22871 1-50 48.2% 2-21
CAB 26804 2-22 56.5% 2-45
EXE (RAR) 26671 1-15 56.3% 2-45
EXE (RAR, Normal, Solid) 22797 1-29 48.1% 2-21
EXE (ACE) 23903 1-30 50.4% 2-28
EXE (7Z) 22941 1-52 48.4% 2-22

Результати цієї таблиці також підтверджують, що архіватор WinRar може забезпечити максимальне стиснення, і за цим показником є \u200b\u200bлідером. У порівнянні з форматом ZIP завантаження цього ж дистрибутива в форматі RAR може здійснена на 39 хвилин коротше ...

У таблиці з результатами тестування формату 7z наш читач Олександр Рихлов виявив помилку в розрахунку показника стиснення. Олександру велике спасибі, а виправлена \u200b\u200bтаблиця "Результати тестування формату 7z" стала виглядати так ...

130101 11-40 62.3% 291
Ультра (12 мб) 129871 12-47 62.2% 266
Ультра (24 мб) - - - -
Ультра (Deflate) 141171 3-15 67.6% 1046
Ультра (PPMd) 140171 8-45 67.1% 389
Ультра (Bzip2) 135342 7-32 64.8% 451

Примітка: в режимі Ультра (LZMA) при завданні розміру Словника в 24 мегабайт швидкість знизилася настільки, що проведення тесту стало неможливим.

висновок


Назрівали було сенсація про те, що архіватор WinRar не так хороший, як це вважають багато користувачів, не відбулася. Наше тестування підтвердило, що технічні характеристики цього архіватора дійсно на сьогоднішній день найвищі. Дуже близькі показники має архіватор 7-Zip, але по мірі відпрацювання і ползовательскім якостям останній поки трохи поступається лідеру. Для отримання максимального стиснення в архіваторі WinRar необхідно включати опцію Solid (за замовчуванням вона відключена), інші настройки (Normal, Good і т.д.) - мають менше значення.

3. Показник ступеня стиснення файлів

Стиснення інформації в архівних файлах виробляється за рахунок усунення надмірності різними способами, наприклад за рахунок спрощення кодів, виключення з них постійних бітів або подання повторюваних символів або повторюваної послідовності символів у вигляді коефіцієнта повторення і відповідних символів. Алгоритми подібного стиснення інформації реалізовані в спеціальних програмах-архіваторах (найбільш відомі з яких arj / arjfolder, pkzip / pkunzip / winzip, rar / winrar) застосовуються певні стискає можуть як один, так і декілька файлів, які в стислому вигляді поміщаються в так званий архівний файл або архів.

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

Ступінь стиснення файлів характеризується коефіцієнтом Кс, який визначається як відношення обсягу стисненого файлу Vc до обсягу вихідного файлу Vо, виражене у відсотках (в деяких джерелах використовується зворотне співвідношення):

Кс \u003d (Vc / Vo) * 100%

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

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

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

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

Характеристики архиваторов - назад залежні величини. Тобто, чим більше швидкість стиснення, тим менше ступінь стиснення, і навпаки.

На комп'ютерному ринку пропонується безліч архіваторів - у кожного свій набір підтримуваних форматів, свої плюси і мінуси, своє коло шанувальників, котрі щиро вірять в те, що вони використовують архіватор найкращий. Не будемо нікого і ні в чому переконувати - просто спробуємо неупереджено оцінити найпопулярніші архіватори в плані функціональності і ефективності. До таких віднесемо WinZip, WinRAR, WinAce, 7-Zip - вони лідирують за кількістю скачувань на софтових серверах. Розглядати інші архіватори навряд чи доцільно, оскільки відсоток застосовують їх користувачів (судячи по числу завантажень) невеликий.

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

Апроксимація функцій методом найменших квадратів

Далі аппроксимируем функцію квадратичною функцією. Для визначення коефіцієнтів, і скористаємося системою (3.2.1) Використовуючи підсумкові суми таблиці 3, розташовані в осередках B29, C29, D29, E29, F29, G29 і H29, запишемо систему (2.1.4) у вигляді (3.2 ...

види архиваторов

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

Як можна класифікувати інформаційні системи за ступенем автоматизації?

Класифікація інформаційних технологій

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

Як один з необхідних етапів у створенні ефективної системи безпеки території, підприємства, ОІД, виконаємо аналіз уразливості підприємства «FitMax» ...

Математичне обгрунтування ступеня уразливості об'єкта інформаційної діяльності на прикладі підприємства ТОВ "FitMax"

Для кожного з каналів проводяться розрахунки ймовірності ступеня захищеності інформації. Акустичний канал: Віброакустичний канал: Людський фактор: Виходячи з отриманих даних ...

Мікропроцесор: призначення, склад, основні характеристики

Способів роботи з файлами в Windows існує кілька. Перший - це «дискові папки» в папці «Мій комп'ютер». З їх допомогою можна дістатися до будь-якого потрібного файлу в будь-якій папці і на будь-якому диску. Однак цей спосіб далеко не ідеальний ...

Пошукова система

1. Ручні інформаційні системи характеризуються відсутністю сучасних технічних засобів переробки інформації та виконанням всіх операцій людиною. Наприклад, про діяльність менеджера у фірмі, де відсутні комп'ютери ...

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

Розрахунок параметрів асинхронного енергозберігаючого електродвигуна

Характеристики ступенів захисту електричних машин позначають двома латинськими буквами IP (International Protection) і двома цифрами ...

Система електронної комерції і статистики для продажу автомобільних запчастин

Важливо аналізувати кількість не тільки нових, але і повернулися відвідувачів вашого інтернет-магазині. Це дозволить оцінити наскільки ваш сайт цікавий для цільової аудиторії. Крім того, повертати відвідувачів завжди простіше ...



Сподобалася стаття? поділіться їй