IE是最早的浏览器?这四款开源浏览器引擎让你读懂浏览器进化史
浏览器是什么?20年前,网吧的老板会告诉你,想要上网冲浪,必须使用浏览器打开网页。那个时候,windows98系统内置的IE4.0是上网的标配。虽然已经申请了OICQ,却还是喜欢抛在网页聊天室中,跟天南海北的网友谈天侃地。
Windows98操作系统桌面
20年前的1998年,感觉时间很久远了吧。但微软的IE浏览器却不是最早的浏览器。科技界普遍认为,1991年正式发布的WorldWideWeb是全球最早的一款浏览器,也就是后来的Nexus。这款浏览器虽然还无法支持图片,但在当年一度很流行。
WorldWideWeb浏览器
1992年,赫尔辛基科技大学的4个芬兰学生开发了Erwise,这是世界上第一个图形网页浏览器,主要针对在Unix上运行 X Windows的需要。
Erwise浏览器
93年,美国NCSA组织的一个团队,开发了Mosaic浏览器,升华了Erwise的图形化,并将图形化浏览器推向了万维网的主流。
Mosaic浏览器
94年,Mosaic团队中心人物马克·安德森成立网景通讯公司,开发了Mozilla,后来更名Netscape Navigator,也就是大家所熟知的网景浏览器。
Netscape Navigator浏览器
网景公司的鼎盛时期,其市场占有率最高达到过90%。后来伴随着Java等技术标准的提出,网景等互联网公司的崛起,让以系统开发为主的微软感受到了威胁。于是,微软找到网景,提出了合作,但被网景拒绝。
微软勃然大怒,在95年投入20亿美元,通过购买(包括Mosaic的授权)、兼并和开发等多种手段,迅速推出了浏览器IE2.0。微软不但将IE免费,还将其并捆绑于Windows 95中一起销售,迅速抢占份额,导致网景一蹶不振。网景在98年11月,被美国在线AOL收购,网景浏览器基本退出历史舞台。
IE2.0
98年以后,IE浏览器一统江湖。伴随着国内网吧行业的兴起,影响了大批中国早期的上网用户。
IE4.0
在此后这些年,国外有很多的优秀浏览器的诞生,譬如Opera与谷歌的Chrome。而在中国,则有更多的浏览器诞生,譬如360浏览器、猎豹浏览器、傲游、世界之窗、腾讯TT等等,到最后几乎每个互联网公司都有自己的浏览器。
今年2月份的数据,Chrome浏览器的全球市场份额为已经超过67.49%,名列第一;Chrome在国内的排名同为TOP1,市场份额为45.74%。下图,是来自百度统计近6个月的浏览器中国市场份额数据。
为什么国内会出现这么多浏览器?原因很简单,因为浏览器引擎(内核)都是开源的。各家公司只要在免费内核基础上进行开发,成本是很低的。
一款浏览器,其核心的部分是“Rendering Engine”,也就是“渲染引擎”,一般将之称为“浏览器内核”。主要作用,是帮助浏览器来渲染网页的内容,将页面内容和排版代码转换为用户所见的视图。
浏览器内核又可分成两部分:渲染引擎(layout engineer 或者 Rendering Engine)和 JS 引擎。它负责取得网页的内容(HTML、XML、图像等等)、整理讯息(例如加入 CSS 等),以及计算网页的显示方式,然后会输出至显示器或打印机。
渲染引擎的工作流程,大致如下:
1、HTML解析器解析DOMM树(解析为DOM树上个节点,同时解析CSS样式);
2、渲染树结构(具有一定的视觉效果,并按照一定顺序排列在屏幕上);
3、布局渲染树(为每个节点分配固定坐标);
4、绘制DOM树(渲染引擎会遍历所有的节点,由UI后端绘制)
下面,是Webkit渲染引擎工作流程流程图。
Webkit渲染引擎工作流程流程图
浏览器内核很多,加上几乎没人在用的非商业免费内核,目前应该有十款以上甚至更多。但通常,大家能看到的这些浏览器,其内核大概不会超过四种。也就是说,现在各家的浏览器都是基于国外开源浏览器引擎开发的。那么,是哪四种开源浏览器引擎呢?如下:
Trident内核
IE浏览器用的是Trident内核,又称IE内核。微软在1994年开始使用它,是在Mosaic代码的基础上修改而来的,一直沿用至今IE8。在Window10 发布后,IE 将其内置浏览器命名为 Edge,Edge 采用了新内核 EdgeHTML。
Trident是一款开放的内核,其接口内核设计相当成熟,可以在其基础上做很多开发。因此,这些年出现了很多采用IE内核而非IE的浏览器,如Maxthon、The World 、TT、GreenBrowser、AvantBrowser等。基本上,互联网公司所所开发的自家浏览器,都是基于Trident内核。
Gecko内核
Gecko是Netscape6 最先采用的内核,后来Mozilla FireFox(火狐浏览器) 也采用了该内核。Gecko代码完全公开,可开发程度很高,全世界的程序员都可以为其编写代码,增加功能。因为开源,所以基于Gecko 开发的浏览器也很多,同时 Gecko 内核的市场占有率也正在迅速提高。
使用Gecko内核的浏览器也有不少,如Mozilla Firefox、Mozilla SeaMonkey、waterfox(Firefox的64位开源版)、Iceweasel、Epiphany(早期版本)、Flock(早期版本)、K-Meleon等。
Presto内核
Presto是挪威产浏览器Opera(欧朋浏览器)的之前采用的内核,最新的opera浏览器已经加入了谷歌阵营。Presto内核是目前公认网页浏览速度最快的浏览器内核,该款引擎的特点是渲染速度的优化达到了极致,然而代价是牺牲了网页的兼容性。目前,基于Opera内核开发的浏览器,主要应用在手机平台,譬如Opera mini。
为了减少研发成本,Opera 在 2013跟随 Chrome 使用 WebKit 分支的 Chromium 作为核心引擎。在Chrome 于 2013 年推出 Blink 引擎后,Opera 也开始使用 Blink 作为浏览器核心引擎。
Webkit内核
2003 年1月7日,苹果发布了Safari测试版。Safari使用KDE(Linux桌面系统)的 KHTML 作为浏览器的内核,这款内核的名称是WebKit。WebKit也是一个开源浏览器引擎,拥有清晰的源码结构、极快的渲染速度,包含的 WebCore 排版引擎和 JavaScriptCore解析引擎,均是从KDE的KHTML及KJS引擎衍生而来。
正是因为KHTML 清晰的源码结构和极快的渲染速度,2008 年谷歌发布 chrome 浏览器所采用的 chromium 内核,也用了 Webkit。所以,webkit并非源自chrome,而是确确实实的苹果原创。采用Webkit内核的浏览器很多,诸如Safari、Google Chrome、傲游3,、猎豹浏览器、百度浏览器、opera等,都是基于 Webkit 开发。
免责声明:本网站内容主要来自原创、合作伙伴供稿和第三方自媒体作者投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。任何单位或个人认为本网站中的网页或链接内容可能涉嫌侵犯其知识产权或存在不实内容时,应及时向本网站提出书面权利通知或不实情况说明,并提供身份证明、权属证明及详细侵权或不实情况证明。本网站在收到上述法律文件后,将会依法尽快联系相关文章源头核实,沟通删除相关内容或断开相关链接。