笔记说明前端
浏览器工做原理与实践是李兵【前盛大创新院高级研究员】在极客时间开的一个专栏,透过浏览器看懂前端本质, 笔者主要整理学习过程的一些要点笔记以及感悟,完整的能够加入李兵老师的专栏学习。 chrome
在回答这个问题以前, 李兵老师先详细的讲解了进程和线程的区别,在此附上我对老师讲解内容的整理浏览器
进程和线程 安全
单进程浏览器、多进程浏览器bash
因此最新的 Chrome 浏览器包括:网络
由于渲染进程的内容是经过网络获取的,获取的文件可能会存在恶意代码,这些代码是不安全不被信任的。因此渲染进程是运行在安全沙箱里的。 学习
这也就解释了为何打开一个页面 chrome会出现4个进程。若是页面中嵌有iframe,而且这些iframe域名不一样,渲染进程的数量也会相应增长。spa
“同一站点”定义为根域名(例如,geekbang.org)加上协议(例如,https:// 或者 http://),还包含了该根域名下的全部子域名和不一样的端口,好比下面这三个:插件
https://time.geekbang.org
https://www.geekbang.org
https://www.geekbang.org:8080
// 它们都是属于同一站点,由于它们的协议都是 HTTPS,并且根域名也都是 geekbang.org。
复制代码
一般状况下,一个页面使用一个进程(每一个标签都会有本身的渲染进程),可是有些状况下(从A页面打开了一个新的页面B页面,并且A,B页面恰巧属于同一站点,B页面就会复用A页面的渲染进程,也就是说他们是在同一个渲染进程),就会致使一个页面崩溃,同一站点的其余页面也会崩溃。因此即便是现在的多进程浏览器 也会出现一个页面崩溃卡死最终致使多个页面卡死 线程