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