發展歷史
- 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