Код Rust включен в Firefox 48

в 19:10, , рубрики: Firefox, Mozilla Research, open source, Rust, информационная безопасность, медиапарсер Инф.без, системное программирование, метки:

Код Rust включен в Firefox 48 - 1Компонент, написанный на Rust, впервые заменил компонент на C++ в браузере Firefox, и это только начало!

Mozilla любит Rust

Трудно поверить, что прошло почти семь лет с тех пор как Mozilla Research впервые начала спонсировать разработку Rust — системного языка программирования, нацеленного на безопасную работу с памятью, скорость и параллельное выполнение кода. В то время это был не более чем амбициозный исследовательский эксперимент, вокруг которого образовалось небольшое, но преданное сообщество. Удивительно, что несмотря на долгую историю изобретений и открытий, Rust сохранил свой ключевые принципы. Изначально разработчики хотели создать безопасную альтернативу C++, повысить эффективность системного программирования, защитить критическое программное обеспечение от эксплоитов памяти, упростить работу с параллельными алгоритмами — вот почему Mozilla поддержала проект Rust и, в конечном счёте, начала использовать Rust в стабильной версии браузера.

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

Так что я рад отметить важную веху: в Firefox 48 Mozilla включит первый компонент на Rust для всех десктопных платформ, а скоро появится и поддержка Android.

Внедрение Rust в медиастек Mozilla

Одной из первых использовать Rust в Mozilla начала команда Media Playback. Сейчас вполне очевидно, что медиа является ключевым элементом работы в современном вебе. Что может быть не так очевидно для не-параноиков, так это что каждый раз, когда запускается безобидное, на первый взгляд, видео (скажем, как хамелеончик лопает пузыри), браузер считывает данные в сложном формате и созданные кем-то, кого вы не знаете и кому не доверяете. Как выясняется, с помощью медиаформатов можно манипулировать декодерами и вытаскивать неприятные уязвимости в безопасности. Они эксплуатируют баги в механизме управления памятью, которые реализован в коде веб-браузеров.

По этой причине безопасный для памяти язык программирования вроде Rust становится неотделимым дополнением в наборе инструментов Mozilla для защиты от потенциально вредоносного медийного контента в вебе. По этой причине, Ральф Жиль (Ralph Giles) и Мэтью Греган (Matthew Gregan) разработали в Mozilla первый медиапарсер на Rust. И я рад сообщить, что их код станет первым компонентом на Rust, который войдёт в состав Firefox. Это реальное достижение также для сообщества Rust: код Rust будет работать на сотнях миллионов компьютеров у пользователей Firefox. Наши предварительные исследования показывают, что компонент на Rust отлично проявляет себя и не уступает оригинальному компоненту на C++, место которого он займёт — но теперь реализован на безопасном для памяти языке программирования.

Код Rust включен в Firefox 48 - 2
Телеметрия Firefox не показывает ни одной проблемы за более чем миллиард запусков нового кода на Rust

Ещё больше впереди!

Многие люди заслужили огромную благодарность за помощь. Ральф Жиль и Мэтью Греган реализовали компонент, а Натан Фройд (Nathan Froyd), Ник Нетеркот (Nick Nethercote), Тед Мильчарек (Ted Mielczarek), Грегори Шорц (Gregory Szorc) и Алекс Кричтон (Alex Crichton) способствовали интеграции Rust в билд Firefox и в его инструментальную систему, а также обеспечили его поддержку на всех платформах.

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

Видеть код Rust в стабильной версии браузера Firefox — словно завершение длинного путешествия. Но это только первый шаг для Mozilla. Следите за новостями!

Об авторе: Дейв Херман (Dave Herman) — главный научный сотрудник и директор по стратегии Mozilla Research

Автор: alizar

Источник

Поделиться новостью

* - обязательные к заполнению поля