“瀏覽器內(nèi)核”主要指渲染引擎(Rendering Engine),負(fù)責(zé)解析網(wǎng)頁(yè)語(yǔ)法(如HTML、JavaScript)并渲染、展示網(wǎng)頁(yè)。因此,所謂的瀏覽器內(nèi)核通常也就是指瀏覽器所采用的渲染引擎, 渲染引擎決定了瀏覽器如何顯示網(wǎng)頁(yè)的內(nèi)容以及頁(yè)面的格式信息。不同的瀏覽器內(nèi)核對(duì)網(wǎng)頁(yè)編寫語(yǔ)法的解析也有所不同,因此同一網(wǎng)頁(yè)在不同的內(nèi)核瀏覽器里的渲 染、展示效果也可能不同。
瀏覽器內(nèi)核種類繁多,商用的加上非商業(yè)的免費(fèi)內(nèi)核,大約會(huì)超過(guò)10款,我們今天重點(diǎn)看一下目前主流的四大瀏覽器內(nèi)核Trident、Gecko、WebKit以及Presto。

一、Trident內(nèi)核(代表:Internet Explorer)
說(shuō)起Trident,很多人都會(huì)感到陌生,但提起IE(Internet Explorer)則無(wú)人不知無(wú)人不曉,由于其被包含在全世界使用率最高的操作系統(tǒng)Windows中,得到了極高的市場(chǎng)占有率,所以我們又經(jīng)常稱其為IE內(nèi)核。
Trident(又稱為MSHTML),是微軟開發(fā)的一種排版引擎。它在1997年10月與IE4一起誕生,一直在被不斷地更新和完善。而且除IE外,許多產(chǎn)品都在使用Trident核心,比如Windows的Help程序、RealPlayer、Windows Media Player、Windows Live Messenger、Outlook Express等等都使用了Trident技術(shù)。
Trident實(shí)際上是一款開放的內(nèi)核,Trident引擎被設(shè)計(jì)成一個(gè)軟件模塊,使得其他軟件開發(fā)人員很容易將網(wǎng)頁(yè)瀏覽功能加到他們自行開發(fā)的應(yīng)用程序里,其接口內(nèi)核設(shè)計(jì)相當(dāng)成熟,因此涌現(xiàn)出許多采用IE內(nèi)核而非IE的瀏覽器,但是Trident只能用于Windows平臺(tái)。使用Trident渲染引擎的瀏覽器包括:IE、傲游、世界之窗瀏覽器、Avant、騰訊TT、Sleipnir、GOSURF、GreenBrowser和KKman等。
二、Gecko內(nèi)核(代表:Mozilla Firefox)
Gecko是開放源代碼、以C++編寫的網(wǎng)頁(yè)排版引擎,目前被Mozilla家族網(wǎng)頁(yè)瀏覽器以及Netscape 6以后版本瀏覽器所使用。這款軟件原本是由網(wǎng)景通訊公司開發(fā)的,現(xiàn)在則由Mozilla基金會(huì)維護(hù)。由于Gecko的特點(diǎn)是代碼完全公開,因此,其可開發(fā) 程度很高,全世界的程序員都可以為其編寫代碼,增加功能。因?yàn)檫@是個(gè)開源內(nèi)核,因此受到許多人的青睞,采用Gecko內(nèi)核的瀏覽器也很多,這也是 Gecko內(nèi)核雖然年輕但市場(chǎng)占有率能夠迅速提高的重要原因。
Gecko排版引擎提供了一個(gè)豐富的程序界面以供與互聯(lián)網(wǎng)相關(guān)的應(yīng)用程序使用,例如網(wǎng)頁(yè)瀏覽器、HTML編輯器、客戶端/服務(wù)器等。雖然最初的主要對(duì)象是Mozilla的衍生產(chǎn)品,如Netscape和Mozilla Firefox,但是現(xiàn)在已有很多其他軟件利用這個(gè)排版引擎。此外Gecko也是一個(gè)跨平臺(tái)內(nèi)核,可以在Windows、BSD、Linux和Mac OS X中使用。
正在和曾經(jīng)使用Gecko引擎的瀏覽器有Firefox、網(wǎng)景6~9、SeaMonkey、Camino、Mozilla、Flock、Galeon、K-Meleon、Minimo、Sleipni、Songbird、XeroBank。Google Gadget引擎采用的就是Gecko瀏覽器引擎。
三、WebKit內(nèi)核(代表:Safari、Chrome)
WebKit 是一個(gè)開放源代碼的瀏覽器引擎(Web Browser Engine),WebKit最初的代碼來(lái)自KDE的KHTML和KJS(它們均為開放源代碼,都是自由軟件,在GPL協(xié)議下授權(quán))。所以WebKit也 是自由軟件,同時(shí)開放源代碼。它的特點(diǎn)在于源碼結(jié)構(gòu)清晰、渲染速度極快。主要代表產(chǎn)品有Safari和Google的瀏覽器Chrome。
WebKit內(nèi)核在手機(jī)上 的應(yīng)用也十分廣泛,例如Google的Android平臺(tái)瀏覽器、Apple的iPhone瀏覽器、Nokia S60瀏覽器等所使用的瀏覽器內(nèi)核引擎,都是基于WebKit引擎的。 WebKit內(nèi)核也廣泛應(yīng)用于Widget引擎產(chǎn)品,包括中國(guó)移動(dòng)的BAE、Apple的Dashboard以及Nokia WRT在內(nèi)采用的均為WebKit引擎。
四、Presto內(nèi)核(代表:Opera)
Presto是由Opera Software開發(fā)的瀏覽器排版引擎,供Opera 7.0及以上使用。它取代了舊版Opera 4至6版本使用的Elektra排版引擎,包括加入動(dòng)態(tài)功能,例如網(wǎng)頁(yè)或其部分可隨著DOM及Script語(yǔ)法的事件而重新排版。Presto的特點(diǎn)就是 渲染速度的優(yōu)化達(dá)到了極致,它是目前公認(rèn)的網(wǎng)頁(yè)瀏覽速度最快的瀏覽器內(nèi)核,然而代價(jià)是犧牲了網(wǎng)頁(yè)的兼容性。
Presto實(shí)際上是一個(gè)動(dòng)態(tài)內(nèi)核,與Trident、Gecko等內(nèi)核的最大區(qū)別就在于腳本處理上,Presto有著天生的優(yōu)勢(shì),頁(yè)面的全部 或者部分都能夠在回應(yīng)腳本事件時(shí)等情況下被重新解析。此外該內(nèi)核在執(zhí)行JavaScript時(shí)有著最快的速度,根據(jù)同等條件下的測(cè)試,Presto內(nèi)核執(zhí)行同等JavaScript所需的時(shí)間僅有Trident和Gecko內(nèi)核的約1/3。Presto是商業(yè)引擎,了Opera以外較少瀏覽器使用Presto內(nèi)核,這在一定程度上限制了Presto的發(fā)展。
新聞熱點(diǎn)
疑難解答