Это сайт — моя персональная записная книжка. Интересна мне, по большей части, история, своя жизнь и немного программирование.

HA

Сначала немного не по теме.

Все файлы на виртуалку я переношу через образ дискеты и перво-наперво несколько слов о том как создать образ дискеты на «Маке». Мне необходимо куда-то записать эту информацию, иначе она у меня постоянно теряется. Из командной строки это делается так:

dd if=/dev/zero of=floppy.img bs=1024 count=1440
diskutil eraseVolume MS-DOS VOLUME `hdiutil attach -nomount floppy.img`
hdiutil attach floppy.img

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

Как справедливо напомнили читатели в комментариях к моему эксперименту c ARJ, в 90-е чемпионом по сжатию был архиватор HA (с алгоритмом PPM). Он был очень медленным по тем временам (помню DOOM сжимался за часы) и поэтому не слишком распространённым, но я с ним сталкивался.

Успехи архиватора HA — 23,7% исходного объёма

Для тестирования я выбрал форк архиватора, с которым сталкивался во времена интереса к языку программирования Си-​-. Форк быстрее оригинала в 1,5 раза, впрочем, как оказалось, сейчас это вряд ли имеет значение — сжатие файла из вчерашнего теста заняло малозаметное время.

214962-байтный файл сжался в 51088 байт, это 23,8% от исходного объёма. Это лучше современного xz с его 25,4 процентами, но по-прежнему хуже архиватора Compressia с его космическими 20,6%!

3 комментария
Алексей Тен 2019

А он заточен под тексты?
Может с bzip2 надо сравнить?

А вего меня робот опять не пускает ?

vnaum 2019

А зачем приседания с виртуалками и образами, ежли DosBox прекрасно монтирует каталоги с хоста как диски в эмулированном досе?

Евгений Степанищев 2019

Может с bzip2 надо сравнить?

Обычно xz лучше сжимает.

А зачем приседания с виртуалками и образами, ежли DosBox прекрасно монтирует каталоги с хоста как диски в эмулированном досе?

Потому что у меня есть купленный Parallels и мне проще накатить драг-н-дропом виртуалку под ДОС :) Или речь про дискеты? Проще один раз сделать дискету, засунуть туда архиваторы и нужный текст, а потом примонтировать её к Винде и ДОСу, чем для каждой из двух ОС использовать своё решение :)