Просмотров: 12882

Архиватор Бабушкина: неизвестные подробности


Сегодня, 1 апреля, мы решили навестить творческую лабораторию известного российского программного разработчика Андрея Бабушкина, чтобы узнать последние подробности о знаменитом Архиваторе Бабушкина из первых рук. Ранее Андрей стал широко известен своим инновационным антивирусом, поэтому мы особенно заинтересовались его объявлением о начале разработки принципиально нового архиватора на базе недавно открытого «кипринг-эффекта» и хорошо известных в математике цепных дробей. Андрей стал ярким олицетворением отечественной реформы образования, на деле демонстрируя инновационный вектор развития для всего молодого ИТ-поколения.

И пока сырой концепт его уже работающего OpenSource-кода выложен на Github, а специалисты до хрипоты спорят о возможности и целесообразности подобного необычного архиватора, мы решили узнать все подробности непосредственно у первоисточника — самого разработчика Babushkin Arch.

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

— Как было анонсировано, архиватор Бабушкина будет полностью базироваться на недавно открытом европейскими специалистами «эффекте кипринга». Не могли бы вы рассказать нагим читателям более подробно, в чем суть кипринга?

— Любой современный файл — это последовательность байт. Из-за сложнотехнической специфики, в которую я сейчас не буду углубляться, какая-то часть этих байтов является «мусорной». Это попросту служебно-сервисная информация, которая на самом деле не несёт никакой полезной нагрузки и является лишь отражением энтропии окружающей среды. При этом заведомо известно, что реально ценная информация более-менее равномерно распределена по всему объёму файла. Таким образом, если отсеять этот «мусор», мы можем безболезненно избавиться примерно от 30-40% содержимого файлов. Для этого и понадобился «эффект кипринга», который и позволяет, образно говоря, — «отделить мух от котлет».

Единственное ограничение: данный эффект применим лишь для больших файлов с размером более 100 000 Кб. Кроме того, в рамках логического развития открытого «кипринг-эффекта» применяются и другие, более радикальные методы. Как пример, наш архиватор сразу после установки рекурсивно обходит файловую систему компьютера, после чего деинсталлирует всё обнаруженное избыточное программное обеспечение. Все делается в приятном фоновом режиме под ненавязчивую музыку, поэтому пользователям нет никаких причин волноваться или опасаться каких-то «тормозов» или негативных последствий.

— Можно более подробно начет последнего: что в первую очередь подвергается «кипрингу»?

— Например, мои личные исследования показывают, что .Net Framework на 96% компьютеров из тех, что я видел — совершенно не нужен. Далее, Internet Explorer 9/10/11 — ими же всё равно никто не пользуется, тем более ими нарушается антимонопольное законодательство! Поэтому мы всё это дело аккуратно удаляем из пользовательской системы во благо самого пользователя. Или вот зачем в системе файл размером 2Gb, если атрибуты доступа файла показывают, что к нему обращались в последний раз 5 лет назад?

В среднем, каждый новый запуск нашего архиватора освобождает около 30% объема винчестера.

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов
Заархивированные методом кипринга видеоданные

— Я правильно понимаю, что при работе архиватора сжимаемые файлы можно не указывать?

— Совершенно верно! Это так называемый «тихий режим работы», то есть при недостатке места на «винте» достаточно просто запустить наш архиватор, через пару минут его можно закрыть и продолжить работу дальше. Ну, разве, может иногда на перезагрузку компьютера запрос поступить — многие лишние файлы, к сожалению, «лочатся» самой системой, — мы сейчас работаем над этой проблемой.

Но это в режиме «по умолчанию». А так, конечно, можно указать конкретный файл, чтобы сжать и его. Сначала всё сжималось до 10%, потом удалось повысить плотность архивации до 30%, ну а теперь — мы вышли на 80-90%.

— Можно ещё немного про .Net: сейчас на нём много чего понаписано, к примеру, тот же 1С .Net...

— Нужно настроить список исключений... вообще, наша эвристика позволяет «задетектить» установленные в системе специализированные продукты типа Visual Stusio и так далее, при наличии которых удаление .Net автоматически признаётся нецелесообразным. Если мы видим, что подобных вещей много — включается блок пользовательских предпочтений, который подстраивается под вкусы конкретного пользователя.

Ну, а вообще говоря — я за нативный код, так сказать за традиционную ориентацию. Современному программисту нужно быть проще, поближе к процессору... я все эти новомодные виртуальные надстройки не приемлю — всё это «ложные ценности».

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов
Процесс кипринга видеоданных в динамике...

— А что с Java, тоже удалять?

— Да вы не волнуйтесь так, Ява у нас и так эмулируется на уровне ядра архиватора, что же мы совсем звери что ли? (улыбается)

(после паузы, серьёзно). Тем не менее, у нас есть все основания не доверять безопасности импликации родной виртуальной Java-машины, поэтому я переписал её на Visual Basic’е.

— Как насчет разархивирования данных обратно? Обратим ли назад эффект кипринга?

(нервно барабанит пальцами по столу) — Этот вопрос сейчас находится на заключительной стадии проработки, давайте просто подождём, не будем торопить события.


Художественное применение эффекта кипринга
в клипе на ремикс к песне Ma Bicyclette

— Иначе говоря, как скоро пользователи смогут «пощупать» готовую публичную версию вашего архиватора?

— Надо честно признаться, что продукт ещё сырой и пока не совсем готов, изучение «эффекта кипринга» ещё в полном разгаре. Так, архивация больших объемов данных время от времени приводит к неприятным сбоям в файловой системе, например альтернативные потоки данных мы используем для хранения тех самых 30-40% «лишней информации».

К сожалению, пока этот метод не всегда срабатывает должным образом, но мы не теряем надежды.

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

Что касается сроков выхода — думаю, что в конце 2013 года наш архиватор выйдет сразу на всех крупных торрент-трекерах мира.

— В самом общем виде: что из себя представляет ваш архиватор?

— Также как и наш антивирус, новый Архиватор Бабушкина будет состоять из большого количества сторонних модулей-утилит, найденных мною и моими друзьями из ВКонтакта в интернете. Это так называемая «оверлейная модель построения» больших программ. Сложность в том, что не все из найденных утилит поставляются с документированными ключами и спецификациями, поэтому у нас они сначала подвергаются reverse engineering с целью определения полного списка доступных в них команд.

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

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

— Хорошо, кипринг позволяет драматически увеличить процент сжатия файлов, но не увеличит ли это время архивирования?

— Скорость работы традиционных архиваторов, конечно, никуда не годится.

Ну, поймите: у меня канал подключения к интернету 10Mbp/s, получается, чтобы отправить видеофайл в 100 мегабайт своему коллеге мне нужно около 10 секунд, а чтобы заархивировать его через устаревший WinRar — может понадобиться несколько десятков минут. Ассиметрия очевидна, поэтому именно архиватор сейчас узкое место современной компьютерной индустрии.

— Кстати о видеофайлах. Вы публично пообещали, что Babushkin Arch будет сжимать стандартные 2Gb-фильмы в файлы-архивы размером 20Kb. Как это будет выглядеть в реальной жизни?

— Это действительно так, видео поддаётся кипрингу наиболее эффективно. Больше того: 80% всего существующего видео можно вообще безвозвратно удалить без потери какого-то особого смысла или последствий для своей жизни. Технологическая тонкость в том, чтобы автоматически точно выделить именно эти 80% видео.

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

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

— Продолжая тему практических приложений вашего архиватора — я знаю, Google уже лицензировал Babushkin Arch Engine. Можно рассказать об этом интересном совместном проекте?

— Да, многие, наверное, уже видели версию Google Maps сгенерированную моим архиватором для различных 8-битовых устройств на базе популярной ОС Android. Карты — это достаточно тяжелый контент, и попытки как-то ужать их в 8 бит делались и раньше, но только кипринг позволил генерить «на лету» весь картографический сервис в версии приемлемой даже для подобных маломощных устройств.

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

На самом деле тут предстоит ещё очень много работы, я думаю, вы уже слышали о новых разработках фирм Apple и Google — высокоинтеллектуальных наручных часах, последние из которых будут работать на Android и использовать принципиально новую версию высокоэффективного кипринга контента, сжимающей данные до 80-90% и продвигаемую нами под эксклюзивным брендом Laiki.

Пока не могу рассказать об этом подробней, но поверьте — настоящий кипринг ещё ждёт нас впереди.

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

— Кстати, Андрей, как практикующий программист, что предпочитаете больше: аутсорс или продуктовое направление?

— Я, конечно, понимаю весь тревожный подтекст этого вопроса, но попробую ответить откровенно. Конечно, с одной стороны в аутсорсе сейчас квартиры выдают в кредит чтобы лучше зафиксировать человека в пространстве, и если чуточку потерпеть ещё лет 5, думаю, будут и более серьёзные вещи предлагать... опять же, лично я считаю, что нужно было сразу честно переходить к бартеру, а то всё это какие-то полумеры.

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

Но, с другой стороны: много ли вы видели антивирусов и архиваторов написанных по аутсорс-модели? И опять же... у меня своя исследовательская работа, кипринг-эффект, бюджетники у меня есть... нет, мне в аутсорс нельзя.

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

Как вы считаете, эта реформа удалась?

— Без образования никак нельзя — это аксиома. Если бы не эта реформа, я не думаю, что мне удалось бы добиться всех поставленных перед собой целей. Взять, например, связывание GUI написанного на Visual Basic’е и ядра антивируса, созданного мною на пакетном языке .bat.

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов
Текущие пользователи Архиватора Бабушкина
по типу собственности

От коллег я слышал про «симблер» (прим. автора: написание программ на Си с множеством ассемблерных вставок), мною же по полной аналогии были реализованы .bat-вставки в P-код языка Visual Basic. Можно сказать, что старый-добрый «васик» теперь обрёл второе дыхание, будучи столь удачно расширенный перспективным языком программирования.

— Специалисты при анализе вашего антивируса насчитали использование в рамках одного проекта более 5 языков: Ассемблер, bat, Visual Basic, C++, VBS . С чем связана такая гремучая какофония из самых разных технологий?

— Как я уже говорил, само ядро моего антивируса написано на языке .bat, оно интегрируется глубоко в операционную систему — самые серьёзные вещи я предпочитаю писать на наиболее высокоуровневом языке из доступных, чтобы исключить любые логические ошибки в принципе. Все остальные обвязки создавались под каждое конкретное направление — например, листинг системных процессов лучше реализовать на С, графическую оболочку я решил сваять на «васике»...

— Для чего был задействован ассемблер?

— Для наиболее критичных, узких мест в программе. У меня он по принципиально новому алгоритму динамически генерирует батник-ядро, которое уникально для каждой отдельной машины и инсталляции. Ассемблер переводит процессор в режим трассировки, перехватывая отладочное прерывание Int1h , и в пошаговом режиме генерирует машинозависимый код, чтобы предотвратить несанкционированный перенос bat-ядра архиватора на другой компьютер и попутно пресечь попытку реверса алгоритма этого процесса под отладчиком потенциальным злоумышленником.

Кроме того в систему инсталлируется резидентный драйвер, который контролирует целостность кода батника, сверяя CRC файла после каждого обращения к нему (перехватывая на низком уровне BIOS Int13h ), предотвращая любую его правку и повреждение (функция самовосстановления).

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

Кстати говоря, у меня часто спрашивают, почему я сохраняю все настройки в своих программах в cpp-файлах, например, так:

#pragma once
#include stdio.h
#include windows.h
main () {
int time=170
int inetscreen=1
int confirmver=1
int acttime=60
int flashantiv=1
}

Из описания приведенного выше алгоритма очевидно, что на каждой конкретной машине, а также после изменения любых настроек, происходит динамическая перекомпиляция проекта на С++, чтобы добиться максимально-возможной оптимизации к данной конкретной конфигурации/железу пользователя.

— Что насчет деления на 0? Вы говорили ранее, что «тоже утилизировали эту операцию»?

— Это прерывание перехватывается, устанавливается наш собственный обработчик для нужд процесса дешифровки основного кода.

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

— Если позвольте ещё один деликатный вопрос — откуда такая страсть к пакетному языку .bat?

— С детства являюсь сторонником массиво-ориентированного программирования, посему считаю, что в этом пакетном языке эта парадигма реализована наиболее удачно, никаких альтернатив не вижу (задумывается), разве что может ещё PHP...

— Андрей, в связи с этим серьёзный вопрос. Есть такое распространенное мнение, что если студент компьютерных наук рано начинает работу (например, с 2-3 курса), этим он допускает стратегическую ошибку. То есть, когда у него есть реальный выбор и возможность, посетить лекции по математике или «покрюнчить» курс комбинаторики, он, пользуясь своими тактическими интересами, выбирает халтурить начинающим кодером в какой-нибудь сомнительной софт-компании, либо вообще, как и вы, «создаёт свой собственный продуктовый бизнес».

Как вы считаете, столь ранний старт не станет для этого специалиста в будущем, когда уже действительно нужно будет работать на полную катушку и времени на туже комбинаторику не будет, фальстартом в его карьере?

— Лично я считаю, что нужно сразу учиться зарабатывать деньги. Знания того же языка .bat нужно сразу конвертировать в «наличку», потому что вкусы публики очень переменчивы. Короче — «куй железо пока горячо» (Андрей загадочно улыбается, помахивая своим знаменитым USB-фломастером).

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

— Андрей, хочется пожелать не обращать внимания на критику, а научиться на неё реагировать конструктивно. Не хотелось бы, что вы, как и ранее затравленный изобретатель «принципиально новой BolgenOS» Денис Попов, решили совсем уйти из ИТ. Кстати, и на гитаре вы тоже, играете, как и Денис...

— Гитара подождёт, а пока я «как один из разработчиков Windows 8» , заинтересован в постоянном развитии. В частности, буду обязательно выходить за пределы чистого программирования, потому что сам по себе кипринг имеет невероятные масштабы практического применения.

Например, по примеру Ричарда Столлмана решил заняться производством стильной одежды для программистов, в частности выдам небольшой секрет — мною налаживается выпуск специальных кипринговых галстуков для программистов. Экономический секрет в том, что мы смогли сэкономить на дизайнере, так как дизайн и расцветка галстуков динамически генерируется ещё одной моей принципиально новой разработкой, написанной на стыке промышленного дизайна и программирования.

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

Второе узкое место закрытое нами — программисты не любят шопинг и редко когда вылазят из-за своего компьютера. И если у женатых ещё не всё так плохо, то холостякам приходится совсем туго. Именно с учетом этого тренда мы собираемся работать по принципиально новому алгоритму доставки — мы предлагаем распечатывать наш галстук прямо на рабочем месте, используя подручный 3D-принтер.

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

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

— Только галстуки у вас какие-то 8-битовые получились, игру Mario напоминает сразу...

— Обсчет оригинальной модели пока занимает слишком много времени, поэтому именно тут и пригодились наработки моего архиватора и его принципиально новый алгоритм Laiki.

— Хорошо, а для девушек-программисток, что стильного с кипрингом предложить можете?

— Пока лишь бантик, на что-то большое пока вычислительных ресурсов не хватает. Юноши, кстати, тоже могут воспользоваться.

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

— Андрей, напоследок: как вы вообще относитесь к ИТ-сообществу, которое очень зло раскритиковало вашу флешку-фломастер (антивирус, я считаю, пострадал уже из-за флешки, просто попав под горячую руку)?

— Я очень уважаю всех айтишников, среди них много по-настоящему умных и талантливых людей, но есть и одна распространенная слабость, жертвой которой я стал — практически никто не разбирается в совершенно новых алгоритмах, именно которыми я очень плотно и занимаюсь. И это в то время, когда правительство провозгласило новый курс на модернизацию и инновации?!

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

Думаю со временем, должно сформироваться принципиально новое комьюнити, где будут публично разбираться все операционные системы созданные школьниками «с нуля», все их совершенно новые алгоритмы, а также все другие, порой неожиданные для людей «старой закалки» технические решения (я имею ввиду, например, свою USB-флешку).

антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

Осталось только дождаться этого благословенного времени — новое реформированное образование, уверен, нам в этом всемерно поспособствует...

p.s.:

путин плачет антивирус бабушкина архиватор бабушкин юмор приколы первое апреля архивация кипринг сжатие данных алгоритм денис попов

dev.by, 2013

twitter.com facebook.com vkontakte.ru odnoklassniki.ru mail.ru ya.ru pikabu.ru blogger.com liveinternet.ru livejournal.ru google.com bobrdobr.ru yandex.ru del.icio.us

Подписка на обновления блога → через RSS, на e-mail, через Twitter
Теги: , , , , , ,
Эта запись опубликована: Понедельник, 1 апреля 2013 в рубрике ИсторииИнтервью.

11 комментариев

Следите за комментариями по RSS
  1. Почему Андрей, а не Алексей?

  2. Андрей: вопрос конечно справедливый, но... мне бы не хотелось обижать или как-то травить конкретного человека или реальную личность, в частности Алексея, поэтому здесь у нас в беседке мифический Андрей Бабушкин - это как собирательный образ, олицетворение своего знаменитого прообраза, которое к сожалению через пару лет может стать уже нормой.

  3. Вы сделали мой день!

    Спасибо =)))

  4. Уверен со мной согласится каждый, автор блога - лучший интервьюер в мире! Более тактичного разговора на такую тонкую тему я еще не встречал...

  5. Хочу дополнить свое интервью новыми "горячими" новостями:

    От фирмы Apple мне пришел сертификат на право использования буквы i перед своей фамилией и предложение на покупку эксклюзивных прав на мой архиватор (теперь он будет называться iPacbab).

  6. "Не могли бы вы рассказать нагим читателям более подробно, в чем суть кипринга?"

    Щас разденусь, почитаю...

  7. Отлично например. Прочитал на одном дыхании. Хе-хе

  8. Алексей Бабушкин

    Меня зовут не Андрей

  9. Интеллигенция

    Опа, тут тоже кипринг:

    http://www.echo.msk.ru/blog/kurvimetr/1033628-echo/

  10. Однорукий клавишник

    я пользуюсь архиватором типа бабушкинского

    называется Dropbox

    сжимает несколько гигабайт уникальной информации в два слова

    потом прихожу на любой компьютер, устанавливаю разархиватор, ввожу эти два слова - и вуаля! - гигабайты бесценного груза появляются на новом компьютере

  11. Однорукий клавишник

    хотя вектор иронии понятен,

    айтишникам не мешало бы всё таки точнее формулировать претензии

    и одновременно мыслить более интересно

    в данном случае термин "архивация" однозначно воспринимается как "перекодирование данных с целью уменьшения их объёма". Но у "архивации" есть и другие значения, а конечному юзеру без разницы, действительно ли сжимается 2 гигабайта в 2 слова или они хранятся на сервере, а двумя словами ты просто обеспечиваешь доступ к ним.

    в общем, если кто будет писать клон Дропбокса - ловите идею маркетинговой кампании. "Сжимаем ваши гигабайты в 1 слово".

Оставьте комментарий!

Не регистрировать/аноним

Используйте нормальные имена. Ваш комментарий будет опубликован после проверки.

Зарегистрировать/комментатор

Для регистрации укажите свой действующий email и пароль. Связка email-пароль позволяет вам комментировать и редактировать данные в вашем персональном аккаунте, такие как адрес сайта, ник и т.п. (Письмо с активацией придет в ящик, указанный при регистрации)

(обязательно)


⇑ Наверх
⇓ Вниз