深入了解现代浏览器(一)

https://developers.google.com/web/updates/2018/09/inside-browser-part1

在接下来的四篇博客系列中,会介绍 Chrome 浏览器,从高层架构到渲染管道的细节。

作为第一部分,将讨论核心计算术语,Chrome 的多进程架构。

CPU,GPU,内存和多进程架构

计算机的核心是 CPU 和 GPU

CPU

Central Processing Unit,简写 CPU。它是计算机的大脑。中央处理器的核心,可看成是一个办公室职员,能够次序处理接到的多种不同任务。在过去大多数 CPU 是单芯片。核心就像是在同一个芯片内的另一个 CPU。在现代硬件中,你能获得多个内核,给你的手机和电脑带来更强大的计算能力。

GPU

Graphics Processing Unit,简写 GPU。它是计算机的另一个部分。与 CPU 相比,GPU 更擅长通过多核在同一时间处理简单任务。顾名思义,它最初是用来处理图形的。这就是为什么在图形上下文中,“使用 GPU”或“ GPU 支持的”与快速渲染和平滑交互相关联。

当你在电脑或手机上启动一个应用程序时,CPU 和 GPU 是应用程序的驱动器。通常,应用程序使用操作系统提供的机制在 CPU 和 GPU 上运行。

在进程和线程上执行程序

一个进程可被描述为一个应用程序的执行程序;线程则在进程内部,可以执行进程中的部分程序。

当你打开一个应用,一个进程被创建出来。这个应用程序还可能创建线程来帮助它运行,但这并不是必须的。操作系统给了进程一块内存,应用程序的所有状态都被存放在这块私有内存空间中。当你关闭应用,进程会消失,操作系统会释放内存。

Layout of comment panels