Популярные браузеры на основе движка Firefox


Ликбез по браузерам для Windows в 2020

Доброго времени суток, Хабр! В очередной раз читая комментарии, наткнулся на мысль о том, что далеко не все понимают, как обстоит ситуация с браузерами для Windows на данный момент. От чего хотелось бы провести небольшой обзор текущего положения. Ну, и сразу к делу!

Браузерные движки

Браузер — программа не простая, это целый набор компонентов, взаимодействующих между собой. Для краткого обзора потребуются всего два компонента из множества — движок отрисовки содержимого и движок исполнения JavaScript.

Существующие движки отрисовки содержимого

  • Trident (так же известный как MSHTML) — движок, ранее разрабатываемый Microsoft для браузера Internet Explorer;
  • EdgeHTML — преемник Trident, ранее разрабатываемый Microsoft для браузера Legacy Edge (ранее просто Edge);
  • WebKit — движок, разрабатываемый Apple для браузера Safari;
  • Blink — преемник WebKit, разрабатываемый Google для браузера Chrome;
  • Gecko — движок, разрабатываемый Mozilla для браузера Firefox;
  • Servo — исследовательский проект Mozilla, некоторые технологии со временем перетекают в Gecko.

Существующие движки исполнения JavaScript

  • Chakra JScript — движок JS, ранее разрабатываемый Microsoft для браузера Internet Explorer;
  • Chakra JavaScript — преемник Chakra JScript, ранее разрабатываемый Microsoft для браузера Legacy Edge;
  • Nitro — движок JS, разрабатываемый Apple для браузера Safari;
  • V8 — движок JS, разрабатываемый Google для браузера Chrome;
  • SpiderMonkey — движок JS, разрабатываемый Mozilla для браузера Firefox.

И тут вроде бы очевидно, какие браузеры какие движки используют, но Microsoft внёс не много путаницы в понимание данной темы, поэтому рассмотрим браузеры отдельно.

Браузеры

Chromium

Chromium — это open-source ответвление браузера Chrome. Браузеры на основе Chromium составляют большую часть из всех используемых браузеров на планете Земля.

Обычно, браузеры на базе Chromium между собой отличаются только визуально, ведь у всех под капотом движки Blink и V8, хотя, какие-то компании пытаются привнести больше функционала в браузер, чем имеется.

ИМХО

Это в конечном итоге встанет разработчикам браузеров боком, потому что в любой момент главный разработчик Chromium — Google может вставить палки в колёса разработчикам модификаций.

Всех браузеров на основе Chromium подсчитать одному человеку вряд ли под силу, поэтому приведу список только тех, что помню:

  • Chrome — в представлении не нуждается, браузер от Google;
  • Chr Edge — новый браузер от Microsoft со старым названием. Поговаривают, отличается большей производительностью от Chrome. С некоторых пор предустанавливается в систему;
  • Brave — браузер с повышенной безопасностью настолько, что приватный режим использует Tor;
  • Яндекс.Браузер, Opera, Vivaldi, тысячи их.

Firefox

Firefox использует движки Gecko и SpiderMonkey для своей работы. Имеет небольшое количество базирующихся на Firefox браузеров, но самый известный — Tor Browser. Является единственным рубежом до полного перехода интернета на браузеры на основе Chromium.

Internet Explorer

Это любимая всеми утилита для скачивания браузеров. Как и Chrome — не нуждается в представлении. До 11 версии использовал движки Trident и Chakra JScript. В 11 версии, за исключением режима совместимости, стал использовать движки Trident и Chakra JavaScript. Этот браузер ещё долго будет использоваться для всякого рода систем видеонаблюдения, поскольку имеет, почему-то, популярный в узких кругах API для расширений. В Windows 8 и Windows 8.1 имел особую модификацию движка Trident на базе WinRT для Metro режима.

(Legacy) Edge

Браузер, начавший своё существование с кодовым названием Project Spartan, являлся новым браузером от Microsoft в 2015 году, использующим движки EdgeHTML и Chakra JavaScript. Конечной целью проекта была полная совместимость с сайтами, отлично работающими в Chrome. В итоге — получилось нечто своеобразное, но, очевидно, не выжившее под давлением Google.

Safari

Safari? А нет его больше, этого вашего Safari, кончился.

Нецелевое использование браузеров

Вроде бы браузеры — законченный продукт, ни добавить ни отнять. Однако, они используются в разного рода других приложениях. Причины в следующем (в порядке убывания значимости):

  • П р ограммистов на JS нечем занять;
  • На JS+HTML новичкам проще программировать;
  • Кроссплатформенность;
  • Требуется возможность отображать веб-страницы.

Приведу примеры подобного использования:

Chromium

Нынешние браузеры настолько сложны, что одному человеку создать собственный браузер не под силу (либо это должен быть гений). Они по сложности сравнимы с операционными системами! А, постойте, вот и первый кандидат на нецелевое использование — Chrome OS. Да, весь пользовательский интерфейс — просто модифицированный Chromium.
Однако, помимо этого, в виде CEF (Chromium Embedded Framework), Chromium используется в:

  • Игровые платформы: Steam, Epic Games Store, Battle.Net и другие;
  • Игры: GTA V, все игры от Blizzard, DOTA 2, CS GO и множество других;
  • Редакторы кода: Atom, VS Code, Visual Studio Installer(. );
  • Программы для общения: Skype, Viber, WhatsApp, Discord, Slack и множество других;
  • Другие программы: balenaEtcher, draw.io и великое множество других.

Internet Explorer

Почти любое Win32 приложение, умеющее отображать WEB-страницы и при этом в распакованном виде занимающее меньше 60 мегабайт использует внутри Internet Explorer. Кстати, это касается не только маленьких по размеру приложений, например, Visual Studio использует Internet Explorer для отображения WEB-страниц, когда это требуется в работе IDE. Ещё существуют HTA приложения — древний предшественник CEF на базе Internet Explorer. И ведь до сих пор работает.

(Legacy) Edge

Новым приложениям — новые движки! Любое UWP приложение, использующее внутри отображение WEB-страниц работает на базе Edge. Не то, чтобы Microsoft запрещали использовать что-то другое, но никто просто и не старался. Так же, пока что, в предварительных сборках Windows новая клавиатура с GIF панелью тоже использует Edge для рендеринга. В будущих версиях, полагаю, перейдут на Chr Edge.

Большая картинка с клавиатурой

Производительность

Постойте, столько приложений, а что там с производительностью? Лично я — не специалист в оценке производительности, но хочу поделится с вами некоторыми занимательными фактами.

Новые статьи:  Включение блокировки рекламы в Яндекс.Браузере

Prefetcher

В Windows есть такая штука — Prefetcher. Она занимается подгрузкой программ в ОЗУ при старте ОС и на протяжении её работы. Штука эта достаточно умная, и она анализирует чаще всего запускаемые программы, чтобы в дальнейшем их подгружать.

Как это связано с браузерами? Идея в том, что это может смазать первый пользовательский опыт с другим браузером, например, пользуясь постоянно Chrome, имеете установленную версию Firefox. При запуске Firefox будет вести себя крайне медленно — медленнее, чем ваш основной браузер. Всё потому что он запылился в глазах Prefetcher. В конечном итоге всё будет работать быстро, но первое впечатление после долгого неиспользования будет ужасным. Особенно это касается пользователей с HDD или малым количеством ОЗУ.

Области распределённой памяти

Да, звучит не очень. Но суть, в данном случае, простая — если одна единица исполняемого кода требуется к исполнению больше одного раза, будь то exe или dll , то в память она загрузится лишь один раз. Поясню: если два различных приложения в ходе своей работы загрузят одну и ту же библиотеку, например, edgehtml.dll , то этот файл будет загружен в ОЗУ компьютера на самом деле только один раз, хотя, казалось бы, потребуется два или больше раз. Таким образом ОС экономит нам оперативную память.

Движки нормального человека

К чему это я? А вот дело в том, что в отличии от других браузеров, Internet Explorer и (Legacy) Edge предустановлены в систему, а их движки хранятся в папке System32 . Это, вкупе с API для разработки приложений, означает, что все приложения в системе, использующие данные движки будут загружать их в память только однажды. И этот принцип распространяется на все приложения.

В дополнение про UWP

У людей часто возникают проблемы с UWP приложениями, а точнее — с их скоростью запуска. Всё дело в WinRT — огромном наборе библиотек, при помощи которых UWP приложение взаимодействует с ОС. Если не использовать UWP приложения часто, то этот набор библиотек не будет прогружен в памяти полностью, и придётся ожидать окончания этого процесса перед использованием приложения. Но забавный факт — используя два и более UWP приложения время их старта и общая производительность резко увеличиваются и часто даже превосходят Win32 программы. Исключением из этого является приложение «Фотографии» — тут отдельная история, покрытая туманом.

Движки курильщика

А вот с приложениями (в том числе и браузерами) на основе Chromium это так не работает. Каждое приложение комплектует с собой собственную сборку библиотеки CEF, что, кроме раздувания размера приложения, не позволяет операционной системе иметь только одну копию dll в ОЗУ. Итого это сильно замедляет производительность при использовании множества подобных приложений. Помимо того, сам размер CEF довольно удручающий.

Microsoft Store

У многих возникает вопрос — почему в Microsoft Store нет ни одного браузера(не считая нескольких кривых поделок на EdgeHTML)? Ответ, на самом деле, прост — все браузеры, включая Chr Edge имеют собственную систему обновления, что прямо запрещено правилами Microsoft Store. В остальном никто никого не ограничивает.

Как удалить новый Microsoft Edge

Это не очень сложно. Для начала требуется найти папку с Microsoft Edge, она расположена по пути:
C:\Program Files (x86)\Microsoft\Edge\Application
Далее заходим в любую версию Edge и переходим в папку Installer . Полный путь может выглядеть следующим образом:
C:\Program Files (x86)\Microsoft\Edge\Application\83.0.478.58\Installer
Далее необходимо открыть командную строку от имени администратора в данной папке и выполнить следующую команду:
setup.exe —uninstall —system-level —verbose-logging —force-uninstall
Готово! Через несколько секунд этот браузер исчезнет из системы. Но при следующем же обновлении он появится снова, будте бдительны.

Заключение

Пожалуй, эта статья получилась даже больше, чем я предполагал. В любом случае, какой браузер использовать — выбор ваш, но, зато, вы теперь знаете чуточку больше. Всем спасибо.

P. S.

Администраторы Хабра, пожалуйста, почините HabraStorage в Legacy Edge! Совсем не дело.

Самый быстрый браузер

В июле 2023 года произошло важное событие — Firefox превзошёл Chrome в популярном тесте Speedometer, который измеряет скорость работы браузеров.

Были времена, когда Firefox считался медленным и неповоротливым браузером, потребляющим много памяти и в целом «тормозным». Когда появился Chrome, то некоторые пользователи перешли на него из-за лучшей производительности. Сейчас ситуация кардинально меняется.

Как Mozilla сумела добиться такого результата?

Оптимизация скорости

Разработчики Firefox долго и упорно работали над оптимизацией и устранением багов — и в конце концов эта работа дала эффект. Была установлена чёткая программа действий с измеримыми результатами.

В первую очередь Mozilla разработала и внедрила фреймворк Raptor для проведения автоматических тестов, чтобы измерять производительность своих продуктов — и интегрировала его в CI, то есть в стандартный процесс разработки и выпуска новых версий ПО. Другими словами, новые версии программ не выпускаются без предварительного бенчмарка. Автоматизацией тестов занимается отдельная группа девопсов PerfTest Team под руководством «шерифа по производительности» Дейва Ханта, опытного специалиста по автоматизации.

Два крупнейших скачка в производительности Firefox в марте-апреле 2023 года на графике связаны с двумя конкретными исправлениями: изменение обработки аттрибута autofocus в соответствии со спецификациями и динамическая настройка максимального размера «грязных» страниц в аллокаторе памяти mozjemalloc с увеличением этого размера для процессов с фоновым контентом.

В принципе, можно нажать на каждую точку на графике — и посмотреть, что изменилось с этим коммитом. Например, внезапные скачки в производительности Chrome связывают с изменениями в инфраструктуре тестирования.

Результаты Firefox и Chrome в разных тестах на всех платформах в более наглядном виде показаны здесь:

Новые статьи:  Браузеры: подборка на 2023 г. На что можно обратить внимание

Как видим, Speedometer — не единственный бенчмарк, в котором Firefox удалось опередить конкурента. Хотя по многим другим тестам впереди Chrome.

Фреймворк Raptor запускается в среде Browsertime (Node.js, Selenium WebDriver) на Firefox Desktop, Firefox Android GeckoView, Fenix, Chromium и Chrome. Судя по списку программ, Mozilla выбрала в качестве ориентира именно Chrome. Поэтому мы не можем сравнить их с остальными браузерами в данной среде. Только друг с другом.

Raptor поддерживает три типа тестов:

  1. тесты на загрузку страниц;
  2. стандартные бенчмарки;
  3. «сценарные» тесты, например, измерение энергопотребления, процессора и памяти.

Список сайтов для измерения скорости загрузки страниц (десктопные тесты)

Настройки одного из тестов:

  • alert on: fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
  • alert threshold: 2.0
  • apps: firefox, chrome, chromium, safari, custom-car
  • browser cycles: 25
  • expected: pass
  • gecko profile entries: 14000000
  • gecko profile interval: 1
  • lower is better: true
  • page cycles: 25
  • page timeout: 60000
  • playback: mitmproxy
  • playback pageset manifest: mitm7-linux-firefox-youtube.manifest
  • playback version: 8.1.1
  • secondary url: https://www.youtube.com/watch?v=JrdEMERq8MA
  • test url: https://www.youtube.com
  • type: pageload
  • unit: ms
  • use live sites: false
  • Test Task:

В целом список тестов Raptor кажется максимально полным из того, что можно придумать для такой задачи. Это более объективная метрика, чем любой одиночный бенчмарк.

Примечание. В отдельных независимых тестах лучший результат по отдельным бенчмаркам могут показывать Edge, Safari или Opera. Так что звание «самого быстрого браузера» нельзя никому присудить однозначно, всё зависит от конкретного бенчмарка, версии браузера, включённых опций компиляции и флагов (настроек) браузера, а также платформы, на которой проводится тестирование (опции GPU-рендеринга, аппаратные функции CPU, настройки и версия ОС). Оптимальный вариант для пользователей — установить все интересующие браузеры на своём компьютере, запустить тесты на официальных сайтах (ссылки ниже) — и сравнить результаты в своей конкретной конфигурации. Вероятно, на macOS естественное преимущество получит Safari, а на Windows — Edge. Поскольку браузер и ОС в этих случаях разрабатывает одна компания (Apple и Microsoft, соответственно), она может применить некие общие системные оптимизации.

Chrome не сдаётся

Производительность можно измерять по-разному. В данный момент есть три основных бенчмарка для браузеров: Speedometer, MotionMark и JetStream.

В июне 2023 года разработчики Chrome заявили о достижении максимальных для себя результатов во всех трёх тестах. По их словам, чуть более чем за год результат Speedometer вырос с 300 (версия Chrome 101) до 491 (Chrome 116.0.5803.2 на M2 Macbook Air с включённым компилятором Maglev при сборке браузера).

Результат теста графической подсистемы MotionMark почти утроился с начала 2023 года до 4821,30 (Chrome M115.0.5773.4 на 13” M2 Macbook Pro).

Бенчмарк JetStream (JavaScript и WebAssembly, продвинутые веб-приложения) благодаря внедрению Maglev показал рост до 330,939 (Chrome 116.0.5803.2 на M2 Macbook Air с Maglev). Каков был прежний результат, не сообщается.

Обратим внимание, что тесты Google проводились на сборке Chrome с новым промежуточным JIT-компилятором Maglev, который «позволяет генерировать эффективный машинный код для всех релевантных функций в течение сотых долей секунды». По внутренним тестам, Maglev для движка V8 улучшил результат Jetstream на 7,5%, а Speedometer — на 5%.

На первый взгляд, результаты Google не очень сходятся с графиками Raptor, как будто они используют разные версии браузеров и бенчмарков (например, Speedometer 3 сильно отличается от Speedometer 2). Вопрос в том, какие тесты более соответствуют фактическому опыту пользователей.

Так или иначе, но соревнование разработчиков Firefox и Chrome на поле оптимизации можно только приветствовать.

Риск монополии

Некоторые специалисты считают, что нельзя допустить монополии Google Chrome на браузерном рынке на фоне того, часто всё больше сторонних браузеров переходят на движок и кодовую базу Chrome. В то же время аудитория Firefox продолжает снижаться. По статистике Mozilla, аудитория Firefox сократилась на 60 млн за четыре года, что составляет 24% аудитории (с пиковых 252 млн в 2019 году до 191 млн в июле 2023-го).

В такой ситуации появляются риски, что веб-сайты начнут разрабатывать в соответствии со стандартами, которые поддерживаются в Chrome, а не по официальным стандартам W3C. Недавняя история с удалением формата JPEG-XL из Chrome в октябре 2022 года стала хорошим индикатором нынешнего положения дел. Если бы не неожиданная поддержка со стороны Apple, этот качественный формат сжатия графики рисковал забвением. Однако на конференции WWDC23 компания Apple объявила о поддержке JPEG-XL во всех своих продуктах, включая Safari 17, новые версии iOS, iPadOS, macOS, watchOS и visionOS. Разработчики JPEG-XL с иронией восприняли тот факт, что первым браузером с поддержкой JPEG-XL стал Safari. Кто мог такое представить для формата, созданного при участии Google?

Монополия реально угрожает разработке новых форматов и перспективных технологий, которые могут оказаться на обочине истории по прихоти монополиста. Поэтому конкуренция со стороны Firefox очень важна для рынка браузеров, ведь Gecko по сути остался единственным независимым движком для рендеринга веб-страниц, не считая экспериментальных проектов Quantum и Servo от той же Mozilla.

  • Блог компании GlobalSign
  • Firefox
  • Тестирование IT-систем
  • Браузеры
  • Софт

Я попробовала Firefox, и теперь не могу вернуться на Chrome

Нам кажется, автор довольно ясно и лаконично сформулировала основные преимущества Firefox. Добавим только, что этот браузер — по сути единственная оставшаяся альтернатива для монополии Google Chrome (и движка Chromium)

2008-й год. Я два года счастливо сидела на Firefox после болезненного, но неизбежного расставания с Internet Explorer. Но по учебной и профессиональной необходимости пришлось перейти на Chrome.

В основном, Chrome меня вполне устраивал. Он представил некоторые уникальные фичи, которых у Firefox не было. Например, синхронизация вкладок между устройствами или сохранение всех закладок в одном профиле, который действует на любых компьютерах.

Новые статьи:  Настройка Рамблер почты на iPhone

Но с годами Google стал более навязчивым. Как и многие другие крупные корпорации, Google начал отслеживать пользователей, собирать данные и создавать подробные профили, чтобы продавать эти досье рекламодателям и маркетинговым фирмам. Очень прибыльный бизнес для них. К сожалению, он на корню пресекает попытки людей сохранить свою приватность и конфиденциальность. Люди превращаются в товар, ресурс для извлечения прибыли и политических опытов.

Рекламная сущность Google — это первая проблема браузера Chrome.

Вторая проблема в том, что доля Chrome значительно выросла. В 2008 году, когда я впервые запустила новенький браузер, Google и Mozilla шли ноздря в ноздрю. Но теперь большинство других браузеров в той или иной форме используют Chromium, так что отставание Mozilla выросло астрономически.

Но я пишу эту статью, чтобы сказать — так не должно быть. Уже нет никаких причин переходить на Chrome, как 14 лет назад. Совсем наоборот, сейчас скорее время делать обратный ход. В 2019 году я вернулась на Firefox и обнаружила, что это невероятный браузер, в котором есть все функции Chrome, и даже больше.

Браузер вас не отслеживает, так что AdBlock действительно имеет смысл

Для Chrome существует множество блокировщиков, которые не дают вашим данным попасть в руки маркетинговых компаний, составляющих подробные профили на основе вашей активности в интернете. Но сам браузер Chrome делает то же самое! И ограничить его доступ невозможно. Ходят разговоры, что в 2023 году Google планирует полностью сломать эти блокировщики рекламы с помощью масштабного обновления, что, мягко говоря, пугает.

Окончательный переход на Manifest V3 состоится в 2023 году. С 17 января 2022 года новые расширения на Manifest V2 перестали пускать в каталог расширений Chrome, а с июня 2023 года они перестанут работать. — прим. пер.

У Mozilla нет ни одной из этих проблем. Браузер ни в коем случае не отслеживает вас, у него есть встроенная защита от куков. Более того, он даже предлагает услуги VPN по низкой цене.

Вы можете поставить AdBlock, uBlock Origin или любое другой блокировщик и быть уверенным, что Firefox не нарушит вашу конфиденциальность.

Браузер Firefox — ваш друг. В отличие от Chrome.

Множество расширений для защиты приватности

Для Chrome существует много расширений, но для Mozilla Firefox их гораздо больше! И значительная часть посвящена блокировке огромного количества трекеров от сторонних сайтов. В отличие от Google, организация Mozilla фанатично борется с трекерами — настолько, что посторонние лица (будь то ваш работодатель или учебное заведение) даже при желании не смогут поставить в браузер отслеживающие расширения и программы.

Вот несколько расширений Firefox, которые жизненно необходимы для наилучшей работы с браузером, по моему скромному мнению:

  • uBlock Origin — блокировщик рекламы, который меньше нагружает CPU и в целом эффективнее, чем AdBlock
  • Facebook Container — не позволяет Facebook отслеживать вас на разных сайтах
  • Google Container — не позволяет Google отслеживать вас на разных сайтах
  • Multi-Account Container — не позволяет веб-сайтам взаимодействовать друг с другом и таким образом отслеживать вас. Все они помещаются в отдельные контейнеры

В августе 2021 года Firefox первым среди всех браузеров реализовал поддержку Enhanced Cookie Clearing как часть общей защиты Total Cookie Protection — прим. пер.

Вы можете сохранять профили и переносить закладки, а также синхронизировать вкладки

Когда я перешла на Chrome, одной из самых удобных функций стала возможность синхронизировать и открывать одни и те же вкладки на разных устройствах. Эта функция оказалась незаменимой в колледже, но особенно когда я стала профессионально заниматься игровой журналистикой. Кроме того, сохранение закладок жизненно важно, чтобы не потерять к ним доступ в случае поломки компьютера, что, по иронии судьбы, произошло, когда сломался мой ноутбук и я потеряла все закладки Firefox.

Но теперь всё это есть в Firefox, и он невероятно прост в использовании. Сам браузер сохраняет все закладки и настройки под одним профилем, который можно перенести на несколько компьютеров и даже на мобильную версию под Android/iOS. Профиль синхронизирует вкладки между всеми устройствами и позволяет открывать их в любом месте. Вы даже можете отправлять вкладки непосредственно с одного устройства на другое. Они там мгновенно открываются, без лишних телодвижений. Все закладки сохраняются в профиле, что даёт полный доступ к ним на любом устройстве, как только вы войдёте в систему.

Он не жрёт ресурсы, как Chrome

Даже самые стойкие пользователи Chrome жалуются, что браузер пожирает CPU и оперативную память как Снорлакс за шведским столом. Конечно, для большинства современных компьютеров это не проблема, но для ноутбуков или других устройств с небольшим объёмом RAM неприятно, когда браузер постоянно отъедает почти половину ресурсов.

Именно поэтому Mozilla Firefox — как глоток свежего воздуха. Он гораздо меньше нагружает CPU и занимает меньше памяти, обеспечивая при этом быструю работу. Поэтому не стесняйтесь открывать в Firefox любое количество вкладок — компьютер почти не заметит эффекта.

Примечание. Недавно Mozilla провела ряд серьёзных оптимизаций, устранив утечки и заметно снизив потребление оперативной памяти в Firefox.

  • Блог компании Дата-центр «Миран»
  • Firefox
  • Google Chrome
  • Расширения для браузеров
  • Браузеры

Оставьте комментарий