Сергей Ленс: Прошлое и будущее ОС Android Replicant.

 
Прошлое и будущее ОС Android Replicant.

Ты что-то слышал о прошивке ОС Android Replicant? Оказывается, она 100% свободна, использует исключительно открытые библиотеки и уже получила одобрение главного гуру открытого ПО Ричарда Столлмана. Мы выбрали лопату побольше и попробовали копнуть Replicant поглубже — что за зверь такой, откуда взялся и чем интересен.

Терзают смутные сомнения...

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

Оказывается, большинство инсталляций Android используют для различных целей самый что ни на есть закрытый код. Примерами этого могут служить различные библиотеки, имеющие доступ к камере, разного рода бинарные вставки для инициализации всех компонентов системы, а также программы для управления встроенным передатчиком сетей 2G/3G и цифровым радиоприемником.

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

Что такое Replicant?

Впервые слово Репликант прозвучало в культовом фильме Ридли Скотта «Бегущий по лезвию» («Blade Runner»), режиссерская версия которого была признана лучшей кинокартиной в жанре «Научная фантастика».

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

Просмотрев Blade Runner два раза, мы заметили, что помимо слов Android и Replicant, в фильме встречаются и другие знакомые уху названия. Например, практически совершенные киборги-репликанты в Blade Runner принадлежали к классу Nexus 6. Совпадение? Будем считать, что да.

Что касается проекта Replicant, то он был основан в январе 2010 года. В рамках программы развивается полностью открытый вариант платформы Android, целью которого является избавление от закрытых компонентов.

Освободи свой Android!

Мобильные девайсы — это маленькие компьютеры, которые мы с вами постоянно носим с собой. Обладая богатым функционалом, смартфоны представляют большой риск для приватности их владельца. Ведь большинство мобильных телефонов контролируют не только пользователи, но и поставщики услуг. Версия Linux, входящая в состав ОС Android, не является полностью свободной, так как содержит в себе несвободные бинарные файлы.

В начале 2012 года Европейский отдел Фонда свободного ПО развернул масштабную акцию «Освободи свой Андроид!» («Free your Android!»), эмблемой которой стал зеленый робот, снимающий с себя наручники. В рамках этой бессрочной акции акцент делается на отказе от проприетарных прошивок в пользу альтернативных и установке исключительно свободного ПО. По мнению представителей Фонда, каждый пользователь имеет право получить полный контроль над своим мобильным другом, а представленная инициатива будет всячески этому способствовать. Разработчики Replicant утверждают, что им совсем неинтересно вести споры по поводу того, является ли платформа Android открытой. Гораздо важнее то, позволяет ли данная ОС почувствовать свободу действий и защитить себя от слежки третьих лиц.

Как снять наручники?

Фонд свободного ПО предлагает на выбор два способа «освобождения» : установка прошивки Replicant или CyanogenMod. Обе прошивки весьма отличаются между собой. Если Replicant на 100% состоит из свободных компонентов, то в состав прошивки CyanogenMod обычно включены firmware-компоненты и некоторые несвободные драйверы. В то же время, в плане функциональности Replicant значительно отстает от CyanogenMod и пока поддерживает лишь небольшое количество устройств, среди которых Nexus S, Nexus One, HTC Dream, HTC Magic и Samsung Galaxy S.

Таким образом, чтобы воспользоваться свободной прошивкой, достаточно установить ее на свой смартфон. Однако и это еще не все! В рамках представленного мероприятия, разработчики предлагают отказаться от Google Play в пользу альтернативного каталога приложений http://f-droid.org/. Посетив данный ресурс, пользователь сможет скачать и установить на смартфон множество интересных свободных программ. Их список постоянно пополняется — конечно же, не так быстро, как в «настоящем» Маркете.

Хорошо, но не отлично!

Нам удалось выяснить, что для каждого аппарата разработчикам приходится переписывать около 10 закрытых компонентов, а иногда и больше. Кроме того, для успешной работы смартфона, прошитого Replicant, по-прежнему необходима загрузка firmware. То есть, полностью избавиться от закрытого ПО создателям Replicant пока не удалось, а это в какой-то степени ставит под сомнение всю проделанную работу организации. То есть, у разработчиков есть цель, есть средства и способы ее достижения, но в конечном итоге оказывается, что цель эта еще очень далеко и стремиться к ней нужно еще очень-очень долго. Выпускаемые в настоящий момент прошивки Replicant характеризуются нестабильностью работы и отсутствием многих необходимых функций. Для примера мы изучили превью последней сборки Replicant для Samsung Galaxy S, вышедшей в апреле 2012 года. Разработчики проделали просто титаническую работу, заменив почти все проприетарные компоненты смартфона: видеодрайверы, бинарную прошивку для работы Wi-Fi, библиотеки для GPS, камеры, компаса, модема и радио-интерфейса. На выходе получили работоспособную «Галактику» с поддержкой 2D-графики, Bluetooth, Wi-Fi, сети 3G, FM-радио, собственно телефонии, звука и акселерометра. В то же время, 3D-графика, GPS, камера и компас в Galaxy S работают нестабильно или совсем не запускаются.

Вся проблема заключается в том, что по сути единственная вещь, которую меняют разработчики Replicant — это java. Также они могут собрать другое ядро, однако для стабильного функциональности Android-девайсов необходима нормальная поддержка железа. Поскольку она пишется на С и сделать ее может только истинный производитель железа под определенное ядро, все сторонние прошивки пока являются лишь бессмысленным танцем с бубном. Разработчики Replicant создают шум и звук, но они пока не знают, как должна звучать музыка.

Кроме того, не совсем понятно, действительно ли поставленная цель сможет оправдать средства. Помнится, в прошлом году каждый десятый американец возвращал купленный Android-смартфон в магазин по одной простой причине — он просто не смог с ним разобраться. И дело здесь не в личных качествах жителей США, о которых так любит упоминать Михаил Задорнов. ОС Android изначально требует времени и каких-нибудь элементарных навыков, чтобы научиться с ней работать.

Теперь спросите себя: вы бы приобрели смартфон с ОС Android Replicant, в которой и Маркет какой-то не такой, и приложения как-то по-другому устанавливаются, и половина функций не работает?

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

В целом же ОС Android является единственной из существующих сегодня мобильных платформ, которая сделала большой шаг навстречу морально приемлемому и подконтрольному исключительно пользователю мобильному устройству. Но для создания 100% свободной альтернативной версии ОС Android программистам понадобится приложить максимум усилий. По-прежнему остаются открытыми вопросы прошивки и промежуточного ПО, не совсем понятен механизм работы некоторых приложений. Без всего этого Replicant так и останется привлекательной для программистов, но скучной и даже пугающей для обычных пользователей.

Комментарии