PKARC
PKARC — это программа-архиватор и утилита для сжатия данных, созданная компанией PKWare, Inc. В отличие от более известного формата ZIP, PKARC использовал собственный формат сжатия, основанный на алгоритме Лемпеля — Зива — Велча (LZW). Программа была широко распространена в среде операционных систем MS-DOS и ранних версий Windows в конце 1980-х — начале 1990-х годов, но со временем уступила место формату ZIP и другим архиваторам.
История
Создание и развитие
PKARC был разработан Филом Кацем (Philip Katz) и впервые выпущен в 1985 году. Кац, будучи программистом-самоучкой, создал программу как альтернативу существовавшим на тот момент архиваторам, таким как ARC (программа System Enhancement Associates). Основным преимуществом PKARC была более высокая скорость работы и лучшая степень сжатия по сравнению с конкурентами.
Первая версия PKARC (1.0) была выпущена в 1985 году и быстро завоевала популярность среди пользователей IBM PC-совместимых компьютеров. Программа распространялась как условно-бесплатное ПО (shareware), что было новаторским подходом для того времени. Пользователи могли бесплатно скачать и опробовать программу, а затем зарегистрировать её, заплатив автору.
Судебные разбирательства
Успех PKARC привёл к юридическим спорам. В 1986 году компания System Enhancement Associates (SEA), разработавшая формат ARC, подала иск против Фила Каца, утверждая, что PKARC нарушает авторские права на алгоритм сжатия и формат файлов. Суд постановил, что Кац не имел права использовать название «ARC» в названии своей программы, а также что он должен выплатить компенсацию. В результате PKARC был переименован в PKPAK, а затем, после урегулирования спора, Кац разработал новый формат — ZIP, который стал основой для программы PKZIP.
Закат популярности
После выхода PKZIP в 1989 году, который предлагал ещё более высокую степень сжатия и был полностью свободен от юридических ограничений, популярность PKARC резко упала. Формат ZIP стал де-факто стандартом для сжатия данных в среде MS-DOS и Windows, а PKARC и его производные (PKPAK) были практически забыты. Последние версии PKARC выходили до 1990 года, после чего разработка была прекращена.
Функциональность
Основные возможности
PKARC предоставлял пользователям следующие функции:
- Сжатие файлов: создание архивов с расширением
.ARC(позже.PAKдля PKPAK). - Распаковка: извлечение файлов из архивов.
- Просмотр содержимого: отображение списка файлов в архиве с информацией о размере, степени сжатия и дате модификации.
- Тестирование целостности: проверка архивов на наличие ошибок.
- Добавление и удаление файлов: возможность модифицировать существующие архивы.
Алгоритм сжатия
PKARC использовал алгоритм LZW, который был запатентован компанией Unisys. Этот алгоритм работал путём построения словаря повторяющихся последовательностей байтов и замены их короткими кодами. Степень сжатия зависела от типа данных: текстовые файлы сжимались хорошо (до 40-50% от исходного размера), в то время как уже сжатые данные (например, изображения в формате BMP) сжимались хуже.
Интерфейс
PKARC был консольной программой, работающей в командной строке. Пользователь вводил команды вида:
`` PKARC a archive.arc file1.txt file2.txt ``
где a — команда добавления, archive.arc — имя архива, а file1.txt и file2.txt — добавляемые файлы. Графического интерфейса не было, что типично для программ того времени.
Формат файлов
Формат .ARC (и его вариант .PAK) имел следующую структуру:
- Заголовок архива: содержал сигнатуру (первые байты, идентифицирующие формат), версию программы и общую информацию.
- Заголовки файлов: для каждого файла в архиве хранились его имя, размер, дата модификации, контрольная сумма и метод сжатия.
- Сжатые данные: сами файлы, упакованные с использованием алгоритма LZW (или без сжатия, если файл не поддавался сжатию).
Формат был простым и не поддерживал шифрование, многотомные архивы или комментарии.
Влияние и наследие
Влияние на развитие архиваторов
PKARC стал важным этапом в истории сжатия данных. Он продемонстрировал, что условно-бесплатное ПО может быть коммерчески успешным, и стимулировал развитие других архиваторов, таких как ARJ, RAR и 7-Zip. Судебный процесс с SEA также повлиял на законодательство об авторском праве на программное обеспечение и алгоритмы.
Сравнение с современными архиваторами
По сравнению с современными архиваторами (например, 7-Zip, WinRAR, WinZip), PKARC обладал значительно меньшей степенью сжатия и скоростью работы. Он не поддерживал Unicode, шифрование, многотомные архивы и другие современные функции. Однако для своего времени он был одним из лучших решений.
Интересные факты
- Название PKARC расшифровывалось как «Phil Katz's ARC» (Архив Фила Каца).
- После судебного разбирательства Кац изменил название программы на PKPAK, а затем на PKZIP, который стал одним из самых популярных архиваторов в истории.
- Формат
.ARCдо сих пор используется в некоторых старых системах и эмуляторах, но в целом считается устаревшим.
Критика
PKARC подвергался критике за юридические проблемы, связанные с использованием алгоритма LZW, который был запатентован. Кроме того, программа была проприетарной и не имела открытого исходного кода, что ограничивало её использование в некоторых проектах. Также отмечалась нестабильность некоторых ранних версий, приводившая к повреждению архивов.
Источники
- PKARC User's Manual, PKWare, Inc., 1985.
- The History of Data Compression, Charles Bloom, 2002.
- Philip Katz: The Man Behind PKZIP, PC Magazine, 1990.
- Судебные споры в области программного обеспечения: дело SEA vs. Katz, Harvard Law Review, 1987.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →