五大主流浏览器内核的源起以及国内各大浏览器内核总结
五大主流浏览器内核的源起以及国内各大浏览器内核总结
首先来捋一下内核的概念: 浏览器内核又分为两部分:渲染引擎(layout engineer 或者 Rendering Engine) 和JS引擎。它负责取得网页的内容(HTML、XML、图像等等)、整理讯息(例如加入CSS等),以及计算网页的显示方式,然后输出至显示器或打印机。浏览器的内核的不同对于网页的语法解释也会有不同,所以渲染的效果也不相同。所有网页浏览器。电子邮件客户端以及其它需要编辑、显示网路内容的应用程序都需要内核。JS引擎则是解析Javascript语言,执行Javascript语言来实现网页的动态效果。最开始渲染引擎和JS引擎并没有区分很明确,后来JS引擎越来越独立,内核就倾向于指渲染引擎。有一个网页标准计划小组制作了一个ACID来测试引擎的兼容性和性能。 内核的种类很多,如果再加上没什么人使用的非商业免费内核的话,大概有10多种,但是常见的浏览器内核可以分为这四种: Trident、Gecko、Blink、Webkit
五大主流浏览器(按诞生顺序介绍):
1、IE(Internet Explore)浏览器
IE的诞生起源于1994年,当时微软为了对抗几乎占据市场百分之九十份额的网景Netscape Navigator(导航者),准备在windows中开发自己的浏览器,取名为Internet Explorer,意为因特网探险者,好吧,一个导航者一个探险者,从名字起火药味就很重啊(ps 自此也拉开了第一次浏览器大战的帷幕,结果大家都知道了,微软大获全胜,基本以98年网景将自己卖给了AOL公司暂且告终,但是还没结束,因为后来网景换了个身份,也就是Firefox火狐,又进入了大众视野,迸发了一种凤凰涅槃的快感,到今天为止Firefox也成为了五大主流之一,后面我们再说它~话说回来,竞争才能推动技术的发展,第一次浏览器大战以微软和网景为代表,大力推动了浏览器方面技术的发展,各大公司开始着手研发自己的浏览器,有压力才有动力嘛),但是微软着急对抗网景啊,没那么多时间从零开始,于是选择和和Spyglass合作,所以IE其实从早期一款商业性的专利网页浏览器Spyglass Mosaic派生出来,虽然Spyglass Mosaic与NCSA Mosaic(1993年,美国NCS(National Center for Supercomputing Applications)也就是国家超级计算机中心,发布的世界上第一款Web浏览器取名为Mosaic,后来网景大名鼎鼎的Mozilla就来自于这里,意为Mosaic Killer(Mosaic杀手)不过事实上, Mosaic 并不是第一个具有图形界面的网页浏览器,但是, Mosaic 是第一个被人普遍接受的浏览器,它让许多人了解了Internet )甚为相似,但Spyglass Mosaic则相对地较不出名并使用了NCSA Mosaic少量的源代码
从1996年开始,微软从Spyglass手里拿到了Spyglass Mosaic的源代码和授权。从而使IE逐渐成为微软专属软件。(后来,微软以IE和操作系统捆绑的模式不断扩展其市场份额,使IE成为了浏览器市场的绝对主流)从那时开始,IE的呈现引擎就是Trident,这也是大家俗称的IE内核,国内的大多数浏览器都有使用IE内核,或者是IE和Chrome双内核这样的形式来提高性能。
2、Opera浏览器:
Opera创始于1995年4月,由挪威Opera Software ASA公司发布,2016年2月确定被奇虎360和昆仑万维收购(题外话Opera浏览器从一开始,就在做自己的东西,无论是内核还是版本号,虽然后来为了市场份额还是弃用了曾让其达到巅峰的Presto,转向了Webkit,现在是Blink,但我还是欣赏这家公司在残酷的浏览器大战中坚持自己并存活下来的顽强精神的,它的起源时间和IE差不多,但是没有微软那样强大的后台,也许从它弃用自己内核的那时候起就决定了这个结果吧,但是不得不说,它为浏览器的发展贡献了不可或缺的一份力量,最后,希望奇虎和万维能将这样一个有骨血的浏览器继续发扬光大吧,虽然最初的东西已经没有了)。自我感觉,Opera能从第一次浏览器大战两大霸主的交火中勉强存活下来已经是个奇迹了,毕竟后来的三大浏览器都是诞生于第一次浏览器大战之后,但是却没抵得过时间的考验,这真的是个悲伤的故事
前段括弧里面已经交代清楚了,Opera浏览器的内核最初是Presto,前几年宣布使用Google的开源项目Webkit作为自己的内核,没过多久,又跟随Google使用Blink内核
3、Safari浏览器:
第二次浏览器大战基本是从苹果公司2003年1月发布其自有浏览器Safari开始的,苹果利用自己独天得厚的手机市场份额,使Safari浏览器的用户数量不断上升。从Safari推出之时起,它的渲染引擎就是Webkit,一提到 webkit,首先想到的便是 chrome,可以说,chrome 将 Webkit内核 深入人心,殊不知,Webkit 的鼻祖其实是 Safari。现在很多人错误地把 webkit 叫做 chrome内核(即使 chrome内核已经是 blink 了),苹果都哭瞎了有木有。Safari 是苹果公司开发的浏览器,使用了KDE(Linux桌面系统)的 KHTML 作为浏览器的内核,Safari 所用浏览器内核的名称是大名鼎鼎的 WebKit。 Safari 在 2003 年 1 月 7 日首度发行测试版,并成为 Mac OS X v10.3 与之后版本的默认浏览器,也成为苹果其它系列产品的指定浏览器(也已支持 Windows 平台)。如上述可知,WebKit 前身是 KDE 小组的 KHTML 引擎,可以说 WebKit 是 KHTML 的一个开源的分支。当年苹果在比较了 Gecko 和 KHTML 后,选择了后者来做引擎开发,是因为 KHTML 拥有清晰的源码结构和极快的渲染速度。Webkit内核可以说是以硬件盈利为主的苹果公司给软件行业的最大贡献之一。随后,2008 年谷歌公司发布 chrome 浏览器,采用的 chromium 内核便 fork 了 Webkit。
4、Firefox浏览器:
前面提到过,在第一次浏览器中大败的网景公司并没有彻底烟消云散,就是几经曲折(此处省略,有兴趣查阅资料),原网景公司的人员创办了Mozilla基金会,这是一个非盈利组织,正是他们在2004年推出了自己的浏览器Firefox,并且以之前的Mosaic内核为基础,开发了Gecko引擎,这也是火狐自04年发布以来一直使用的渲染引擎后来在2005年,又在基金会的基础上成立了Mozilla公司,其主要任务就是继续开发Firefox。Gecko是一个开源项目,代码完全公开,因此受到很多人的青睐~对了,从Firefox问世开始,第二次浏览器大战基本算是彻底打响了,第二次浏览器大战与第一次二元鼎力的局面不同,这一次的特点就是百家争鸣,也自此打破了IE浏览器从98年网景被收购后独步浏览器市场的局面。
5、Chrome浏览器:
2008年,大名鼎鼎的互联网巨头Google公司发布了它的首款浏览器Chrome浏览器。虽然在浏览器方面,Chrome算是年轻的一代了,但是没办法啊,人家是富二代官二代啊,后台太强,而且确实先天能力得天独厚,从文章最初贴的那个浏览器市场份额报告可以看出即便是在国内市场,Chrome浏览器依然占据着半壁江山。前面说的,其实Chrome浏览器的内核名为chromium,也就是现在大家习惯称的chrome内核,而且按照大家的误解,一直认为的chrome内核就是由苹果公司最先选择的算是KHTML引擎的分支-Webkit,这大概是苹果公司至今说不清道不明的伤痛吧~~chromium fork 自开源引擎 webkit,却把 WebKit 的代码梳理得可读性提高很多,所以以前可能需要一天进行编译的代码,现在只要两个小时就能搞定。因此 Chromium 引擎和其它基于 WebKit 的引擎所渲染页面的效果也是有出入的。所以有些地方会把 chromium 引擎和 webkit 区分开来单独介绍,而有的文章把 chromium 归入 webkit 引擎中,都是有一定道理的。(谷歌公司还研发了自己的 Javascript 引擎,V8,极大地提高了 Javascript 的运算速度。)chromium 问世后,带动了国产浏览器行业的发展。一些基于 chromium 的单核,双核浏览器如雨后春笋般拔地而起,例如 搜狗、360、QQ浏览器等等,无一不是套着不同的外壳用着相同的内核。
然而 2013 年 4 月 3 日,谷歌在 Chromium Blog 上发表 博客,称将与苹果的开源浏览器核心 Webkit 分道扬镳,在 Chromium 项目中研发 Blink 渲染引擎(即浏览器核心),内置于 Chrome 浏览器之中。其实Blink引擎就是也就是Webkit的分支,就像Webkit是KHTML的分支一样。Blink引擎现在是谷歌公司与Opera Software共同研发,上面提到过的,Operaqq弃用了自己的Presto内核,加入Google阵营,跟随谷歌一起研发Blink,套上Chromium内核后,用户体验貌似确实大不如前,鼎盛时期的Opera7.0也不复存在
五大主流浏览器也做了些往事介绍了,接下来就让我们看看这些浏览器的内核都有哪些吧。
1、IE浏览器内核:Trident内核,也是俗称的IE内核;
2、Chrome浏览器内核:统称为Chromium内核或Chrome内核,以前是Webkit内核,现在是Blink内核;
3、Firefox浏览器内核:Gecko内核,俗称Firefox内核;
4、Safari浏览器内核:Webkit内核;
5、Opera浏览器内核:最初是自己的Presto内核,后来加入谷歌大军,从Webkit又到了Blink内核;
6、360浏览器、猎豹浏览器内核:IE+Chrome双内核;
7、搜狗、遨游、QQ浏览器内核:Trident(兼容模式)+Webkit(高速模式);
8、百度浏览器、世界之窗内核:IE内核;
9、2345浏览器内核:好像以前是IE内核,现在也是IE+Chrome双内核了;
10、UC浏览器内核:这个众口不一,UC说是他们自己研发的U3内核,但好像还是基于Webkit和Trident,还有说是基于火狐内核。