微软在最新的一篇 Edge 博客文章中向用户阐述了为何 Edge 基本不会占用太多的电脑内存 / CPU 资源,为何在开启一个网页的情况下依然会有多个进程,或者说新 Edge 如何通过多进程架构变得更加高效。
微软指出,Edge 浏览器是使用多进程体系架构所构建的现代浏览器,这意味着浏览器会被拆分为不同的进程,保证了浏览器的安全性和可靠性。
IT之家了解到,微软今年向用户推出了基于 Chromium 的 Edge 浏览器,但为避免与 Chrome 一般疯狂耗用内存和 CPU 资源,微软采取了多种创新型特性以降低资源占用。
在该博客中,微软解释了 Edge 浏览器如何使用系统资源,并指出了多进程架构的一些典型优点。总的来说,Edge 浏览器进程分为浏览器进程、渲染器进程、GPU 进程、实用程序进程、crashpad handler 进程以及插件进程和扩展进程。
浏览器进程:这是主要进程,它可以帮助用户管理窗口和选项卡,并掌管浏览器框架,如地址栏和前进和后退按钮。它还将特殊访问权限分发到具体的实用程序进程,如网络请求和文件访问等。
渲染器进程:这些进程通过执行网站提供的代码来控制如何在选项卡中呈现网站。它们处理 HTML、CSS、JavaScript、图像等。每个渲染器进程的资源使用情况都取决于所托管的内容。
GPU 进程:此进程负责调度 GPU 并处理所有 GPU 任务。现代浏览器可使用 GPU 快速呈现网页。
实用程序进程:音频播放、网络服务、视频捕获、数据解码和收集管理器都由这些进程处理,因此微软 Edge 可以控制和审核这些资源的访问,并协调全局系统资源的使用。
崩溃程序处理进程:如果 Edge 崩溃,此进程将帮助用户获取崩溃报告并将其传输到 微软服务器便于开发者使用这些崩溃报告来查找和修复 bug。
插件进程和扩展进程:插件进程包含活动插件(如 Adobe Flash),扩展进程包含活动扩展。每个进程执行插件或扩展提供的代码。每个进程的资源使用情况因提供的代码而异。每个进程还具有允许插件或扩展与浏览器和渲染器进程通信的代码。
以下为实例:
▲ 图源微软,下同
演示者打开了四个标签页,开启了两个扩展,图中显示了单个浏览器窗口中的浏览器进程共有 9 个。
第二个例子类似,打开四个选项卡,启用了两个扩展,但具有多个视频资源,因此共有 14 个进程正在运行。