一、瀏覽器內核是什么意思
瀏覽器內(nei)核是(shi)指瀏覽器最核心(xin)的(de)部分,負責對(dui)網頁(ye)語法的(de)解釋(如(ru)標準通用(yong)標記語言(yan)下的(de)一(yi)個應用(yong)HTML、JavaScript)并渲染(顯示)網頁(ye)。
瀏(liu)覽器(qi)分為兩(liang)部分,shell+內(nei)核,Shell是(shi)指瀏(liu)覽器(qi)的(de)(de)外殼:例如(ru)菜單,工(gong)具欄等(deng),主要是(shi)提供給(gei)用戶界面操作、參數設置等(deng),它(ta)是(shi)調用內(nei)核來實現各(ge)種功能的(de)(de);內(nei)核則是(shi)瀏(liu)覽器(qi)的(de)(de)核心(xin),是(shi)基于標記語言顯示內(nei)容的(de)(de)程序(xu)或模塊的(de)(de)。
通常(chang)所謂的(de)(de)(de)瀏(liu)覽器內核(he),就是瀏(liu)覽器所采用的(de)(de)(de)渲(xuan)染(ran)(ran)引(yin)擎(qing),渲(xuan)染(ran)(ran)引(yin)擎(qing)決定了瀏(liu)覽器如何顯示網(wang)(wang)(wang)頁(ye)的(de)(de)(de)內容以(yi)及頁(ye)面的(de)(de)(de)格式信(xin)息(xi)。不(bu)(bu)同(tong)(tong)的(de)(de)(de)瀏(liu)覽器內核(he)對網(wang)(wang)(wang)頁(ye)編寫語(yu)法的(de)(de)(de)解(jie)釋(shi)也有不(bu)(bu)同(tong)(tong),因此同(tong)(tong)一網(wang)(wang)(wang)頁(ye)在不(bu)(bu)同(tong)(tong)的(de)(de)(de)內核(he)的(de)(de)(de)瀏(liu)覽器里的(de)(de)(de)渲(xuan)染(ran)(ran)(顯示)效果也可能不(bu)(bu)同(tong)(tong)。
二、瀏覽器內核有幾種類型
瀏覽器的內核不(bu)止(zhi)有一種,有以下(xia)五種類(lei)型:
1、Trident內核
Trident(又叫MSHTML)是一(yi)款開(kai)放的內(nei)核(he),由于其引擎被(bei)設計成一(yi)個軟件模(mo)塊,所以其他的軟件開(kai)發(fa)人(ren)員就能(neng)夠在他們開(kai)發(fa)的應用程序中(zhong)加入(ru)網(wang)頁(ye)的瀏覽功能(neng)。Trident內(nei)核(he)接口已經(jing)很(hen)成熟了,但它無法在windows操作系統之外(wai)的其他操作系統上使(shi)用,所以不(bu)能(neng)跨平臺使(shi)用。
2、Gecko內核
ecko的(de)(de)特點是(shi)代碼完全公開,因(yin)此,其可開發程度(du)很高(gao),全世界的(de)(de)程序員都可以為其編寫代碼,增加功能。因(yin)為這(zhe)是(shi)個開源內(nei)核,因(yin)此受到(dao)許(xu)多人的(de)(de)青睞,Gecko內(nei)核的(de)(de)瀏覽器(qi)也(ye)很多,這(zhe)也(ye)是(shi)Gecko內(nei)核雖然年輕但市場占(zhan)有率能夠迅速提高(gao)的(de)(de)重要原(yuan)因(yin)。
3、Presto內核
這款瀏覽器內核(he)的(de)特(te)點(dian)就(jiu)是(shi)渲(xuan)染速度(du)的(de)優(you)化達到了極致(zhi),它實(shi)際上(shang)這是(shi)一個動態內核(he),與(yu)前面(mian)幾個內核(he)的(de)最大的(de)區別(bie)就(jiu)在腳(jiao)本處理上(shang),Presto有著天(tian)生的(de)優(you)勢,頁面(mian)的(de)全部(bu)或(huo)者部(bu)分(fen)都能(neng)夠在回應腳(jiao)本事件時等情況下被重新解析;然而代價(jia)是(shi)犧牲了網頁的(de)兼容性,現已停止(zhi)開(kai)發并廢(fei)棄(qi)。
4、Webkit內核
Webkit引擎(qing)(qing)包含WebCore排版引擎(qing)(qing)及JavaScriptCore解析引擎(qing)(qing),均是從KDE的KHTML及KJS引擎(qing)(qing)衍生(sheng)而來(lai),它(ta)們都是自由(you)軟件(jian),在GPL條約下(xia)授權,同(tong)時支持BSD系(xi)統(tong)的開發。所以Webkit也是自由(you)軟件(jian),同(tong)時開放源代碼。
5、Blink內核
Blink渲染引(yin)擎是(shi)2013年推出的(de),是(shi)多處理架構(gou)系統(tong),新(xin)內核會提(ti)升(sheng)整(zheng)個開源網絡生態系統(tong)的(de)機(ji)能。
三、瀏覽器內核的技術分支有幾種
瀏覽器內核的技術分支主要有三(san)種:排版渲染引(yin)擎、JavaScript引(yin)擎以及其他:
1、排版渲染引擎
排版渲染引擎的功能主要負責取得網頁的內容(HTML、XML、圖像等)、整理信息,以及計算網頁的顯示方式,然后輸出至顯示器。所有的網頁瀏覽器、電子郵件客戶端以及其他需要編輯、顯(xian)示網絡內容的(de)應用程序(xu)都(dou)需要排版(ban)渲染引擎,特別(bie)是(shi)排版(ban)渲染引擎決定了瀏覽(lan)器如何顯(xian)示網頁的(de)內容以及頁面的(de)格式信息(xi)。
2、JavaScript引擎
JavaScript引(yin)擎是(shi)用來渲染JavaScript的(de),JavaScript的(de)渲染速度越快,動態網頁的(de)展示也越快,因(yin)此這一技(ji)術分支下發(fa)展的(de)瀏(liu)覽(lan)器內核主(zhu)要重視的(de)是(shi)瀏(liu)覽(lan)器的(de)使用速度和(he)用戶的(de)使用體驗。
3、其他
其他類型(xing)的(de)技(ji)術分支主要是(shi)一些小(xiao)眾的(de)技(ji)術。