浏览器的发展历史
发展历史
- 1991年,WorldWideWeb 浏览器发布 这款由 Web 之父 Tim Berners-Lee 亲手设计的图形化浏览器还包含一个所见即所得 HTML 编辑器,为了避免同 WWW 混淆,这个浏览器后来改名为 Nexus.(体验版参见)
![
-
1993年,Mosaic 发布 Internet 的流行应该归功于 Mosaic,这款浏览器将 Web 带向了大众。诸如 IE, Firefox 一类的当代浏览器仍然在延用 Mosaic 的图形化操作界面思想。(详细介绍)
-
1994年,Netscape 成立 Marc Andreessen 带领 Mosaic 的程序员成立了 Netscape 公司,并发布了第一款商业浏览器 Netscape Navigator.(详细介绍)
-
1995年,IE 发布,浏览器之战即将爆发 微软针对 Netscape 发布了他们自己的浏览器,IE,第一场浏览器之战爆发。
-
1996年,Opera 发布 Telenor 是挪威最大的通讯公司,他们推出了 Opera,并在两年后进军移动市场,推出 Opera 的移动版。
-
1998年,Mozilla 项目成立 Netscape 成立 Mozilla 开源项目,开发下一代浏览器,后来证明,使用原有代码开发新东西是一种负担,接着他们着手从新开发。
-
1998年,Netscape 浏览器走向开源 随着同 IE 征战的失利,Netscape 市场份额急剧下降,Netscape 决定将自己的浏览器开源以期重整山河。
-
2002年,IE 开始主导浏览器市场 市场份额达到95%,借助操作系统的捆绑优势,IE 赢得第一场浏览器之战。
-
2003年,苹果 Safari 浏览器登场 苹果进入了浏览器市场,推出自己的 Webkit 引擎,该引擎非常优秀,后来被包括 Google, Nokia 之类的厂商用于手机浏览器。
-
2004年,Firefox 引发第二场浏览器之战 Firefox 1.0 推出。早在 Beta 测试期间就积累了大量人气的 Firefox 引发了第二场浏览器之战,当年年底,Firefox 已经赢得 7.4% 的市场份额。
-
2006年,IE7 发布 IE6 发布后的第六年,迫于 Firefox 的压力,微软匆匆推出 IE7 应战,吸取了 Firefox 的一些设计思想,如标签式浏览,反钓鱼等。但这款浏览器现在看来并不成功。
-
2008年,Google 携 Chrome 参战 Google 发布了他们自己的浏览器,加入这场战争。轻量,快,异常的稳固让这款浏览器成为不可轻视的一个对手。
目前现状
浏览器内核
浏览器内核之间的区别
- Trident内核
Trident内核,又称MSHTML,微软内核。是微软窗口操作系统windows搭载的网页浏览器,也是IE的排版引擎。IE内核相对其他内核是最开放的,接口设计相对最为成熟,对外部程序支持最好,这也是IE外壳的浏览器最多的原因之一。IE背靠windows大树一度占据浏览器市场的绝对优势,微软也很长时间没有更新trident内核,导致Trident内核几乎与W3C标准脱节,也是的大量的bug等安全性问题涌现,给了后起之秀很多机会。
- Gecko内核
Gecko,也称壁虎,火狐内核。Gecko核心设计的相对成熟,在无法获取源码的情况下,开放程度仅次于IE。由于其本身Open Source。实际上是目前开发程度最好的浏览器。Firefox的扩展能够给浏览者带来完全不同的浏览体验。
- webkit内核
WebKit内核,苹果公司自己的内核,也是苹果的Safari浏览器使用的内核。
- blink内核
Blink是一个由Google和Opera Software开发的浏览器排版引擎,Google计划将这个渲染引擎作为Chromium计划的一部分,并且在2013年4月的时候公布了这一消息。在Chrome(28及往后版本)、Opera(15及往后版本)和Yandex浏览器中使用。
- Presto内核
Presto是一个由Opera Software开发的浏览器排版引擎,供Opera 7.0及以上使用。该款引擎的特点就是渲染速度的优化达到了极致,也是目前公认网页浏览速度最快的浏览器内核,然而代价是牺牲了网页的兼容性。
浏览器间的比较
-
综合速度
-
对html5支持
-
综合性能
-
对软件支持
重大变革
-
第一次变革:Netscape王者
故事从1994年开始,那一年网景通信公司推出了代号为“网景导航者”的网景浏览器1.0,互联网历史上第一款商业化浏览器产品——Netscape诞生了,随后的Netscape6开始采用Gecko内核。后来的Mozilla FireFox(火狐浏览器)也采用了该内核,Gecko 的特点是代码完全公开,因此,其可开发程度很高,全世界的程序员都可以为其编写代码,增加功能。因为这是个开源内核,因此受到许多人的青睐,Gecko 内核的浏览器也很多,这也是 Gecko 内核虽然年轻但市场占有率能够迅速提高的重要原因。这款产品迅速风靡,随后迭代版本占领了浏览器大部分份额。在最鼎盛的时期,风光程度甚至超过了后来者IE。
-
第二次变革:蝗虫IE
浏览器世界统治时间最长、最为著名的莫过于微软的IE系列浏览器。如果不是网景浏览器的太过成功,或许不会有后来的IE了,快速的发展让Netscape犯下了一个致命错误,由于浏览器的成功带来的自信导致这家公司干脆尝试去做一个操作系了,而当时操作系统领域已经领先的微软马上意识到网景的威胁,立马收购另外一家浏览器公司,1997年微软基于Mosaic(“马赛克”,这是人类历史上第一个浏览器,从此网页可以在图形界面的窗口浏览)代码修改成了新的Trident内核,开发出了Internet Explorer,而且微软把IE浏览器捆绑在了他自己的操作系统中,想想当时的场景,安装一个微软的操作系统没有浏览器,还需要再花钱买一张网景浏览器软件才能上网,尽管网景浏览器很好用,但这样也很麻烦。微软操作系统中直接带有浏览器,试问还有谁愿意去在花钱买个浏览器软件?所以IE立马占领了浏览器市场。一直到今天,尽管有些强弩之末,但依然占据了半壁江山。
很多人将IE的成功归咎于微软的“蝗虫”式垄断战略,但坦白地说,Trident内核帮了它大忙,尤其在早期,从IE4中首次采用一直沿用到了IE11,所以Trident也被普遍称为IE内核。Trident实际上是一款开放的内核,它比较轻盈,而且历经多代发展,已具有成熟的接口规范和接口开发性,能够适应不同的脚本要求。因此才有许多采用 IE 内核而非 IE 的浏览器(壳浏览器)涌现。
非 Trident 内核浏览器的市场占有率大幅提高也致使许多网页开发人员开始注意网页标准和非 IE浏览器的浏览效果问题。 补充:IE 从版本 11 开始,初步支持 WebGL 技术。IE8 的 JavaScript 引擎是 Jscript,IE9 开始用 Chakra,这两个版本区别很大,Chakra 无论是速度和标准化方面都很出色。 国内很多的双核浏览器的其中一核便是 Trident,美其名曰 “兼容模式”。 Window10 发布后,IE 将其内置浏览器命名为 Edge,Edge 最显著的特点就是新内核 EdgeHTML。关于 Edge 浏览器更多可以参考 如何评价 Microsoft Edge 浏览器?
-
第三次变革:烈士遗孤Mozilla
1998年1月,网景与微软IE浏览器竞争失利以后,为了挽回市场,网景通信公司公布旗下所有软件以后的版本皆为免费,并成立了非正式组织Mozilla,自此Mozilla浏览器开始登上舞台。Netscape虽然死了,但是留下的“遗孤”Firefox(狐狸),则开始迈出了漫长的复仇之路。Mozilla Firefox也是基于Gecko内核,但此Gecko已非彼Gecko。 上一代的Gecko内核由于公司产品研发策略发生的偏差,导致它越来越臃肿,受人诟病。尤其是被AOL收购后,这家公司除了将Netscape带向死亡外,没有任何建树。 而新一代的Gecko内核引擎的由来跟 IE 不无关系,由于 IE 本身的 “垄断性”(虽然名义上 IE 并非垄断,但实际上,特别是从 Windows 95 年代一直到 XP 初期,就市场占有率来说 IE 的确借助 Windows 的东风处于 “垄断” 的地位)而使得 Trident 内核的长期一家独大,微软很长时间都并没有更新 Trident 内核,这导致了两个后果——一是 Trident 内核曾经几乎与 W3C 标准脱节(2005年)这也导致了微软内部一些开发人员的不满,二是 Trident 内核的大量 Bug 等安全性问题没有得到及时解决,然后加上一些致力于开源的开发者和一些学者们公开自己认为 IE 浏览器不安全的观点,也有很多用户转向了其他浏览器,而那些不满的部分微软“叛将”与当时已经停止更新了的 Netscape 的一些员工一起创办了Mozilla(Opera 也是这个时候兴起的),以当时的 Mosaic 内核为基础重新编写内核,于是开发出了 Gecko。针对IE,Gecko祭出了自己的杀手锏——开源,通过源代码开放,彻底解决了安全和速度问题。尤其是热代码加速这个全新思路,为Firefox打开了胜利之门。从刚开始被微软取笑为“臭狐狸”到与IE形成分庭抗礼的局势,也不过是短短几年而已。不过,Gecko 内核的浏览器仍然还是 Firefox 用户最多,所以有时也会被称为 Firefox 内核。此外 Gecko 也是一个跨平台内核,可以在Windows、 BSD、Linux 和 Mac OS X 中使用。
-
第四次变革:苹果Safari来了
可惜的是尽管Mozilla、opera浏览器很好用,可微软操作系统的市场占有率很大,造成其他浏览器的市场份额一直不变。IE自从坐上了份额第一的头把交椅后,就一直不思进取了,自己制作一套web标准,也不怎么支持html,javascript,css这些web技术的新版本特性,微软从ie6开始到ie8七八年间几乎没对Trident进行过像样的更新,这与后来勤快的苹果、Google形成鲜明的对比。虽然ie通过垄断赢得了市场,但不安全、崩溃、速度慢等等问题也一直让用户难以忍受。现实往往就是这么捉摸不定,变幻莫测,正当人们认为Gecko将与Trident上演“双寡头”的时候,苹果大叔开始出手,做了蝉和黄雀后面的螳螂。
话说回来,这也得怪Gecko和Trident他们自己。Gecko再次犯了当年的错误——贪大求全,将邮件组、新闻组、聊天等流行应用都打包进了Firefox,导致内存占用问题。此外,Firefox对JavaScript的支持并不好,反应迟钝也开始被频频抨击。而Trident呢,几乎没怎么更新过,很多兼容问题导致开发者也是头大。再加上开放性问题,致使IE在安全性、速度等诸多问题上被群起而攻。从这个意义上来说,是垄断成就了IE,同样也是垄断毁灭了IE。
勤劳的又追求极致的苹果推出的基于WebKit内核的Safari浏览器则引导了浏览器的本质回归潮流。Safari 在 2003 年 1 月 7 日首度发行测试版,并成为 Mac OS X v10.3 与之后版本的默认浏览器,也成为苹果其它系列产品的指定浏览器(也已支持 Windows 平台)。WebKit内核则是苹果基于KDE小组(Linux桌面系统)的 KHTML 引擎开发出来的,可以说 WebKit 是 KHTML 的一个开源的分支。当年苹果在比较了 Gecko 和 KHTML 后,选择了后者来做引擎开发,是因为相比Gecko,KHTML 拥有清晰的源码结构和极快的渲染速度,也实现了JavaScript脚本的快速解释器调用。事实上,这个宝押对了。这种轻灵随后就赢得了Google的青睐(2008 年谷歌公司发布 chrome 浏览器,采用的 chromium 内核便 fork 了Webkit)。现在Google Chorme已成增长最快,最受开发者喜欢的浏览器了,加上苹果Safari的份额,WebKit已经与Gecko、Trident开始“三国演义”。
有意思的是,自从苹果的WebKit推出后,不光是谷歌青睐,就连Firefox内部也开始有“异见”,要求抛弃Gecko而选择WebKit。
更有意思的是,一提到 webkit,大家首先想到的便是chrome,可以说,chrome将 Webkit内核深入人心,殊不知,Webkit 的鼻祖其实是Safari。现在很多人错误地把 webkit 叫做 chrome内核(即使 chrome内核已经是 blink 了),苹果都哭瞎了有木有,Webkit内核可以说是以硬件盈利为主的苹果公司给软件行业的最大贡献之一。
-
第五次变革:后起之秀-谷歌Chrome(Bink/Chromium)
自苹果推出的WebKit内核后,这种回归本质的轻灵受到了谷歌的青睐,2008年chrome横空出世。界面简洁、加载快速、数据安全等这些特点让chrome越来越受喜欢,甚至好过于苹果了。加之很多web开发者对其的追捧,最终使其市场份额逐步攀升,成为了后起之秀。
谷歌发布的 chrome 浏览器使用的内核被命名为 chromium。chromium 虽然是开源引擎webkit的一个分支,却把 WebKit 的代码梳理得可读性提高很多,所以以前可能需要一天进行编译的代码,现在只要两个小时就能搞定。因此 Chromium 引擎和其它基于 WebKit 的引擎所渲染页面的效果也是有出入的。所以有些地方会把 chromium 引擎和 webkit 区分开来单独介绍,而有的文章把 chromium 归入 webkit 引擎中,都是有一定道理的。谷歌公司后来还研发了自己的 Javascript 引擎,V8,极大地提高了 Javascript 的运算速度。
Chromium 问世后,带动了国产浏览器行业的发展。一些基于 chromium 的单核,双核浏览器如雨后春笋般拔地而起,例如:搜狗、360、QQ浏览器等等,无一不是套着不同的外壳用着相同的内核。然而2013年4月3日,谷歌在Chromium Blog上发表 博客,称将与苹果的开源浏览器核心 Webkit 分道扬镳,在 Chromium 项目中研发 Blink 渲染引擎(即浏览器核心),内置于 Chrome 浏览器之中。
-
Webkit 用的好好的,为何要投入到一个新的内核中去呢?
Blink 其实是 WebKit 的分支,如同 WebKit 是 KHTML 的分支一样。Google 的 Chromium 项目此前一直使用 WebKit(WebCore)作为渲染引擎,但出于某种原因,并没有将其多进程架构移植入Webkit。后来,由于苹果推出的 WebKit2 与 Chromium 的沙箱设计存在冲突,所以 Chromium 一直停留在 WebKit,并使用移植的方式来实现和主线 WebKit2 的对接。这增加了 Chromium 的复杂性,且在一定程度上影响了 Chromium 的架构移植工作。基于以上原因,Google 决定从 WebKit 衍生出自己的 Blink 引擎(后由 Google 和 Opera Software 共同研发),将在 WebKit 代码的基础上研发更加快速和简约的渲染引擎,并逐步脱离 WebKit 的影响,创造一个完全独立的 Blink 引擎。这样以来,唯一一条维系 Google 和苹果之间技术关系的纽带就这样被切断了。
Google 和 Apple 在多个领域都是竞争对手,而唯独在浏览器引擎上有技术合作,利益一致。但为了各自的利益,谁都不会拿出 100% 的 “诚意” 来做好 WebKit,因为你做出来的成果竞争对手可以直接享用。移动互联网已经崛起,手机和平板设备端必将成为浏览器的另一个战场。这个时候,如果 Google 跟苹果仍然黏在一起,将会严重阻碍双方的进步,也会阻碍 WebKit 的进步。据说 Blink 删除了 880w 行 webkit 代码。
Blink 引擎问世后,国产各种 chrome 系的浏览器也纷纷投入 Blink 的怀抱,可以在浏览器地址栏输入 chrome://version 进行查看。
在chrome发展壮大过程中,微软才意识到chrome开始对它逐步侵蚀自己的市场有了危机感,才开始频繁更新IE,2011年IE9发布,2012年IE10发布,2013年IE11发布,最后IE的代码实在适应不了新要求的web技术,就重新开发了一个名为“edge”的浏览器用来取代IE,但还是挡不住chrome成为市场份额第一的命运。在IE横行的那一段时间为了适应IE中国的大多数常用网站也不大符合互联网标准,也就是说如果用符合互联网标准的浏览器去解析这些网站,反而会不正常显示,可见IE坐头把交椅的那几年,却一直在误导和阻挠互联网的发展,悲哉啊。在此要向那些不断创新、不断完善、不断接纳新web技术的浏览器公司致敬,面对IE他们的市场份额不高,却仍然坚持着不断前进。
-
-
第六次变革:1+1>2,双核时代
Webkit的异军突起将浏览器的特性拉回到“浏览”的本质上来——评价浏览器优劣的关键词不外乎三个方面:兼容性、安全性、浏览速度。而追究每一次浏览器的更替,你总会发现,它们在这三方面总有致命缺陷。
如此情况下,一种新的呼声正在崛起——多核。尤其是在中国市场,由于Firefox等浏览器在中国的市场份额极少,中文网页多是“IE标准”,用户暂时无法抛弃Trident内核,但他们又需要速度更快、更稳定的浏览体验。采用“多核”之后,这种矛盾迎刃而解。
从全球范围来看,多核未必蔚然成风,但在特殊的中国市场,这代表了潮流。看看现在的国内浏览器吧:360安全浏览器,QQ浏览器、搜狗浏览器,UC浏览器、2345加速浏览器、百度浏览器、猎豹浏览器、遨游浏览器,世界之窗,有几个不是双核的?你再看看国外的浏览器:chrome、safari、opera、firefox、ie又有几个是双核?
国内浏览器的起源
国产浏览器起源于IE,一位网名为changyou(畅游)的程序员于1999年在论坛上发布一款叫"MyIE"的浏览器,基于IE,但采用多窗口浏览,占用系统资源比IE6少很多,且有鼠标手势、视觉化书签等功能。后来“畅游”这个人就消失不见了,MyIE版本到3.2版本后就再也没有更新过。MyIE代码停更后,有很多程序员接起了MyIE的开发工作。不过因为没有MyIE作者的参与,各自为战,从而诞生了一大批以MyIE为基础的浏览器,其中最出名的就是MyIE2(后改名Maxthon)、网际畅游(后改名GreenBrowser)和TheWorld(世界之窗)了。
MyIE2后来改名叫Maxthon,即今天的傲游。老板叫陈明杰,jeff Chen,独立开发MyIE2,然后回国创业,拉起了傲游公司,直到今天。傲游走的是高大全路线,一直以来属于重型浏览器——当然,重型不等于速度慢,只是外表看起来功能齐备而复杂,实际上对于粉丝来说这款浏览器当属灵敏与全能兼备的冲浪利器。
GreenBrowser比较可惜,走的是小巧路线,当然功能也不算少,而且不用安装,后来无声息了。
TheWorld就更可惜了,由凤凰工作室研发。后来被360安全浏览器收购了。360买下后,仍然允许凤凰工作室继续研发。再后来就是Chromium内核:世界之窗极速版、360极速浏览器,发展到世界之窗6的时候,360就不让凤凰工作室继续研发世界之窗了。于是就有了这个国内占有率极高的360极速浏览器。而世界之窗6停留在了14年,凤凰工作室转而研发Android上的星尘浏览器,以及基于Android x86的凤凰系统了。
TT 浏览器,腾讯的,后来改为QQ浏览器了(知名度仅次于360浏览器)。
猎豹浏览器,付盛接手金山网络后的一个力作,拿chromium改的,但是在包装上做足了文章。
淘宝浏览器神马的就不说了......
所以,将MyIE称为今日国产浏览器的鼻祖是不为过的。而且MyIE最大的贡献就是多标签!
移动端浏览器
移动端的浏览器内核主要说的是系统内置浏览器的内核。 主要是:webkit、chromium、blink、trident、u3、x5
由于智能移动端发展历史相对于 pc 很短,所以 ie、opera这些元老级浏览器内核很少见,移动端浏览器大都是从webkit开始的,2005年,诺基亚公司的S60团队成为手机端WebKit的先驱,他们将WebKit框架移植到了Symbian S60平台,作为S60第三版的浏览器内核。2007年6月29日,iPhone上市,WebKit通过Safari浏览器进入iOS平台,而且立即成为当时iOS平台唯一的排版引擎。 2008年10月22日Chrome Lite浏览器内置在android中。所有的智能手机清一色的选择了webkit,也证明了KDE和苹果公司对webkit的贡献很大。有趣的事情在android操作系统中发生了,android原生网页视图WebView也是基于Webkit,chrome浏览器开发团队当初听取android开发团队的意见也选择了webkit,个人觉得当时他们就商量好了,那就是chrome后续开发的成果会用在android上。所以直到android 4.4为止,android上的webview组件都被人吐槽,速度慢、排版差,不得已第三方手机浏览器纷纷研发内核。腾讯的x5,UC的U3都是当时的迭代品。而同时chrome则一路高歌不断占领浏览器市场,期间chrome Lite只是作为android的内置浏览器,2013年9月android发布的android4.4终于把原本基于Android WebKit的WebView实现换成基于Chromium的WebView实现,从此基于Chromium的WebView实现成为了Android系统上的缺省实现方式。如果chromium用新的内核blink,android自然也会跟进,而最终chrome os和android会走在一起,不分你我。除此外的Windows Phone 8 系统浏览器内核则采用的是 Trident,但现已经没有声音了。
国内的手机端浏览器必须要提 UC 的U3内核和腾讯 QQ 的x5内核了,UC从非智能机开始就存在了,当之无愧最好用的移动浏览器。然而进入移动时代……UC反应慢了点,加上各种奇怪的APP都蜂拥而入,移动浏览器市场已经乱成了一锅粥。这锅粥里第一个炸开的米粒是海豚浏览器,号称硅谷华人创业团队,什么创新思维,高估值之类……但也没乱用,最后拼的都是一个字——钱。自从 UC认了马云干爸爸之后,就活过来了,现在移动端占有率依然很高, 而现在的 QQ 浏览器借助流量入口微信也算是很成功了。除此外手机百度、QQ 浏览器、360、搜狗、猎豹表现都不错。
参考链接:https://www.jianshu.com/p/db1b230e3415
https://www.cnblogs.com/woai3c/p/10247919.html
https://www.zhihu.com/search?q=%E5%89%8D%E7%AB%AF%E5%8E%86%E5%8F%B2&utm_content=search_history&type=content