Мобильные платформы: Maemo 5. Смена приоритетов
В отличие от Android, Maemo разрабатывается уже достаточно долго, однако до анонса N900 о ней почти не говорили. В своей статье мы попытаемся разобраться — почему очередной релиз платформы, работающей только на гаджетах Nokia (притом на довольно узком их сегменте — интернет-планшетах N-серии) вызвал такой ажиотаж в сетевых СМИ. Что заставляет ставить Maemo на одну линейку с Google Android и прочими перспективными разработками? Ответы на эти вопросы следует искать в политике финского гиганта, касающейся встроенного ПО.
В финский «зоопарк» завезли пингвинов
До недавнего времени Nokia активно использовала две программных платформы для мобильных устройств: Series 40 и Symbian S60. Первая система работала на бюджетных моделях компании, вторая — в устройствах среднего и верхнего ценового диапазона. Платформа Maemo компанией до сих пор активно не продвигалась — устройства под ее управлением можно пересчитать по пальцам (притом, для этого хватит пальцев одной руки).
Первым признаком изменившийся ситуации стал активный интерес Nokia к разработкам с открытым исходным кодом. Поворотной вехой я считаю приобретение финнами компании Trolltech (теперь это «дочка» Nokia и называется она QT Software), разработчика известного набора библиотек QT для создания графических интерфейсов в unix-системах. Практически одновременно активизировалась разработка Maemo и вскоре появилась пятая версия платформы, которая обзавелась «телефонным» функционалом. Затем в Сети заговорили о переводе флагманской линейки Nokia на встроенный Linux собственной разработки.
Конечно, в компании не исключают и выпуск «гуглофонов» Nokia, но Maemo остается главным претендентом на должность флагмана. Сегодня диспозиция выглядит следующим образом: Series 40 по-прежнему поставляется с бюджетными моделями, а вот Symbian S60 придется потесниться и уступить верхний ценовой сегмент новой платформе.
В принципе, все логично — одинаковая программная «начинка» устройств за €100 и за €550 смущала многих. Тем более, что «старичок» Symbian, хорошо себя зарекомендовавший на телефонах и смартфонах, не очень подходит для мобильных «компьютеров», которых требует рынок. Система явно не выдержит конкуренции с новыми игроками: уже вышедшей ОС Android и ожидаемой Windows 7.
Так что причиной ажиотажа стал вовсе не анонс очередного планшета, который внезапно оказался телефоном. Здесь дело в другом — производитель №1 не просто выпускает устройство (хотя бы и флагманское), по сути дела, Nokia представила новую платформу для целого класса устройств. А это уже серьезно! Впрочем, к перспективам Maemo мы еще вернемся, а сейчас расскажем об архитектуре системы.
Архитектура Maemo 5
Говоря коротко, Maemo представляет собой встраиваемую ОС, разработанную специалистами Nokia на базе знаменитого «конструктора» дистрибутивов Debian (на его основе созданы такие ОС, как Ubuntu Linux и Xandros) и предназначенную для устройств финской корпорации с процессорами ARM. Система основана на ядре GNU/Linux, свободно распространяемых программах (в частности, компонентах среды Gnome и библиотеках GTK+), а также собственных разработках Nokia, многие из которых — закрыты. Именно закрытость определенных частей ОС мешает полноценному использованию Maemo на устройствах других производителей и отличает ее от созданной в Google и полностью открытой ОС Android (коммерческие надстройки HTC мы в расчет не берем, речь здесь идет только базовой платформе). Другое важное отличие — Maemo не ориентирована, как Android, на Java-приложения и дает разработчикам большую свободу. В частности, на Maemo 4 были перенесены многие популярные открытые программы. Естественно, выпускает Nokia и SDK для разработчиков приложений.
Теперь давайте рассмотрим архитектуру системы чуть более подробно. В нижней части программного стека располагается загрузчик NoLo (Nokia Loader), ядро GNU/Linux, которое управляет памятью, процессами, устройствами, файловой системой, осуществляет взаимодействие между процессами, а также предоставляет API программам, работающим в пространстве пользователя (т.н. userspace). В общем, все устроено как в любом другом дистрибутиве Linux, с учетом аппаратных особенностей устройств Nokia. Этажом выше «живут» системные сервисы и основные библиотеки:
- GLib — низкоуровневая библиотека, расширяющая возможности, стандартной библиотеки libc языка C (она служит основой для GTK+ и Gnome);
- D-Bus — шина сообщений, которая предоставляет приложениям широкий набор средств межпроцессного взаимодействия. Программа разрабатывается в рамках проекта freedesktop.org и активно используется во многих открытых проектах (например, в Gnome и KDE);
- HAL (Hardware Abstraction Layer) — демон, предоставляющий слой аппаратных абстракций. Первоначально был разработан в компании RedHat, сейчас HAL является частью все того же freedesktop.org;
- X Window System — графическая подсистема, обеспечивающая возможность работы GUI-приложений.
На следующем уровне мы видим библиотеки GTK+, а также необходимые для них средства (cairo, Pango и ATK). Как видите, здесь тоже нет особых отличий от прочих дистрибутивов.
На самом верхнем уровне находится среда рабочего стола Hildon, которая представляет из себя смесь компонентов Gnome, открытых разработок сообщества и собственных средств Nokia. Собственно, Hildon можно считать «мобильной» вариацией среды рабочего стола Gnome.
На этом описание архитектуры Maemo мы закончим. Конечно, наш рассказ нельзя назвать исчерпывающим, и желающие присоединиться к сообществу разработчиков Maemo (или узнать больше об устройстве этой замечательной системы) должны посетить сайт проекта.
Новый интерфейс
Внешний вид Maemo 5 в целом напоминает интерфейс Android, во всяком случае, его структура та же самая: имеется рабочий стол, на который можно установить виджеты или вынести контакты, закладки и ярлыки приложений. Кроме того, мы видим традиционную панель статуса с разнообразной служебной информацией и виртуальную кнопку выхода в главное меню (кстати, в N900 выйти в меню можно только при помощи этой кнопки). Традиционно для мобильного Linux, поддерживаются виртуальные рабочие столы (в N900 их по-умолчанию 4, но этот параметр можно настроить) с плавным горизонтальным переключением между ними при помощи сенсорного экрана. Общий вид рабочего стола показан на рисунке.
Вид рабочего стола Maemo 5
В общем, пока все традиционно. Поведение главного меню несколько отличается от общепринятых стандартов — если в системе запущены приложения, сначала будет показан их список. Собственно меню можно увидеть только при повторном нажатии.
Диспетчер запущенных прилоджений
Главное меню Maemo 5
Мне показалось неудобным отсутствие специальной кнопки возврата в N900 (поскольку других устройств на Maemo 5 пока нет, здесь и далее мы говорим только о новом флагмане Nokia), и чтобы вернуться на предыдущий уровень меню, нужно коснуться экрана. Кстати, в диспетчере запущенных программ можно наглядно увидеть многозадачность Fremantle — там отображаются миниатюры окон, притом они не статические. И если, скажем, вы смотрите в браузере ролик на YouTube — в уменьшенной копии окна он также будет проигрываться.
Отдельно стоит сказать о встроенном в систему браузере — многие ожидали увидеть здесь Mozilla Fennec, мобильную версию Firefox, но финны предпочли разработать программу самостоятельно, на основе «движка» Mozilla Gecko (он же используется в «настольном» Firefox). Браузер прекрасно отображает и масштабирует полноразмерные сайты, поддерживает плагины и в нем без видимых «тормозов» работает Adobe Flash. По крайней мере, флэш-игры и ролики YouTube финская версия Mozilla отрабатывает прекрасно! В общем — к интернет-обозревателю претензий нет, а ведь это одна из самых важных программ мобильного компьютера.
Встроенный браузер Maemo 5
Мультимедийные функции Maemo 5, которые мы пытались оценить на примере все того же N900 также не подкачали. В системе прекрасный плеер с очень удобным управлением. Кроме того, благодаря мощному процессору OMAP 3430 (архитектура ARM Cortex A-8) с тактовой частотой 600 МГц и 3D-ускорителю PowerVR SGX, N900 без проблем воспроизводит видео высокого разрешения. Кроме того, в системе имеется стандартный набор приложений и виджетов, картография от Navteq (поддерживаются сервисы OVI Maps), а также экранная клавиатура.
Что касается сторонних приложений — найти их для новой платформы пока проблематично, однако, это вопрос времени. Учитывая относительную простоту переноса на Maemo открытых программ, с разработкой проблем быть не должно. А если не забывать о популярности устройств Nokia, привычные многим Карты Google и тому подобные инструменты появятся в самое ближайшее время. Кстати, если вернуться к приличным вычислительным мощностям и «графическим» возможностям N900, думаю, за играми тоже дело не станет.
Напоследок мне бы хотелось отметить прекрасную графику, анимацию и прорисовку элементов интерфейса — здесь Maemo 5 не уступает Google Android с фирменной надстройкой HTC Sense. В общем, на мой взгляд, система финнам удалась — Maemo 5 прекрасно подходит для современных коммуникаторов и способна конкурировать с новейшими разработками других компаний. Пожалуй, самое время перейти к перспективам финской версии встроенного Linux.
Развитие и перспективы
По мнению многих аналитиков, платформу Maemo ожидает блестящее будущее. С выпуском пятой версии системы Nokia получает хорошую фору — до появления первых коммуникаторов с Windows 7 пройдет немало времени. Другой конкурент, Google Android, тоже представлен на рынке не очень широко — «гуглофоны» пока считаются экзотикой и станут массовым явлением не раньше 2010 года. Только желанием получить запас времени может объясняться такая быстрая смена приоритетов и форсирование разработки. Судите сами, совсем недавно была выпущена флагманская модель Nokia N97 на Symbian S60. И вот мы видим уже нового лидера, который кроме операционки немногим отличается от предыдущего. Думаю, к концу 2009 — началу 2010 года финны порадуют покупателей и другими мобильными «компьютерами». В общем, с маркетинговой частью все более или менее ясно.
Гораздо интереснее моменты технические: недавно был анонсирован переход Maemo на графические библиотеки QT, разрабатываемые уже упомянутой нами QT Software. При этом, GTK+/Hildon получит статус поддерживаемого сообществом. Понятно, что при таком серьезном изменении архитектуры следующий релиз системы не может быть развитием текущего (правда в Nokia заявляют, что не собираются прощаться с мобильным Gnome и некоторые компоненты Fremantle войдут в новую версию). Тем не менее, Maemo 6 «Harmattan» будет отличаться от «пятерки» едва ли не сильнее, чем она сама — от Maemo 4. Т.е. разработка проекта уже разошлась на две независимых ветки и при всех несомненных достоинствах, Maemo 5 является не более чем переходной версией. Финнам нужно было срочно выпустить на рынок современную ОС для мобильных «компьютеров», чтобы выиграть время. И они это сделали! И хотя долгих перспектив у Maemo 5 нет, тот факт, что она станет флагманской платформой Nokia на ближайшие пару лет, заставляет относится к системе с должным уважением.
Заключение
Итак, сегодня мы рассмотрели одну из перспективных разработок в области «мобильных» операционных систем. Для полноты картины нам не хватает только рассказа о Windows 7, но о ней говорить пока рано. Конечно на этом рынке есть и другие разработки (например, еще один «мобильный» Linux — OpenMoko), но они явно в лидеры не выбьются и потому едва ли заслуживают отдельной статьи.
В завершении мне хотелось бы еще раз подчеркнуть, что рынок мобильных устройств стремительно меняется, набирают популярность такие его направления, как интернет-планшеты, мощные коммуникаторы и нетбуки. Естественно, новые гаджеты требуют совершенно другого программного обеспечения и потому разработчики встроенных систем активизировались. Конечно, основная гонка «вооружений» пройдет в 2010 — 2013 годах, но и подготовительный этап, который мы наблюдаем сейчас очень интересен.
Далее мы обсудим не менее любопытный тип устройств — нетбуки. Правда здесь Linux продвигается не так быстро, как на телефонах (все же нетбуки ближе к обычным ноутбукам и большинство пользователей желает видеть на них Windows), но интересные разработки есть и в этом направлении. В следующей статье речь пойдет о проекте корпорации Intel — операционной системе Moblin 2.0, выход которой ожидается в скором времени.
Обсудить мобильную платформу Maemo 5 на форуме
До недавнего времени Nokia активно использовала две программных
платформы для мобильных устройств: Series 40 и Symbian S60.