Linux для мобильного? Запросто!

В одном из прошлых номеров "КВ" была замечательная статья про два коммуникатора на базе операционных систем Maemo и Android. Если о первой мне особо ничего неизвестно, то вторая уж точно заслуживает внимания линуксоидов, гиков и просто любителей новинок в IT-индустрии, так как основана на небезызвестном ядре Linux. Но как быть, если денег на покупку нового девайса нет, а поселить "пингвина" у себя на мобильном телефоне/смартфоне/коммуникаторе все-таки хочется?

На протяжении многих лет Linux являлся орудием хакерского пролетариата, верно служа тем, кто сможет его "приручить". Именно "приручить", ведь только сейчас линуксовые дистрибутивы обрели некое подобие человечности - появились user-friendly-решения (Ubuntu, Linux Mint), красивые GUI и относительная свобода от принципа "сделай сам". Бывалый линуксоид наверняка меня поймет, ведь еще пару-тройку лет назад не было и дня, чтобы пользователю не приходилось что-либо восстанавливать, настраивать или же иным образом вмешиваться во внутреннюю кухню ОС. Но, к всеобщей радости (или наоборот - к несчастью, кому как), Linux давно перерос детсадовский возраст и используется повсеместно - от настольных систем до высоконадежных серверов крупных компаний. Также популярности Open Source систем в немалой степени способствовала повсеместная борьба с пиратством и провал Windows Vista на потребительском рынке. Нынче пользователя уже не напугаешь словами "GNOME" или "KDE" - большинство моих знакомых, купивших сабноутбук, без каких-либо трудностей используют Ubuntu, хотя на домашнем компьютере у них стоит Windows (зачастую пиратская). Сейчас Linux поселился везде - от компьютеров научно-исследовательских центров до обычных тостеров (это не шутка!). Так что же мешает нам завести пингвина у себя на коммуникаторе/сотовом телефоне?

Помню, мой первый телефон был жутко навороченным на те времена - у него был Bluetooth ;). А если серьезно, то любой мобильный был весьма ограничен в потребительском плане - использовать можно было только то, что "вшил" в него производитель, и никак иначе. С течением времени ситуация изменилась в лучшую сторону - появились "первые ласточки" грядущего прогресса, работающие уже на собственных осях (Symbian и Windows Mobile). Они обладали развитыми API-функциями за счет появления виртуальной Java-машины, сводя на нет кропотливый труд программиста по привязыванию приложения к конкретному "железу". Казалось бы, всё - революция свершилась, труд минимален - качай Software Development Kit и программируй на здоровье! Хочешь - под Java-машину, хочешь - непосредственно под саму ОС. Однако, не тут то было - нативные программы оказались весьма придирчивы к конкретным моделям телефона, а Java-мидлеты иногда поражали своей нерасторопностью (на моем старичке Sony Ericsson Z600 не тормозил, кажется, только тетрис, хотя сам телефон считался передовой моделью и стоил бешеных денег). Плюс ко всему, исходные тексты ОС (что, в принципе, естественно для того времени) зачастую были недоступны простому обывателю, а о доступе к электронной составляющей телефона и речи не шло.

Но с течением времени ситуация изменилась в лучшую сторону - *nix на мобильном уже повседневная реальность. Взгляните хотя бы на iPhone, где операционная система (iPhone OS) основана на ее "старшей сестре" - настольной MacOS X, которая, в свою очередь, является BSD like системой. Но Iphone не единственный в своем роде: Motorola A760, Neo Free Runner и прочие не вызывают отторжения у покупателя, а напротив, привлекают массового потребителя. Ведь что главное для блондинки, покупающей мобильный телефон? Красивый интерфейс с множеством анимированных кнопочек, простота в эксплуатации и розовый корпус. Если с третьим пунктом могут возникнуть некоторые проблемы, то насчет первых двух можете быть спокойны - внешне телефон ничем от своих собратьев отличаться не будет, зато внутренне.... Перспективы, открывающиеся при использовании мобильных версий пингвина, масса: это и возможность снифинга Bluetooth-трафика, и стандартизированные системные вызовы, что, в свою очередь, открывает нам возможность использовать программы, написанные для "взрослых" ПК, - путем простой перекомпиляции исходников (естественно, с "подгонкой" кода под мобильную ОС) мы получаем рабочее и, главное (!), знакомое приложение. Для фанатов разблокировок открыты совсем уж радужные горизонты - к примеру, производитель по умолчанию включил поддержку 3G в аппарат X, однако заблокировал его программно, дабы X не составлял конкуренцию другому продукту компании - телефону Y, отличающемуся лишь ценой за включенный 3G. Стоит ли говорить, что подобные "ухищрения" встречаются довольно часто, и обойти их можно на "раз". Только сделать это в "родных" ОС весьма затруднительно, если не сказать невозможно. Последним аргументом может служить факт, приводящий в негодование всех поборников авторских прав - в Linux не составляет особого труда перекомпилировать ядро, отломав от него, к примеру, DRM, и наслаждаться любимой музыкой или иным медийным контентом. В этом вся прелесть свободного кода.

Итак, допустим, вы твердо решили поселить пингвина у себя в девайсе. Возникает естественный вопрос: "Что ставить? И где это взять/купить?". Точное количество дистрибутивов, рассчитанных на использование в спартанских условиях (ARM-процессор, мягко скажем, не блещет выдающимися вычислительными способностями) не велико, и, на моей памяти, ни один из них не стоит даже одного килобакса. Из зарекомендовавших себя продуктов можно выделить MontaVista Software (www.mvista.com), официально снабжающую такого гиганта, как Motorola, и несколько компаний помельче. Их продукт основан на наработках самой Motorola, ранее активно разрабатывающей проект OpenEZX. Распространяемый по GPL-лицензии, продукт был быстро подхвачен парнями из MontaVista, что, естественно, вызвало некоторое недовольство со стороны компании-родоначальника. Впрочем, юридически MV чиста - такова уж природа GPL-лицензии, и реально все претензии Motorola отправляются прямиком в /dev/null, что, впрочем, не отражается на качестве конечного продукта. Ознакомиться с MontaVista Linux и списком поддерживаемых моделей телефонов может каждый на официальном сайте компании1.

Калибром поменьше идет проект PRIZM, разрабатываемый корейской компанией Mizi Research Incorporated (www.mizi.com). Сие чудо предназначено специально для телефонов компании Samsung, правда, поддержка старых моделей отсутствует, что вызывает некоторые неудобства для владельцев "не той" версии гаджета. Официально на PRIZM работают телефоны Samsung SCH-i839/SCH-i519/SCH-i858, правда, один знакомый умелец умудрился заставить PRIZM работать со своим старым Samsung D900, правда, производительность оставляла желать лучшего, а после перезагрузки ОС вообще отказалась запускаться. Но, во всяком случае, PRIZM, при должном умении, можно портировать практически на любой телефон компании. Загрузить PRIZM, равно как и SDK вкупе с эмулятором, совершенно свободно можно с сайта производителя, указанного в сноске.

Особняком стоят компании-производители, разрабатывающие свои версии Linux и не желающие ни с кем делиться своими наработками, вызывая претензии как со стороны немногочисленных потребителей, так и со стороны Фонда Свободного Программного Обеспечения. Ярким примером может служить компания ROAD GmbH (www.road-gmbh.de), правда, практически не наблюдаемая мной на белорусском рынке мобильных устройств (впрочем, Iphone у нас также "не существует", что не мешает мне иногда замечать на улице людей с "яблочным" телефоном). Немцы создают свой собственный Linux, на базе ядра 2.6.x, "зажимая" при этом как исходники, так и спецификации к своим девайсам, сводя на нет всю пользу как от открытого (казалось бы) кода, так и от идеи покупки телефона с Linux на борту. Никакого тебе SDK, документации или малейшего намека на доступность покупки/скачки исходников - купил телефон и радуйся, что он звонит. А Linux там или еще что-то, уже не важно.

Встав перед выбором, купить пролетарский телефон с Linux на борту,или человеческий, с которым разберется даже домохозяйка, не забудьте поинтересоваться у производителя (продавцы вам в этом деле не помогут, уж поверьте - недавно, решив закупить у ближайшего вендора пятидисковый Debian Lenny, получил в ответ недоуменный взгляд (дескать, с ума, что ль, сошел?) и предложение ознакомиться с Windows Zver DVD. И куда смотрит Microsoft?) о наличии исходных текстов, распространяемых под лицензией GPL. Именно открытые исходники, вкупе с вменяемым SDK и доступной документацией, превратят телефон в настоящее сокровище для любого гика, программиста или же просто любителя читать чужие sms. Закрытые же исходники ничем не лучше Windows Mobile, скорее, даже хуже - у WM годами изученный API, в противоположность закрытому Linux, над которым придется корпеть не одну ночь, дизассемблируя и изучая сие чудо.

Кристиан КАРМАК

Версия для печатиВерсия для печати

Номер: 

45 за 2009 год

Рубрика: 

Software
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!