浏览器架构组成与运行方式

2026-01-20 17:05:55 3阅读

渲染进程(Renderer process)

渲染进程负责站点的渲染,其中也包括JavaScript代码的运行,web worker的管理等。

插件进程(Plugin process)

插件进程负责为浏览器提供各种额外的插件功能,例如flash。

GPU进程(GPU process)

GPU进程负责提供成像的功能。

当然还有其他像扩展进程或工具进程等其他进程,可以在Chrome的Task Manager面板中查看,面板中列出了运行的进程和其占用的CPU、内存情况。

多进程架构的好处

当我们访问一个站点时,渲染进程会负责运行站点的代码,渲染站点的页面,同时响应用户的交互动作,当我们在Chrome中打开三个页签同时访问三个站点时,如果其中一个没有响应,我们可以关闭它然后使用其他的页签,这是因为Chrome为每个站点创建一个独立的渲染进程,专门处理当前站点的渲染工作。如果所有的页面运行在同一个进程中,当有一个页面没有响应时,所有的页面就都卡住了。

浏览器是如何工作的

浏览器进程做为重要的进程负责大多数页签外部的工作,包括地址栏显示、网络请求、页签状态管理等。

不同的渲染进程负责不同的站点渲染工作,渲染进程间彼此独立。

渲染进程在渲染页面的过程中会通过浏览器进程获取站点资源,只有安全的资源才会被渲染进程接收到。

渲染进程中主线程负责除了图像生成外绝大多数工作,如何减少主线程上代码的运行是交互性能优化的关键。

渲染进程中的合成线程和栅格线程负责图像生成,利用分层技术可以优化图像生成的效率。

当用户与页面发生交互时,事件的传播途径从浏览器进程到渲染进程的合成线程再根据事件监听的区域决定是否要传递给渲染进程的主线程处理。

免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。