webKit/webkit
9 articles
前置知识
- ›通用软件工程基础知识
- ›对浏览器工作原理的基本了解(解析、渲染、执行)
- ›能够阅读 C++ 文件和目录结构
01
深入 WebKit:架构概览与代码库导航
完整理解 WebKit 仓库的心智模型——六层构建栈、多进程安全架构,以及如何在这个规模最大的开源 C++ 代码库之一中找准方向。
02
架构概览与 WebKit 代码库导航
WebKit 世界的完整地图:分层依赖、多进程模型、双构建系统,以及在一个超过 500 万行代码的代码库中高效导航的实用技巧。
03
WTF 与内存管理:WebKit 的基础库
深入剖析 WTF(Web Template Framework)——这个自定义标准库替代方案,为整个 WebKit 提供了引用计数、弱指针、容器类以及经过安全加固的内存分配机制。
04
WTF、内存管理与核心原语
深入解析 WebKit 的基础库——自定义智能指针、protectedThis 模式、IsoHeap 安全加固,以及替代 STL 的容器类型。
05
WebCore:DOM、渲染管线与 Web IDL 绑定
从 HTML 解析到像素输出,完整追踪渲染管线的全流程,深入剖析 CSS 选择器 JIT 编译器,以及连接 JavaScript GC 与 C++ 引用计数的绑定层。
06
深入 JavaScriptCore:四层执行流水线
追踪一个 JavaScript 函数在 JavaScriptCore 四个执行层级中的完整旅程——从词法分析、字节码生成,到 LLInt 解释器、Baseline JIT、推测式 DFG 优化器,以及基于 B3 SSA 后端的 FTL 编译器。
07
多进程架构与 IPC 系统
WebKit2 如何通过一套基于代码生成的自定义 IPC 框架与代理/存根模式,将 Web 内容隔离到独立进程中运行。
08
JavaScriptCore:从解析器到优化 JIT 流水线
JavaScript 源代码如何通过 JSC 的四级编译体系、B3 编译器后端以及 Riptide 垃圾回收器,最终转化为经过优化的机器码。
09
构建系统、测试基础设施与贡献者工作流
一份实用指南:教你如何构建 WebKit、运行测试套件、理解统一源文件机制,以及通过 git-webkit 参与贡献。