浏览器内核不是一个“把 HTML 画出来”的库。页面从网络字节变成屏幕像素,要穿过进程隔离、文档解析、脚本执行、布局、绘制、光栅化和 GPU 合成;嵌入 Android 应用后,还要处理 Java/C++ 生命周期、IPC 和移动设备的内存上限。
下面不做概念速览,而是沿着真实调用链逐层拆开这些组件。
本文按真实调用链组织,右侧目录可以直接跳转到对应阶段。
第一部分:浏览器引擎基础原理
一、浏览器到底是什么?
1.1 从用户视角看
你在手机示例应用里输入 example.com,看到一个页面。这个过程中发生了什么?
sequenceDiagram
p...