1. 程式人生 > >5種主流瀏覽器的內核

5種主流瀏覽器的內核

chrom 引擎 andro explore its script 代碼 部分 rap

瀏覽器內核簡要說明
一個完整的瀏覽器包含瀏覽器內核和瀏覽器的外殼(shell)。瀏覽器內核又可以分為兩部分:渲染引擎(Layout Engine或Rendering Engine)和JS引擎。由於JS引擎越來越獨立,內核就傾向於只指渲染引擎。

瀏覽器構成
瀏覽器一般由七個模塊組成,User Interface(用戶界面)、Browser engine(瀏覽器引擎)、Rendering engine(渲染引擎)、Networking(網絡)、JavaScript Interpreter(js解釋器)、UI Backend(UI 後端)、Date Persistence(數據持久化存儲) 如下圖:


用戶界面 -包括地址欄、後退/前進按鈕、書簽目錄等,也就是你-所看到的除了頁面顯示窗口之外的其他部分
瀏覽器引擎 -可以在用戶界面和渲染引擎之間傳送指令或在客戶端本地緩存中讀寫數據等,是瀏覽器中各個部分之間相互通信的核心
渲染引擎 -解析DOM文檔和CSS規則並將內容排版到瀏覽器中顯示有樣式的界面,也有人稱之為排版引擎,我們常說的瀏覽器內核主要指的就是渲染引擎
網絡 -用來完成網絡調用或資源下載的模塊
UI 後端 -用來繪制基本的瀏覽器窗口內控件,如輸入框、按鈕、單選按鈕等,根據瀏覽器不同繪制的視覺效果也不同,但功能都是一樣的。
JS解釋器 -用來解釋執行JS腳本的模塊,如 V8 引擎、JavaScriptCore
數據存儲 -瀏覽器在硬盤中保存 cookie、localStorage等各種數據,可通過瀏覽器引擎提供的API進行調用
主流瀏覽器的內核
Trident(IE內核)
Trident內核代表產品Internet Explorer,又稱其為IE內核。Trident(又稱為MSHTML),是微軟開發的一種排版引擎。國內很多的雙核瀏覽器其中之一就是Trident,美名其曰“兼容模式”。
代表:IE、傲遊、世界之窗瀏覽器、Avant、獵豹安全瀏覽器、360極速瀏覽器、百度瀏覽器等。
Window10發布後,IE將其內置瀏覽器命名為Edge(原名斯巴達),使用了新內核Edge引擎。

Gecko(Firefox)
Gecko內核代表作品Mozilla FirefoxGecko是一套開放源代碼的、以C++編寫的網頁排版引擎。Gecko是最流行的排版引擎之一,僅次於Trident。使用它的最著名瀏覽器有Firefox、Netscape6至9。可惜這幾年已經沒落了,比如打開速度慢、升級頻繁、豬一樣的隊友flash、神一樣的對手Chrome。

Webkit(Safari)
蘋果公司自己的內核,也是蘋果的Safari瀏覽器使用的內核。
WebKit內核代表作品Safari、Chromewebkit 是一個開源項目,包含了來自KDE項目和蘋果公司的一些組件,主要用於Mac OS系統,它的特點在於源碼結構清晰、渲染速度極快。缺點是對網頁代碼的兼容性不高,導致一些編寫不標準的網頁無法正常顯示。主要代表作品有Safari和Google的瀏覽器Chrome。

Presto(Opera)
Presto內核代表作品OperaPresto是由Opera Software開發的瀏覽器排版引擎,供Opera 7.0及以上使用。它取代了舊版Opera 4至6版本使用的Elektra排版引擎,包括加入動態功能,例如網頁或其部分可隨著DOM及Script語法的事件而重新排版。在13年之後,Opera宣布加入谷歌陣營,棄用了Presto。

Blink(Chrome)
有Google和Opera Software開發的瀏覽器排版引擎,2013年4月發布,現在Chrome內核是Blink。Blink其實是webkit的分支,大部分國產瀏覽器最新版都采用Blink內核。

移動端的瀏覽器內核主要說的是系統內置瀏覽器的內核。
目前移動設備瀏覽器上常用的內核有Webkit、Blink、Trident、Gecko,其中蘋果iOS平臺主要是Webkit,Android4.4之前Android系統瀏覽器的內核是Webkit,Android4.4之後使用Blink,Windows Phone 8系統瀏覽器內核是Trident。
---------------------
作者:xiaoyu_itsme
來源:CSDN
原文:https://blog.csdn.net/weixin_42535771/article/details/81487528
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!

5種主流瀏覽器的內核