Firefox отказывается в обозримом будущем от перехода на многопроцессную модель
16 ноября 2011 года
Разработчики Mozilla приняли решение приостановить разработку проекта Electrolysis, в рамках которого велись работы по переводу Firefox на многопроцессную модель, при которой пользовательский интерфейс и обработка контента обрабатываются разными процессами. В качестве причины прекращения развития проекта в обозримом будущем называется необходимость внесения слишком значительных изменений на уровне архитектуры.
Перевод уже сложившегося продукта, изначально построенного на базе однопроцессной модели, на совершенно другую архитектуру требует вложения значительных ресурсов и привлечения к работе различных команд разработчиков, от разработчиков занимающихся интерфейсом и дополнениями до команд развивающих фронтэнд и ответственных за выпуск релизов. При этом нет гарантии, что после перехода на многопоцессную модель удастся обеспечить полную работоспособность всех уже созданных дополнений, без внесения в них изменений.
В то же время, отмечаются другие пути повышения отзывчивости интерфейса, реализация которых требует значительно меньших вложений и времени на реализацию. Именно таким проектам разработчики намерены уделить внимание в первую очередь. Среди достижимых малой кровью заметных улучшений отмечается переработка кода обслуживания внутренних баз данных, оптимизация работы сборщика мусора и вынос выполнения плагинов в отдельные процессы. По мнению разработчиков, уделив внимание подобным небольшим инициативам, за более короткое время можно достигнуть впечатляющих результатов в плане повышения отзывчивости работы браузера.
Тем не менее, кроме решения проблем с отзывчивостью интерфейса, многопроцессная архитектура обладает рядом дополнительных достоинств, которые проблематично реализовать в рамках однопроцессной модели. Например, можно упомянуть повышение производительности при работе на многоядерных процессорах; решение проблем с фрагментацией памяти и отдачей освобождённой памяти обратно операционной системе; обеспечение защиты от сбоев (в случае сбоя закроется лишь одна вкладка, не повлияв на работоспособность браузера в целом); повышение безопасности (связанный с текущей вкладкой код выполняется в своей "песочнице", независимо от обработчиков других сайтов; для эксплуатации уязвимостей требуется преодоление нескольких уровней изоляции).
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.