Home

WebKit2

WebKit2 is the multi-process architecture of the WebKit browser engine, introduced by Apple to separate browser user interface from web content in order to improve stability, security, and performance. It represents a redesign of the original, single-process WebKit and is the architecture most commonly associated with modern WebKit-based applications, including Safari.

In WebKit2, the browser runs across multiple processes rather than a single one. A UI process hosts

WebKit2 is the framework used by Safari on macOS and iOS and has influenced how WebKit ports

Overall, WebKit2 represents the shift toward process-per-tab or process-per-content models within WebKit, aiming to enhance stability

the
browser
chrome,
menus,
and
window
management,
while
content
rendering
and
JavaScript
execution
occur
in
separate
content
processes.
This
separation
provides
sandboxing
and
crash
isolation:
if
a
web
page
crashes,
the
UI
process
can
continue
running.
Depending
on
the
port
and
configuration,
additional
processes
such
as
a
network
process
may
handle
network
requests
and
security
policies.
Communication
between
the
processes
uses
an
inter-process
communication
(IPC)
layer.
are
structured.
The
older,
single-process
model
of
WebKit
is
often
referred
to
as
WebKit1,
which
is
largely
deprecated
in
modern
deployments.
The
WebKit
project
maintains
the
WebKit2
architecture
as
its
current
multi-process
approach,
sometimes
referred
to
by
the
shorthand
WK2.
and
security
while
preserving
the
rendering
and
scripting
capabilities
of
the
WebKit
engine.