Сафронов онлайн ([info]alsafr) wrote,

FreeArc

    FreeArc - это относительно новый архиватор, объединяющий в себе лучшие современные алгоритмы сжатия данных. На сайте самого проекта он описывается как "архиватор, сочетающий беспрецедентное соотношение скорости и степени сжатия с широким набором возможностей". FreeArc бесплатен и оупенсорсен. Не так давно он занял первое место в тесте на эффективность на сайте MaximumCompression (в этом тесте учитывается как степень сжатия, так и время работы компрессоров). Разработкой архиватора занимается Булат Зиганшин.
    Основные достоинства и возможности:
  1. Автоматическое переключение между различными методами сжатия. Переключение производится на основе анализа расширения файла, однако в ближайшем будущем автор анонсирует переключение на основе анализа содержимого. Подобная функция реализована в WinRAR, и к сожалению отсутствует в 7-Zip.
  2. Методы сжатия, которые используются в FreeArc:
    • PPMd. Разработан Дмитрием Шкариным, представляет собой очень эффективную реализацию алгоритма PPM (prediction by partial match). Хорошо подходит для сжатия текстовых данных. Алгоритм симметричен, т.е. для распаковки требуется приблизительно столько же времени, как и для сжатия. Насколько я понимаю, в FreeArc и 7-Zip используется более поздняя версия PPMd, чем в WinRAR, соответственно при сжатии больших текстов они проявляют себя несколько лучше.
    • LZMA. Разработан Игорем Павловым. Представляет собой чрезвычайно успешную реализацию алгоритма LZ77 (впрочем, там есть и элементы PPM). На мой взгляд, это лучший на сегодняшний день алгоритм сжатия общего назначения. Алгоритм асимметричен - распаковка происходит значительно быстрее, чем сжатие. LZMA входит также в состав 7-Zip, тогда как WinRAR ограничивается собственной реализацией LZ алгоритма, весьма посредственной по современным меркам (к тому же с маленьким размером словаря).
    • GrZip. Разработан Ильей Гребновым. Представляет собой одну из лучших реализаций алгоритма BWT. Как и PPMd, хорош для сжатия текстов. В WinRAR подобный алгоритм отсутствует, а в 7-Zip имеется менее эффективный алгоритм Bzip2.
    • Tornado. Разработан Булатом Зиганшиным. Представляет собой реализацию алгоритма LZ, заточенную для максимально быстрого сжатия, степень сжатия при этом невысока. В WinRAR имеется аналогичный по предназначению алгоритм, в 7-Zip он отсутствует.
    • TTA. Разработан Александром Джуриком. Предназначен для беспотерьного сжатия аудио-данных (сырых wav-файлов). По степени сжатия он уступает известному кодеку Monkey's Audio, но заметно опережает аудио-сжатие в WinRAR. В 7-Zip специализированные алгоритмы сжатия аудио отсутствуют.
  3. Помимо основных методов сжатия, в FreeArc также предусмотрены специальные препроцессоры. С их помощью можно обработать сжимаемые данные перед тем, как они будут поданы на вход одному из основных методов сжатия. В некоторых случаях это позволяет улучшить степень сжатия.
    • EXE. Предназначен для предварительной обработки исполняемых файлов. Позволяет заметно улучшить сжатие за счет преобразований адресов относительных переходов в абсолютные. Аналоги этого препроцессора имеются как в WinRAR, так и в 7-Zip (собственно, exe фильтр в FreeArc представляет собой ни что иное, как BCJ из 7-Zip).
    • REP. Предназначен для поиска повторений на очень длинных дистанциях. Может быть очень полезен, например, для периодического инкрементального бэкапа баз данных. Не имеет аналога ни в одном из широко распространенных архиваторов.
    • LZP. Близок по предназначению к REP.
    • MM. Фильтр для мультимедийных данных, которого так не хватает в 7-Zip. К сожалению (насколько мне удалось выяснить) препроцессор поддерживает только одномерную фильтрацию, т.е. при работе с графическими файлами для каждой точки преобразование производится только на основе цвета левых пикселей, а верхние пиксели не учитываются. Впрочем, даже такая реализация дает результат, позволяющий обойти WinRAR.
    • DELTA. Предназначен для улучшения сжатия табличных данных. Некий аналог имеется в WinRAR, в 7-Zip отсутствует.
    • DICT. Предназначен для улучшения сжатия данных, содержащих устойчивые цепочки байт (слова). Иногда дает довольно ощутимое улучшение сжатия. WinRAR и 7-Zip аналогов не имеют.
  4. Имеется стандартный набор функций: solid-сжатие, шифрование, комментарии, резервная информация для восстановления поврежденных архивов.
    На фоне устаревшего WinRAR и слишком медленно развивающегося 7-Zip (я уже потерял надежду когда-либо увидеть в нем мультимедиа-сжатие и динамическое переключение PPMd/LZMA) архиватор Зиганшина выглядит весьма перспективно. Конечно, в настоящее время он из-за отсутствия GUI не очень интересен широкой публике, но в будущем это может измениться.
    Кстати, обращает на себя внимание список имен авторов алгоритмов, использованных в FreeArc. В общем-то, это неудивительно: большинство самых эффективных методов сжатия сейчас разрабатывается программистами из России (например, в рейтинге "Best overall compression program #2" 7 из 10 лучших компрессоров создано в exUSSR). Сам же автор FreeArc назвал успех своего архиватора в тестировании на MaximumCompression "новой победой русского оружия".
    В общем, FreeArc - весьма достойный проект. Надеюсь, он продолжит свое динамичное развитие.

Материалы по теме:
Tags: сжатие

  • Post a new comment

    Error

    Your IP address will be recorded 

  • 3 comments

Anonymous

October 5 2009, 17:44:43 UTC 2 years ago

0.60 RC

"5 октября 2009: выпущен FreeArc 0.60 RC"

Исправлена куча проблем и ошибок: с памятью, максимальным сжатием, временными файлами и т.д.
Интеграция с Explorer (пункты в контекстном меню на архивах, файлах и каталогах)
Конвертация в формат FreeArc архивов других форматов (zip, rar, 7z...)
Поддержка использования архивов FreeArc в инсталяциях InnoSetup
LZMA ускорен на 10-20%
Добавлен режим ультра-сжатия, использующий словарь 1.5 гб
Включен файл лицензии, описывающий, что FreeArc действительно бесплатен для всех

Полный список изменений:
http://code.google.com/p/freearc/issues/list?can=1&q=status:fixed%20milestone=0.60


http://freearc.org/ru/News.aspx

[info]wigo

March 22 2010, 19:03:14 UTC 2 years ago

FreeArc 0.60 (21 декабря 2009 г.)

FreeArc 0.60 (21 декабря 2009 г.)

Увеличение стабильности - основное улучшение в этой версии. Было исправлено несколько проблем, приводивших к зависаниям и вылетам программы. Программа сделана совместимой с Windows UAC, и может использоваться пользователями без привилегий администратора. Реализована распаковка архивов со словарём в 1-2гб независимо от степени фрагментации памяти.

Благодаря поддержке больших словарей FreeArc значительно превосходит другие архиваторы при сжатии многогигабайтных наборов данных. Поэтому он стал очень популярен для создания инсталяторов больших программ. Мы разработали технологию, позволяющую инсталяторам на базе InnoSetup распаковывать архивы FreeArc напрямую.

Была добавлена интеграция с Explorer (32- и 64-битным). Контекстное меню Explorer теперь показывает дополнительные пункты для сжатия и распаковки архивов FreeArc, а также преобразования архивов других форматов в FreeArc. Команда конвертации архивов также добавлена в меню Сервис самой программы. Она реализуется утилитой All2Arc, автор которой - Black_Fox.

LZMA был обновлён до версии 9.07, что увеличило скорость на 10-20%. Режим Максимального сжатия теперь создаёт архивы для распаковки на компьютерах с 1 гб ОЗУ, а новый режим Ультра-сжатия - для распаковки на компьютерах с 2 гб ОЗУ.

Наконец, в дистрибутив был добавлен файл License, подтверждающий что использование программы совершенно бесплатно.


Полный список изменений:
http://code.google.com/p/freearc/issues/list?can=1&q=status:fixed%20milestone=0.60

Скачать:
http://freearc.org/ru/Download.aspx
Create an Account
Forgot your login or password?
Facebook Twitter More login options
English • Español • Deutsch • Русский…