进程定义:CPU资源分配的最小单位
线程定义:CPU调度的最小单位
浏览器是多进程的,每打开一个tab页就会生产一个新进程。
Google浏览有优化机制,多个进程可能会被合并为一个
浏览器五大进程(2和5可以有多个)
1.Browser进程
a.界面显示,用户交互
b.页面管理:其他页面(进程)的创建与销毁
c.Renderer进程中的内存中的Bitmap,绘制到用户界面
d.网络资源的管理,如下载
2.Renderer进程
a.页面渲染
b.脚本执行
c.事件处理
等,内部是多线程的
3.GPU进程
a.3D绘制,具体的有transform、opacity、filter
等
4.网络进程
a.从Browser进程中独立出来,网络资源的管理,如下载
5.第三方插件
a.每一类插件对应一个,当插件被使用时创建
多进程的优势:
1.避免单个page crash→单页面奔溃,浏览器正常
2.避免第三方插件crash→插件奔溃,浏览器正常
3.充分利用多核
4.方便使用沙盒模型隔离插件等进程