Mozilla и Samsung объявили о совместной работе над браузерным движком нового поколения

Материал из Викиновостей, свободного источника новостей

3 апреля 2013 года

Проект Mozilla объявил о кооперации с компанией Samsung в области разработки языка программирования Rust и развития экспериментального браузерного движка Servo. Ожидается, что подключение к разработке Samsung позволит ускорить стабилизацию языка Rust и существенно подтолкнёт развитие нового браузерного движка, на разработку которого теперь будет выделяться заметно больше ресурсов.

Движок Servo написан на языке Rust и отличается поддержкой многопоточного рендеринга web-страниц и возможностью параллельного выполнения операций с DOM (Document Object Model) в процессе обработки одной web-страницы. Текущий браузерный движок Firefox не может в полной мере задействовать потенциал современных многоядерных систем из-за изначального использования однопоточных схем обработки контента. В частности, при обработке одной страницы однопоточным остается связанный с DOM (Document Object Model) внутренний API, функции формирования содержимого окна, парсинга HTML и выполнения JavaScript. Использование Rust позволит разбить код DOM и рендеринга на более мелкие подзадачи, которые смогут выполняться параллельно и более эффективно использовать ресурсы многоядерных CPU. Кроме эффективного распараллеливания операций, используемые в Rust технологии безопасного программирования позволят кардинально поднять уровень безопасности, решив текущие проблемы с безопасностью браузеров, наглядно проявляющиеся в исправлении десятков уязвимостей в каждой новой версии.

Одновременно опубликован (Архивная копия от 12 ноября 2020 на Wayback Machine) релиз языка программирования Rust 0.6, сфокусированного на безопасной работе с памятью и обеспечении высокого параллелизма выполнения заданий (возможность порождать тысячи и даже миллионы подпроцессов). Исходные тексты проекта распространяются под лицензией MIT. Новая версия примечательна приведением к финальному виду синтаксиса и семантики языка, проведением чистки возможностей, которые не оправдали себя в процессе разработки. Также проведено заметное расширение базовой библиотеки. Подключившаяся к разработке компания Samsung реализовала поддержку архитектуры ARM и подготовила порт для платформы Android.

Rust является языком со строгой типизацией и по структуре напоминает C++, но существенно отличается в некоторых деталях реализации синтаксиса и семантики, а также примечателен ориентацией на блочную организацию структуры кода, которая позволяет реализовать задачи в виде легковесных сопрограмм. Автоматическое управление памятью избавляет разработчика от манипулирования указателями и защищает от возникающих из-за низкоуровневой работы с памятью проблем, таких как обращение к области памяти после её освобождения, разыменование нулевых указателей, выход за границы буфера и т.п. Rust поддерживает смесь императивных процедурных и объектно-ориентированных методов с такими парадигмами, как функциональное программирование и модель акторов, а также обобщённое программирование и метапрограммирование, в статических и динамических стилях.

Источники[править]

Creative Commons
Creative Commons
Эта статья содержит материалы из статьи «Mozilla и Samsung объявили о совместной работе над браузерным движком нового поколения», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии[править]

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.