【前端圭臬】十四: Chromium 多进程架构教程
前言
从这一篇开始,我们进入到浏览器的部分。作为前端开发者,与浏览器打交道是再平常不过的事,但是你真的了解浏览器吗?
什么是浏览器?浏览器是一种用于检索并展示 Web 信息资源的应用程序。这些信息资源可以是网页、图片、影音或其它内容,由统一资源标识符(URI)标识。
也就是说,浏览器的核心功能,就是根据一段 URI 找到资源并展示对应的内容。那么回顾一个经典问题——从输入 URL(URI) 到网页显示,经历了哪些阶段?
有意思的是前几天在和基友联机分手厨房时他提到最近在准备跳槽,还当面背了一遍这道题。作为一个 Java 程序员,他的答案是,URL-DNS 解析-获取资源-显示页面。
真的只是这样吗?显然还有很多重要的、不该被忽略的过程。一个成熟的浏览器是建立在操作系统、计算机网络、编译原理、图形学、信息安全等知识之上的综合体,让我们一步步抽丝剥茧,构建起对浏览器的系统认知。
1 浏览器市场现状
1990 年,第一个浏览器 WorldWideWeb 诞生,由万维网概念创始人Timothy Berners-Lee 开发。此后的十余年间,Mosaic、Netscape Navigator、Internet Explorer、Opera 相继出世,在这一时期,IE 凭借与操作系统的捆绑取得阶段性胜利。
2004 年,Firefox 1.0 发布,并逐渐占据部分市场份