国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

瀏覽器內(nèi)核與js引擎

zgbgx / 1573人閱讀

摘要:所有網(wǎng)頁瀏覽器電子郵件客戶端以及其它需要根據(jù)表示性的標(biāo)記語言來顯示內(nèi)容的應(yīng)用程序都需要排版引擎。瀏覽器內(nèi)核現(xiàn)時主要的四大排版引擎為應(yīng)用于應(yīng)用于應(yīng)用于應(yīng)用于和早期版本的。主要的網(wǎng)頁瀏覽器引擎,第一款引擎,由在時編寫,用于版本。

瀏覽器內(nèi)核與js渲染引擎:

簡介:
  在維基百科上是這樣介紹瀏覽器內(nèi)核的,網(wǎng)頁瀏覽器的排版引擎(Layout Engine或Rendering Engine)也被稱為瀏覽器內(nèi)核、頁面渲染引擎或模板引擎,它負責(zé)取得網(wǎng)頁的內(nèi)容(HTML、XML、圖像等等)、整理消息(例如加入CSS等),以及計算網(wǎng)頁的顯示方式,然后會輸出至顯示器或打印機。所有網(wǎng)頁瀏覽器、電子郵件客戶端以及其它需要根據(jù)表示性的標(biāo)記語言(Presentational markup)來顯示內(nèi)容的應(yīng)用程序都需要排版引擎。

瀏覽器內(nèi)核:
  現(xiàn)時主要的四大排版引擎為:Trident(應(yīng)用于Internet Explorer);Gecko(應(yīng)用于Mozilla Firefox);Blink(應(yīng)用于Chrome );WebKit (應(yīng)用于Apple Safari和早期版本的Google Chrome)。

內(nèi)核 是否開源 插件支持 應(yīng)用瀏覽器 支持操作系統(tǒng)
Trident 否,但提供接口調(diào)用 ActiveX IE Windows
Gecko 是,多種協(xié)議授權(quán)發(fā)行,包括MPL、GPL、LGPL NPAPI Firefox Windows,Mac,Linux/BSD
Blink 是 NPAPI Chrome,Opera Windows,Mac,Linux/BSD
Webkit 是,遵從LGPL協(xié)議 NPAPI Chrome,Safar Windows,Mac,Linux/BSD

  因為這些排版引擎都有其代表的瀏覽器,所以常常會把排版引擎的名稱和瀏覽器的名稱混用,比如常的說IE內(nèi)核、Chrome內(nèi)核。其實這樣子是不太合理的,因為一個完整的瀏覽器不會只有一的排版引擎,還有自己的界面框架和其它的功能支撐,而排版引擎本身也不可能實現(xiàn)瀏覽器的所有功能。下面羅列一下幾款主流的排版引擎和瀏覽器。

1、Trident(Windows)

Trident 就是大名鼎鼎的 IE瀏覽器 所使用的內(nèi)核,也是很多瀏覽器所使用的內(nèi)核,通常被稱為IE內(nèi)核。基于Trident內(nèi)核的瀏覽器非常多,這是因為Trident內(nèi)核提供了豐富的調(diào)用接口。老的Trident內(nèi)核(比如常說的IE6內(nèi)核)一直是不遵循W3C標(biāo)準(zhǔn)的,但是由于當(dāng)時IE6的市場份額最大,所以后果就是大量的網(wǎng)頁專門為IE6等老Trident內(nèi)核編寫,在IE6下顯示很正常,但其實這些網(wǎng)頁的代碼并不符合W3C標(biāo)準(zhǔn),于是,完全依據(jù)W3C標(biāo)準(zhǔn)寫的網(wǎng)頁在老的Trident內(nèi)核下面又出現(xiàn)偏差,這就是為什么很多人覺得后來的IE9的網(wǎng)頁排版有時會亂了,而IE6則正常,其實不是瀏覽器兼容性差了,而是你訪問的網(wǎng)頁不符合新的標(biāo)準(zhǔn)。目前可供調(diào)用的最新版的Trident內(nèi)核是IE9所用的內(nèi)核,相較之前的版本對W3C標(biāo)準(zhǔn)的支持增強了很多。

Trident內(nèi)核的常見瀏覽器有: IE6、IE7、IE8(Trident 4.0)、IE9(Trident 5.0)、IE10(Trident 6.0);

世界之窗、 360安全瀏覽器、傲游;搜狗瀏覽器;騰訊TT;阿云瀏覽器(早期版本)、百度瀏覽器(早期版本)、瑞星安全瀏覽器、Slim Browser; GreenBrowser、愛帆瀏覽器(12 之前版本)、115瀏覽器、155瀏覽器; 閃游瀏覽器、N氧化碳瀏覽器、糖果瀏覽器、彩虹瀏覽器、瑞影瀏覽器、勇者無疆瀏覽器、114瀏覽器、螞蟻瀏覽器、飛騰瀏覽器、速達瀏覽器、佐羅瀏覽器;

其中部分瀏覽器的新版本是“雙核”甚至是“多核”,其中一個內(nèi)核是Trident,然后再增加一個其他內(nèi)核。國內(nèi)的廠商一般把其他內(nèi)核叫做“高速瀏覽模式”,而Trident則是“兼容瀏覽模式”,用戶可以來回切換。

2、Gecko(跨平臺)

Netscape6 啟用的內(nèi)核,現(xiàn)在主要由Mozilla基金會進行維護,是開源的瀏覽器內(nèi)核,目前最主流的Gecko內(nèi)核瀏覽器是Mozilla Firefox,所以也常常稱之為火狐內(nèi)核。因為Firefox的出現(xiàn),IE的霸主地位逐步被削弱,Chrome的出現(xiàn)則是加速了這個進程。非Trident內(nèi)核的興起正在改變著整個互聯(lián)網(wǎng),最直接的就是推動了編碼的標(biāo)準(zhǔn)化,也使得微軟在競爭壓力下不得不改進IE。不過比較可惜的是,雖然是開源的,也開發(fā)了這么多年,基于Gecko的瀏覽器并不多見,除了一些簡單的改動(坑爹的X瀏覽器)或者是重新編譯(綾川ayakawa、tete009),深度定制或者增強型外殼的還比較少見。另外就是有一些其它軟件借用了Gecko內(nèi)核,比如音樂管理軟件SongBird。常見的Gecko內(nèi)核的瀏覽器:Mozilla Firefox、Mozilla SeaMonkey、Epiphany(早期版本)、Flock(早期版本)、K-Meleon

3、KHTML(Linux)

KDE開發(fā)的內(nèi)核,速度快捷,容錯度低。這個內(nèi)核可能不見得很多人知道,但是后面再看下去你就明白了。常見的KHTML內(nèi)核的瀏覽器:Konqueror

4、WebKit(跨平臺)

由KHTML發(fā)展而來,也是蘋果給開源世界的一大貢獻。是目前最火熱的瀏覽器內(nèi)核,火熱倒不是說市場份額,而是應(yīng)用的面積和勢頭。因為是脫胎于KHTML,所以也是具有高速的特點,同樣遵循W3C標(biāo)準(zhǔn)。從目前看來,WebKit 內(nèi)核是最有潛力而且是已經(jīng)有相當(dāng)成績的新興內(nèi)核,性能非常好,而且對W3C標(biāo)準(zhǔn)的支持很完善。 當(dāng)前發(fā)展勢頭最強勁的WebKit內(nèi)核,常見的WebKit內(nèi)核的瀏覽器:Apple Safari (Win/Mac/iPhone/iPad)、Symbian手機瀏覽器、Android 默認瀏覽器,

5、Chromium(跨平臺)

其實 Chromium 就是 WebKit,維基百科里面并沒有將Chromium從WebKit分出來,這個區(qū)分完全是基于我個人的惡趣味。記得以前看過一個大牛的博文說過,Chromium把WebKit的代碼梳理得可讀性提高很多,所以以前可能需要一天進行編譯的代碼,現(xiàn)在只要兩個小時就能搞定。這個我自己也沒有考究過,但是估計可信。這個也能解釋為什么Gecko和WebKit出來了這么久,第三方編譯、定制的版本并不多,但是由Chromium衍生出來的瀏覽器早就滿坑滿谷了。 常見的Chromium內(nèi)核的瀏覽器:Google Chrome、Chromium、SRWare Iron、Comodo Dragon

6、Presto(跨平臺)

Opera 所采用的內(nèi)核,準(zhǔn)確地說,是Opera 7.0及以后版本的內(nèi)核,Opera 3.5-6.1版本使用的內(nèi)核叫做Elektra。不用說,Presto對W3C標(biāo)準(zhǔn)的支持也是很良好的。雖然我很喜歡Opera,但是我對Presto的渲染速度一直有保留態(tài)度。之前在OperaChina論壇看見有人說過,Presto優(yōu)先解析文字,保證可閱讀性,媒體資源的渲染放后。常見的Presto內(nèi)核的瀏覽器:Opera

7、Blink(跨平臺)

Blink是一個由Google和Opera Software開發(fā)的瀏覽器排版引擎,Google計劃將這個渲染引擎作為Chromium計劃的一部分,并且在2013年4月的時候公布了這一消息[1]。這一渲染引擎是開源引擎WebKit中WebCore組件的一個分支[2],并且在Chrome(28及往后版本)、Opera(15及往后版本)和Yandex瀏覽器中使用[3] 。

JavaScript引擎:

    說完了排版引擎,接下來說說 JavaScript 引擎。顧名思義,JavaScript引擎就是用來執(zhí)行JS代碼的。譬如說,一個算圓周率的網(wǎng)頁,排版引擎把頁面的框架給顯示出來了,但最終的結(jié)果需要用到 Javascript 來計算,所以Javascript引擎的快慢也是對整個網(wǎng)頁的速度有著很大影響,特別是目前越來越多類似 WebQQ、Gmail 等大量應(yīng)用了復(fù)雜的 Javascript 運算的網(wǎng)站,不同的引擎最終的速度差異會相當(dāng)大。 

    第一款JavaScript引擎由布蘭登·艾克在網(wǎng)景公司開發(fā),用于Netscape Navigator網(wǎng)頁瀏覽器中。引擎的名字叫做SpiderMonkey,由C實現(xiàn)。它自JavaScript 1.5升級以符合ECMA-262 版本3。Rhino引擎,由網(wǎng)景公司的Norris Boyd開發(fā),由Java實現(xiàn)。像SpiderMonkey一樣,Rhino符合ECMA-262 版本3。JavaScript引擎的應(yīng)用例子還包括: Apple Safari 4的Nitro,Google Chrome的V8和 Mozilla Firefox 3.5的TraceMonkey。

主要的網(wǎng)頁瀏覽器JavaScript引擎:

Mozilla

SpiderMonkey,第一款JavaScript引擎,由Brendan Eich在Netscape Communications時編寫,用于Mozilla Firefox 1.0~3.0版本。

Rhino,由Mozilla基金會管理,開放源代碼,完全以Java編寫。

TraceMonkey,基于實時編譯的引擎,其中部份代碼取自Tamarin引擎,用于Mozilla Firefox 3.5~3.6版本。

JaegerMonkey,德文J?ger原意為獵人,結(jié)合追蹤和組合碼技術(shù)大幅提高性能,部分技術(shù)借鑿了V8、JavaScriptCore、WebKit,用于Mozilla Firefox 4.0以上版本。

IonMonkey,可以對JavaScript編譯后的結(jié)果進行優(yōu)化,用于Mozilla Firefox 18.0以上版本。

OdinMonkey,可以對asm.js進行優(yōu)化,用于Mozilla Firefox 22.0以上版本。

Google

V8,開放源代碼,由Google丹麥開發(fā),是Google Chrome的一部分。

微軟

Chakra (JScript引擎),中文譯名為查克拉,用于Internet Explorer 9的32位版本[1]及Internet Explorer 10。

Opera

Linear A,用于Opera 4.0~6.1版本。

Linear B,用于Opera 7.0~9.2版本。

Futhark,用于Opera 9.5~10.2版本。

Carakan,由Opera軟件公司編寫,自O(shè)pera10.50版本開始使用。

其它

KJS,KDE的ECMAScript/JavaScript引擎,最初由Harri Porten開發(fā),用于KDE項目的Konqueror網(wǎng)頁瀏覽器中。

Narcissus,開放源代碼,由Brendan Eich編寫(他也參與編寫了第一個SpiderMonkey)。

Tamarin,由Adobe Labs編寫,F(xiàn)lash Player 9所使用的引擎。

Nitro(原名SquirrelFish),為Safari 4編寫。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/82324.html

相關(guān)文章

  • 主流覽器發(fā)展史及其內(nèi)核初探

    摘要:有趣的是,縱觀瀏覽器的發(fā)展史,其內(nèi)核的派生競爭與互相借鑒共同演繹出了盤根錯節(jié)的家族圖譜。本文通過回顧兩次瀏覽器大戰(zhàn),并對各大主流瀏覽器的發(fā)展作出簡介,展開一場瀏覽器內(nèi)核的初探之旅,揭開神秘的面紗。 當(dāng)我們在新時代調(diào)侃 IE 瀏覽器兼容性問題的時候,或多或少忘記了 IE 瀏覽器是第一款支持 CSS 的商用瀏覽器;當(dāng)我們驚嘆于 Chrome 將 Webkit 內(nèi)核發(fā)揮的如此極致的時候,又或...

    happyfish 評論0 收藏0
  • 淺談覽器多進程JS線程

    摘要:引言一直對瀏覽器的進程線程的運行一無所知,經(jīng)過一次的刷刷刷相關(guān)的博客之后,對其有了初步的了解,是時候該總結(jié)一波了。瀏覽器內(nèi)的進程知道了進程與線程之間的關(guān)系之后,下面是瀏覽器與進程的關(guān)系了。 引言 一直對瀏覽器的進程、線程的運行一無所知,經(jīng)過一次的刷刷刷相關(guān)的博客之后,對其有了初步的了解,是時候該總結(jié)一波了。 進程、線程之間的關(guān)系 一個進程有一個或多個線程,線程之間共同完成進程分配下來的...

    Juven 評論0 收藏0
  • 覽器內(nèi)核JS 引擎、頁面呈現(xiàn)原理及其優(yōu)化

    摘要:瀏覽器內(nèi)核又叫渲染引擎,主要負責(zé)的解析,頁面布局渲染與復(fù)合層合成。頁面呈現(xiàn)原理規(guī)范定義了的詞法及語法文法。解析器使用和解析生成器從語法文件中自動生成解析器。回憶一下解析器的介紹,創(chuàng)建一個自底向上的解析器,使用自頂向下解析器。 瀏覽器內(nèi)核又叫渲染引擎,主要負責(zé) HTML、CSS 的解析,頁面布局、渲染與復(fù)合層合成。瀏覽器內(nèi)核的不同帶來的主要問題是對 CSS 的支持度與屬性表現(xiàn)差異。 we...

    wean 評論0 收藏0
  • 覽器內(nèi)核JS 引擎、頁面呈現(xiàn)原理及其優(yōu)化

    摘要:瀏覽器內(nèi)核又叫渲染引擎,主要負責(zé)的解析,頁面布局渲染與復(fù)合層合成。頁面呈現(xiàn)原理規(guī)范定義了的詞法及語法文法。解析器使用和解析生成器從語法文件中自動生成解析器。回憶一下解析器的介紹,創(chuàng)建一個自底向上的解析器,使用自頂向下解析器。 瀏覽器內(nèi)核又叫渲染引擎,主要負責(zé) HTML、CSS 的解析,頁面布局、渲染與復(fù)合層合成。瀏覽器內(nèi)核的不同帶來的主要問題是對 CSS 的支持度與屬性表現(xiàn)差異。 we...

    zlyBear 評論0 收藏0
  • 覽器內(nèi)核JS 引擎、頁面呈現(xiàn)原理及其優(yōu)化

    摘要:瀏覽器內(nèi)核又叫渲染引擎,主要負責(zé)的解析,頁面布局渲染與復(fù)合層合成。頁面呈現(xiàn)原理規(guī)范定義了的詞法及語法文法。解析器使用和解析生成器從語法文件中自動生成解析器。回憶一下解析器的介紹,創(chuàng)建一個自底向上的解析器,使用自頂向下解析器。 瀏覽器內(nèi)核又叫渲染引擎,主要負責(zé) HTML、CSS 的解析,頁面布局、渲染與復(fù)合層合成。瀏覽器內(nèi)核的不同帶來的主要問題是對 CSS 的支持度與屬性表現(xiàn)差異。 we...

    0x584a 評論0 收藏0

發(fā)表評論

0條評論

zgbgx

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<