浅述浏览器多进程发展历程

本文介绍了浏览器从单进程到多进程的发展历程,阐述了多进程架构如何解决稳定性、流畅性和安全性问题。Chrome浏览器的多进程架构包括浏览器进程、渲染进程、插件进程和GPU进程,每个Tab页面拥有独立进程,提升性能并降低资源占用。为解决现有问题,Chrome团队引入面向服务的架构(SOA),通过服务化将不同功能模块解耦,实现更高效、灵活的系统设计。
摘要由CSDN通过智能技术生成

一、浏览器的多进程概括
要想搞明白什么是浏览器的多进程,首先得知道什么是进程。按照维基百科的说法:

进程是计算机中已运行程序的实体。进程是线程的容器,进程本身不运行。程序本身只是指令的集合,进程才是程序(指令)的真正运行。每个程序可以有多个进程,每个进程都有自己的资源。
简单来讲,进程就是CPU资源分配的最小单位,而线程则是CPU调度的最小单位。那什么又是单线程和多线程呢,我们来看一小段代码:

var a = 1 + 10086
var b = 100 * 2
var c = (20 + 1) * 2
var d = 100/10
var e = a + b + c + d
console.log(e)
譬如上面的代码,如果是在单线程的运行环境比如JavaScript,就会需要将上面的计算一个个的去执行完成,然后得出运行结果,也就需要进行六步才能将e打印出来,但如果是在多线程的运行环境中则只需要使用四个线程来同时计算上面的四个运算,待上面的四个运算全部完成后再把他们相加,然后再打印出来。因此使用多线程的并行运算可以大大的提高程序的性能以及效率。
但虽然多线程可以有效的提高程序的运行效率,但它是不能单独存在的,它需要进程的启动与管理。简单来说,进程与线程之间会存在以下四种关系:

进程中的任意一线程执行出错,都会导致整个进程的崩溃。很常见就是JavaScript出现的执行线程出错时会导致整个页面进程的崩溃,而导致页面白屏。
线程之间共享同进程中的数据。
当一个进程关闭之后,操作系统会回收进程所占用的内存。
进程之间的内容会相互隔离。每个进程都只能访问自己访

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值