Blink — це рушій візуалізації браузера з відкритим вихідним кодом, розроблений Google як форк WebKit у 2013 році. Як основний рушій компонування Chrome, він відповідає за:

  1. Обробка DOM: Побудова об’єктної моделі документа (Document Object Model) з HTML
  2. Обчислення стилів: Перетворення CSS на об’єктну модель CSS (CSS Object Model)
  3. Компонування: Визначення положень та розмірів елементів
  4. Рендеринг (Малювання): Перетворення компонування в фактичні пікселі
  5. Композитинг: Оптимізація рендерингу за допомогою управління шарами

Ключові архітектурні компоненти:

  • Багатопроцесна архітектура (процеси рендерера)
  • Рендеринг iframe поза процесом
  • Ізоляція екземплярів різних сайтів

Основні рушії візуалізації в Інтернеті відрізняються архітектурою та підходом:

ОсобливістьBlinkWebKitGeckoServo
РозробникGoogleAppleMozillaMozilla
МоваC++C++C++Rust
Модель потоківMulti-processMulti-threadMulti-processMulti-thread
Підтримка CSSЕкспериментальнийСтабільнийПовнаЕкспериментальний
JavaScriptV8JavaScriptCoreSpiderMonkeySpiderMonkey
Використання GPUРозширенеПомірнеБазовеЕкспериментальне

На відміну від WebKit, який централізовано обробляє всі порти платформ, Blink делегує код, специфічний для платформи, окремим постачальникам.

Blink складається з кількох критично важливих підсистем:

  1. Завантаження документа
  • Парсер HTML
  • Сканер попереднього завантаження
  • Завантажувач ресурсів
  1. Стилі та компонування
  • Рушій стилів (будівник CSSOM)
  • Побудова дерева компонування
  • Інтерполяція властивостей CSS
  1. Графічний конвеєр
  • Дерево шарів для малювання
  • Композитинг з прискоренням GPU
  • Растеризація (Skia)
  1. Інтеграція JavaScript
  • Прив’язки DOM
  • Система подій
  • Рівень взаємодії з V8
  1. Веб-компоненти
  • Shadow DOM
  • Користувацькі елементи
  • HTML-шаблони

Як ядро рендерингу в браузерах на базі Chromium (Chrome, Edge, Opera):

  1. Межа безпеки: Працює в ізольованих процесах рендерера з пісочницею
  2. Центр продуктивності: Обробляє оптимізацію критичного шляху рендерингу
  3. Реалізація стандартів: Реалізує понад 1000 специфікацій веб-платформи
  4. Управління пам’яттю: Реалізує partition alloc для ефективності
  5. Експериментальні функції: Постачається з Origin Trials для нових API

Архітектура Blink дозволяє Chrome підтримувати понад 20 000 одночасних тестів CSS, зберігаючи при цьому продуктивність рендерингу на рівні 60 кадрів/с.


Вам також може сподобатися

Run multiple accounts without bans and blocks
Спробуйте безкоштовно

Захист безпеки кількох облікових записів, починаючи з FlashID

Завдяки нашій технології відбитків пальців, залишайтеся непоміченими.

Захист безпеки кількох облікових записів, починаючи з FlashID