主题
浏览器
介绍
网页浏览器(英语:Web Browser,常简称为浏览器)是一种用于检索并展示万维网信息资源的应用程序。这些信息资源可为网页、图片、影音或其他内容,它们由统一资源标志符标识。信息资源中的超链接可使用户方便地浏览相关信息。
网页浏览器虽然主要用于使用万维网,但也可用于获取专用网络中网页服务器的信息或文件系统内的文件。
主流网页浏览器有 Mozilla Firefox、Microsoft Edge、Google Chrome、Opera 及 Safari。
浏览器内核与 JS 引擎
浏览器分为两个部分:
浏览器内核:主要功能就是解析 HTML/CSS 进行页面渲染,也称为排版引擎、页面渲染引擎、样板引擎。
早期内核也是包含 JavaScript 引擎的,不过现在 JavaScript 已经渐渐独立出来了。
JavaScript 引擎:专门处理 JavaScript,也称为 JavaScript 虚拟机、JavaScript 解释器。
JavaScript 引擎不仅存在于浏览器中,例如 Chrome 和 Node.js 都是用的 V8 引擎。
主流浏览器内核及 JS 引擎一览:
浏览器 | 内核 | JS 引擎 |
---|---|---|
Chrome | Blink(早期为 webkit) | v8 |
Firefox | Gecko | SpiderMonkey |
Safari | webkit | JavascriptCore |
浏览器有哪些进程和线程?
浏览器是一个 多进程多线程 的应用程序。
为了避免相互影响,浏览器在启动后,会自动启动多个进程。其中,最主要的进程是:
浏览器进程:主要负责界面显示、用户交互、子进程管理,等等 ……
网络进程:负责加载网络资源。
渲染进程:渲染进程启动后,会开启一个 渲染主进程,主进程负责执行 HTML、CSS、JS 代码。
具体渲染流程,参考:浏览器渲染原理。