多年疑惑终被解开:只打开一个网页,为何会占用这么多后台进程?

不少小伙伴在电脑应用的时候都会发现:通常自己只打开一个网页浏览 , 但是有的时候却感觉电脑运行不顺畅 , 打开资源管理器一看 , 处理器占用率不低 , 甚至会出现多个网页的线程……对于这个现象多年来也没人给一个合理的解释 , 不过最近微软终于主动现身解开了这个谜题 。
多年疑惑终被解开:只打开一个网页,为何会占用这么多后台进程?文章插图
很多人遇到这种情况 , 都会以为自己中了病毒 , 实际上并非如此 。 最近微软官方在一篇技术文章中 , 说明了其实这是现代浏览器采用了多线程的架构所建构 。 简单而言 , 当你运行一个浏览器的时候 , 这个浏览器其实并非是单进程软件 , 而是采用了多进程的架构 , 浏览器在运行的时候 , 会调动不同的资源 , 但是在任务管理器的后台上 , 都会显示为浏览器的图标 , 这就是浏览器为什么运行后会有多个后台进程的真正原因 。
多年疑惑终被解开:只打开一个网页,为何会占用这么多后台进程?文章插图
微软详细解释了自家Edge浏览器的多进程架构 , 同样的原理也适用于目前世界第一大浏览器谷歌的Chrome浏览器上 。 微软表示 , 浏览器采用多进程架构 , 浏览器在工作时主要被分为几个不同的行程 。
首先是浏览 , 这是主要的进程 , 负责视窗窗口和选项管理 , 控制浏览器的地址栏、前进/ 后退按钮等框架、且要处理网络请求和档案存取 。
多年疑惑终被解开:只打开一个网页,为何会占用这么多后台进程?文章插图
其次是计算 , 通过执行网站提供的程式码 , 来控制一个网页的呈现 , 能够处理超文字标记语言(HTML)、级联样式表(CSS)、JavaScript 和图像等内容 。
然后是GPU硬件加速的计算 , 这部分负责与图形硬体相关的所有任务 , 比如加速图形运算、并将处理器结果输出到显示器上 。 此外还有实用功能的进程 , 这部分负责了影片播放、网络服务、资料解码、以及集合管理 , 微软和谷歌的浏览器可借此控制、管理、协调系统资源 。
多年疑惑终被解开:只打开一个网页,为何会占用这么多后台进程?文章插图
【多年疑惑终被解开:只打开一个网页,为何会占用这么多后台进程?】此外进程中还有附加程式 , 这部分负责了对各个附加程式的管理 , 每个进程的资源使用情况、以及同主进程/计算进程的沟通 。 最后还有崩溃处理的进程 , 如果浏览器发生崩溃 , Crashpad Handler 能够捕获异常、并将错误报告传递 , 以查找问题和修复故障 。
必须要说的是 , 出于可靠性和安全性的考虑 , 即便是同一网页上的不同元素 , 也可能被分配了单独的进程 。 这样 , 即使是不慎被恶意软体利用了一个计算进程中的安全漏洞 , 也可避免其影响另一个行程 。
多年疑惑终被解开:只打开一个网页,为何会占用这么多后台进程?文章插图
所以综合来讲 , 浏览器虽然只是单独的一个软件 , 但要正常使用浏览器 , 那么就需要电脑分配多个进程给它 , 甚至有的时候在一些复杂的网页上 , 电脑的计算要耗费不少的性能 , 所以还会导致浏览器的占用率比较高 , 比如说一些可播放视频的网站 。 这也是为什么我们在后台看到一个浏览器会有这么多进程的原因 。
从好处上来看 , 多进程的浏览器提升了整体的安全性 , 防止了不同功能在同一个进程中的串访 , 而且即使出现了一些故障 , 比如说网页崩溃 , 也只会影响其中一个进程 , 对浏览器的稳定性也有很大的重要 。
通过这个释疑 , 以后大家打开浏览器如果再看到这么多的后台进程 , 大家也就不用担心了 , 这是浏览器努力为大家服务的表现 , 而且在大多数时候后台进程虽多 , 但是处理器资源占用并不高 , 除非你玩什么网页游戏或者通过网页观看视频!


推荐阅读