Process or Threads Architecture

现在浏览器选择多进程架构 (内存空间独立)

- Browser Process - One (adress bar, back/forward stack / bookmarkds…file access)
- Render Process - each tab (try)
- GPU Process - One : Gpu task ,GPU 复制绘制整个电脑屏幕,浏览器区域可能只是其中一部分。各个进程将自己的显示数据提交给GPU帧缓冲,GPU 统一绘制整个屏幕。
- Utility Process - One
- Plugin Process - Chrome 插件
- Extesion Process
- …
渲染进程-设计为多进程的好处
- 只让当前活跃的窗口的进程工作,后台 tab 的渲染进程可以休眠。
- 进程的内存空间是独立的,方便实现数据安全隔离和沙盒。
- 如果到达系统资源上限,多个 tab 可
Because processes have their own private memory space, they often contain copies of common infrastructure (like V8 which is a Chrome's JavaScript engine). This means more memory usage as they can't be shared the way they would be if they were threads inside the same process
GPT 答: