Результат компоновки интерфейса и обработки контента формируется в виде слоёв, которые определяют содержимое окна. Например, панели, меню и результат обработки контента определяются в отдельных слоях. Из разных процессов слои передаются в систему отрисовки, которая занимается сведением (композитингом) серии слоёв в единое изображение, определяющее итоговое содержимое окна браузера.
Разделение компонентов для обработки контента и формирования интерфейса в разные процессы позволяет заметно ускорить работу браузера на многоядерных системах за счёт организации параллельного выполнения не блокирующих друг друга операций. Потребление памяти в многопроцессном режиме мало отличается от обычного однопроцессного режима, разница составляет около 10 Мб, при этом планируемые оптимизации позволят снизить этот показатель.
Проект по переводу Fierfox на многопроцессную архитектуру, развиваемый под кодовым именем Electrolysis, стартовал в 2009 году, но в 2011 году был приостановлен из-за наличия более простых путей повышения отзывчивости интерфейса, не требующих значительной переработки архитектуры браузера (например, оптимизация работы сборщика мусора, дробление длительно выполняемых операций или их выделение в отдельный поток, использования асинхронного ввода/вывода и вынос выполнения плагинов в отдельные процессы). Спустя два года, когда более простые варианты оптимизаций уже воплощены в жизнь, разработчики вернулись к идее обработки контента и пользовательского интерфейса в разных процессах.
Новый режим уже доступен в ночных сборках Firefox и может быть активирован через установку переменной browser.tabs.remote в настройках about:config. Разработка пока носит экспериментальный характер и не позволяет использовать некоторые возможности браузера, такие как средства для web-разработчиков, вывод на печать и сохранение страниц. Дополнения в новом режиме ведут себя по-разному, некоторые работают нормально, а с некоторыми возникают проблемы. В случае краха процесса, обрабатывающего содержимое вкладок, процесс, отвечающий за формирование интерфейса, продолжает работу и выводит предупреждение о крахе.
Раздельная обработка вкладок в разных процессах пока не поддерживается, в текущий момент возможна работа только одного процесса обработки контента. В будущем планируется обеспечение поддержки работы нескольких процессов обработки контента (отдельные обработчики для каждой вкладки).
