Quantum Project от Mozilla - новый движок для Firefox
Несколько дней назад Mozilla представила свой новый проект «Quantum», цель которого - предоставить новый, заметно улучшенный движок для браузера Firefox. Он будет основан на Gecko и должен значительно улучшить производительность Gecko благодаря увеличенному параллелизм и параллелизм, уменьшенная задержка и лучшая надежность, обеспечиваемая языком кода Rust и его Особенности.
Quantum можно условно разделить на четыре отдельных проекта.
Проект Quantum CSS заменит CSS-движок Gecko на движок от Servo. Servo - это долгосрочная замена Gecko, основанная на современной высокопроизводительной параллельной архитектуре.
Проект Quantum DOM сделает Gecko более отзывчивым, особенно когда открыто много фоновых вкладок. Когда квантовая модель DOM завершена, код JS для разных вкладок (и, возможно, разных фреймов) будет выполняться в отдельных совместно запланированных потоках; код некоторых фоновых вкладок никогда не запустится.
Quantum Compositor переводит композитор Gecko в свой собственный процесс. Поскольку нестабильность графического драйвера является основным источником сбоев Firefox, мы ожидаем, что перенос кода, который взаимодействует с графическим процессором, в его собственный процесс, сделает Firefox более стабильным.
Наконец, Quantum Rendering заменит графическую подсистему Gecko на подсистему от Servo, которая называется WebRender. Servo использует графический процессор более эффективно, чем Gecko, управляя им больше как в игре, чем в веб-браузере.
Эти проекты находятся на разной стадии завершения. Quantum Compositor довольно далеко, а квантовый рендеринг только начинается. По поводу проектов по-прежнему существует значительная неопределенность.
Квантовый ДОМ
Quantum DOM будет запускать код JavaScript для разных вкладок в параллельных потоках, что позволит повысить производительность браузера при большом количестве открытых вкладок. Для переключения между потоками будет использоваться специальный планировщик, который плавно меняет контекст на лету. Будет сделано много улучшений, чтобы отловить тяжелые скрипты и бесконечные циклы в коде Javascript.
Квантовый поток
Quantum Flow является частью проекта Quantum, посвященного расширенной оптимизации пользовательского интерфейса браузера.
Посмотрите следующее видео:
Источник: Блог Билла МакКлоски.