跪拜 Guibai
← All articles
Frontend

Chromium Is Not a Kernel: Untangling Chrome's Open-Source Base

By 陆枫Larry ·
Read original on juejin.cn ↗ Google Translate ↗ Alt translation

Mislabeling Chromium as a "kernel" muddles debugging, performance work, and cross-browser testing. Knowing that Blink renders and V8 executes lets a developer trace layout bugs to the renderer and JS bottlenecks to the engine, and clarifies why Safari and Firefox need separate test coverage.

Summary

Chromium is Google's open-source browser project that supplies the entire multi-process architecture, network stack, storage, DevTools, and extension system — far more than a "kernel." Chrome, Edge, Brave, and Opera all build on this base, layering their own account systems, sync services, and UI. The actual rendering engine inside Chromium is Blink (forked from WebKit in 2013), and the JavaScript engine is V8. Calling Chromium a "kernel" conflates the whole car with its engine.

Safari runs on WebKit with JavaScriptCore, and Firefox uses Gecko with SpiderMonkey, placing them outside the Chromium/Blink camp. The lingering `-webkit-` CSS prefixes in Chrome are historical artifacts from Blink's WebKit lineage, not evidence of active WebKit use. Chrome's multi-process design isolates renderers, GPU, network, and extensions so a single tab crash rarely takes down the whole browser.

Front-end developers interact with Chromium subsystems daily through DevTools panels: Elements touches Blink and the DOM, Console hits V8, Network exercises Chromium's networking layer, and Application surfaces storage APIs like IndexedDB and Service Workers.

Takeaways
Chromium is a full browser project — windowing, tabs, multi-process architecture, networking, GPU, storage, DevTools, extensions, and the Blink and V8 engines.
Chrome equals Chromium plus Google's product layer: account sync, password manager, Safe Browsing, auto-update, and enterprise management.
Blink is the rendering engine that handles HTML, CSS, DOM, layout, paint, and compositing.
V8 is the JavaScript and WebAssembly execution engine.
Edge, Brave, and Opera share Chromium's base but swap in their own services and UI.
Safari uses WebKit and JavaScriptCore; Firefox uses Gecko and SpiderMonkey — neither belongs to the Chromium/Blink camp.
Chrome's `-webkit-` CSS prefixes are historical holdovers from Blink's 2013 fork of WebKit, not active WebKit usage.
Chrome is a multi-process browser: separate renderer, GPU, network, and extension processes isolate crashes.
DevTools panels map directly to Chromium subsystems — Elements to Blink/DOM, Console to V8, Network to the network stack, Application to storage APIs.
Conclusions

The "Chromium kernel" shorthand persists because it flattens a layered stack into a single marketing-friendly term, but it obscures the real division of labor that matters for performance and compatibility work.

Blink's WebKit lineage explains why `-webkit-` prefixes linger in Chrome a decade after the fork — browser vendors prioritize not breaking the web over cleaning up naming.

Chromium's multi-process architecture is a concrete stability guarantee: a crashed renderer doesn't drag down the browser process, which is why tab isolation feels seamless to users.

The browser-engine landscape has consolidated into three camps — Chromium/Blink, WebKit, and Gecko — meaning cross-browser testing can be scoped to one representative per camp rather than every branded browser.

Concepts & terms
Chromium
An open-source browser project initiated by Google in 2008 that provides the complete infrastructure for a modern browser — multi-process architecture, networking, GPU, storage, DevTools, extensions, and the Blink/V8 engines.
Blink
The web rendering engine inside Chromium, forked from WebKit in 2013. It parses HTML and CSS, builds the DOM and CSSOM, and handles layout, paint, and compositing to display pages on screen.
V8
The JavaScript and WebAssembly engine inside Chromium, responsible for parsing and executing JS code. It interacts heavily with Blink but is a separate subsystem.
WebKit
The rendering engine used by Safari, from which Blink was forked. It handles HTML/CSS/JS via its own JavaScriptCore engine and is not part of the Chromium ecosystem.
Gecko
Firefox's browser engine, which includes its own rendering and JavaScript (SpiderMonkey) components. It is independent of both Chromium/Blink and WebKit.
Multi-process browser architecture
A design where the browser UI, renderers, GPU, network, and extensions run in separate OS processes. A crash in one renderer process does not bring down the entire browser.
Source: juejin.cn ↗ Google Translate ↗ Backup ↗