仅仅打开了1个页面,为什么有4个进程?

1. 历史浏览器是单进程的,会有很多问题:不稳定不流畅不安全,容易造成崩溃

2. 随着时代的发展,浏览器进入多进程时代

目前的多进程架构如下

  • 浏览器进程。主要负责界面显示、用户交互、子进程管理,同时提供存储等功能。
  • 渲染进程。核心任务是将 HTML、CSS 和 JavaScript 转换为用户可以与之交互的网页,排版引擎 Blink 和 JavaScript 引擎 V8 都是运行在该进程中,默认情况下,Chrome 会为每个 Tab 标签创建一个渲染进程。出于安全考虑,渲染进程都是运行在沙箱模式下。
  • GPU 进程。其实,Chrome 刚开始发布的时候是没有 GPU 进程的。而 GPU 的使用初衷是为了实现 3D CSS 的效果,只是随后网页、Chrome 的 UI 界面都选择采用 GPU 来绘制,这使得 GPU 成为浏览器普遍的需求。最后,Chrome 在其多进程架构上也引入了 GPU 进程。
  • 网络进程。主要负责页面的网络资源加载,之前是作为一个模块运行在浏览器进程里面的,直至最近才独立出来,成为一个单独的进程。
  • 插件进程。主要是负责插件的运行,因插件易崩溃,所以需要通过插件进程来隔离,以保证插件进程崩溃不会对浏览器和页面造成影响。

以上每个进程独立完成属于自己的任务,这样一个进程崩溃了,不会影响别的进程,从而提高了浏览器的稳定性,安全性

总结:

1. 浏览器一开始是单进程(js,渲染,插件等都共用这一个进程的内存,当其中某一个环节出现问题,会影响整个进程,使浏览器崩溃)

2. 为了解决上面的问题,浏览器引入了多进程,多进程有:浏览器进程,渲染进程,插件进程;

后来浏览器细化之后,又把浏览器进程分为了:浏览器主进程,GPU进程和网络进程;

3. 进程与进程之间通过IPC机制通讯

4. 单个进程中,有多个线程,例如渲染进程中,js就是一个单线程

5. 多进程的好处是,一个进程崩溃,不会影响到其他进程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值