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