码迷,mamicode.com
首页 > 系统相关 > 详细

浏览器包含哪些进程?

时间:2018-09-18 20:45:27      阅读:453      评论:0      收藏:0      [点我收藏+]

标签:作用   三方   lis   有一个   gpu   其他   render   模型   ash   

浏览器都包含哪些进程? 

知道了浏览器是多进程后,再来看看它到底包含哪些进程:(为了简化理解,仅列举主要进程)

  • Browser进程:浏览器的主进程(负责协调、主控),只有一个。作用有

    • 负责浏览器界面显示,与用户交互。如前进,后退等

    • 负责各个页面的管理,创建和销毁其他进程

    • 将Renderer进程得到的内存中的Bitmap,绘制到用户界面上

    • 网络资源的管理,下载等

  • 第三方插件进程:每种类型的插件对应一个进程,仅当使用该插件时才创建

  • GPU进程:最多一个,用于3D绘制等

  • 浏览器渲染进程(浏览器内核)(Renderer进程,内部是多线程的):默认每个Tab页面一个进程,互不影响。主要作用为

    • 页面渲染,脚本执行,事件处理等

 

强化记忆:在浏览器中打开一个网页相当于新起了一个进程(进程内有自己的多线程)

当然,浏览器有时会将多个进程合并(譬如打开多个空白标签页后,会发现多个空白标签页被合并成了一个进程);

 

相比于单进程浏览器,多进程有如下优点:

  • 避免单个page crash影响整个浏览器

  • 避免第三方插件crash影响整个浏览器

  • 多进程充分利用多核优势

  • 方便使用沙盒模型隔离插件等进程,提高浏览器稳定性

简单点理解:如果浏览器是单进程,那么某个Tab页崩溃了,就影响了整个浏览器,体验有多差;同理如果是单进程,插件崩溃了也会影响整个浏览器;而且多进程还有其它的诸多优势。。。

当然,内存等资源消耗也会更大,有点空间换时间的意思。

重点是浏览器内核(渲染进程)

浏览器包含哪些进程?

标签:作用   三方   lis   有一个   gpu   其他   render   模型   ash   

原文地址:https://www.cnblogs.com/crith/p/9670958.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!