浏览器的功能与组成____将用户输入的 url 转化为可视化的图像
网络、资源管理、网页浏览、
多页面管理、插件与管理、账户和同步、安全啊机制、开发者工具... ...
- 网络
通过网络模块下载各式各样的资源
安全问题非常重要
- 资源管理
从网络下载,后者本地获取去到的资源 需要有高效的机制来管理
避免重复下载,缓存等等
- 网页浏览
如何将资源渲染为可视化的页面
- 浏览器的内核(渲染引擎)
负责将页面转变为可视化的图像结果
IE ----> Trident
Safari ----> WebKit
WebKit 本身主要是由两个引擎构成的,
一个是渲染引擎 "WebCore",
另一个则是 javascript 解释引擎 "JSCore",
它们均是从 KDE 的渲染引擎 KHTML 及 javascript 解释引擎 KJS 衍生而来。
Chrome ----> Blink
Opera ----> Blink
FireFox ----> Gecko
- 进程
程序的一次执行,独占一片内存空间,是操作系统执行的基本单元
一个进程至少有一个运行的线程____主线程 在进程启动后自动创建
一个进程也可以同时运行多个线程
一个进程内的数据可以共享其中的多个线程 直接共享,
多个进程之间的数据不可以直接共享
- 线程
是进程内的一个独立执行单
是 CPU 调度的最小单元
js 引擎 是单线程运行的 (比如 alert() )
程序运行的基本单元
保存多个线程的容器____线程池 实现线程对象的反复利用
- 现代浏览器的多进程多线程模型
在之前,单进程的浏览器:
一个页面的崩溃,会导致整个浏览器的崩溃
避免单个页面或者插件的崩溃影响整个浏览器
安全问题
5
5
5
5
5
55
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5