На первый взгляд заявленное сотрудничество некоммерческого фонда Mozilla и техногиганта Samsung по созданию открытого движка Servo для веб-браузеров выглядит довольно обыденной новостью. Но в совокупности с информацией о том, что Google создаёт собственный рендеринговый движок Blink она предстаёт в совершенно ином свете и свидетельствует о том, что на рынке браузеров готовятся принципиальные изменения — при визуализации страниц мобильные и настольные браузеры следующего поколения готовятся сменить теперешнюю последовательную модель вычислений и перейти к полноценному использованию возможностей параллельных вычислений, которые предоставляют современные многоядерные процессоры.
Технический директор Mozilla Брендан Эйк в корпоративном блоге сообщает, что движок Servo будет строиться с нуля, чтобы избавиться от громоздкого наследия проблем с безопасностью в современных веб-движках, а также по максимуму использовать возможности микропроцессоров нового поколения на многоядерных и высокопараллельных гетерогенных архитектурах. Вероятно, расчёт обеих компаний основан на том, что Servo для ускорения рендеринга будет использовать не только возможности центрального процессора, но и ресурсы графических ускорителей, способных эффективно осуществлять многие расчёты общего назначения. Эйк говорит, что в основу Servo лягут “совершенно иные принципы”, чем у существующих ныне веб-движков. В первую очередь Servo предназначается для устройств с процессорами ARM, работающих под управлением Android. Такие устройства, в частности, выпускает Samsung. В январе 2013 г. компания анонсировала 8-ядерный процессор на архитектуре ARM.
Вместо языка C++, который традиционно используется в проектах Mozilla, включая известный браузер Firefox, в проекте Servo будет применен новый язык программирования под названием Rust. Он предлагает более защищенную среду исполнения и улучшенную поддержку параллельной обработки данных. Mozilla описывает Rust следующим образом: “Язык призван заполнить многие из тех ниш, в которых в последние десятилетия применялся C++, благодаря эффективным высокоуровневым мультипарадигменным абстракциям и может предложить точное управление аппаратными ресурсами. Но кроме этого, он безопасен по определению и исключит целые классы ошибок с управлением памятью, которые приводят к сбоям и различным уязвимостям. Rust также отличается поддержкой лёгких взаимно совместимых компонентов, упрощающих использование вычислительных мощностей многоядерных процессоров на современных и будущих вычислительных платформах”. Наиболее новой на сегодняшний день версией языка является 0.6.
Компании не раскрывают никаких деталей относительно времени запуска движка Servo, но сообщили о планах выпуска первой важной редакции языка Rust в течении года. В настоящее время разработчики заняты чисткой, расширением и документированием библиотек, созданием инструментов для улучшения пользовательского окружения и наращивания производительности. Samsung уже предоставила внутренний интерфейс ARM для языка Rust и создаёт необходимую для кросс-компиляции на Android инфраструктуру наряду со многими другими улучшениями.
О важности проекта Servo для Mozilla и Samsung можно только гадать, но не вызывает сомнений, что от его успеха зависит дальнейшее существование Mozilla на мобильном рынке, особенно это актуально в условиях стагнирующего ПК-рынка. Современные продукты Mozilla — браузер Firefox и операционная система Firefox OS — основаны на движке Gecko. По данным TechCrunch, компания не планирует отказываться от него. Два проекта — Gecko и Servo — будут существовать параллельно.
Что касается Samsung, то для неё быстрый и безопасный веб-браузер может стать конкурентным преимуществом на рынке смартфонов, где компания и без того продаёт Android-устройств в семь раз больше, чем ближайшие конкуренты, но, видимо, таким образом пытается обезопасить своё будущее.
Примечательно, что при этом самым уязвимым выглядит положение фирменного браузера Chrome, чья доля среди мобильных клиентов составляет всего 2,43%. Доля стандартного Android-браузера в семь раз выше, но он больше не входит в число приоритетных направлений — все новые версии Android выходят со встроенным браузером Chrome. Таким образом, технология Servo является угрозой для одного из ключевых компонентов платформы Android.