浏览器内核概述
创始人
2024-05-06 05:28:19
0

文章目录

      • 1.什么是浏览器内核
      • 2.浏览器内核种类
      • 3.浏览器内核技术

1.什么是浏览器内核

浏览器内核又可以分成两部分:渲染引擎(layout engineer 或者 Rendering Engine)和 JS 引擎。

渲染引擎: 负责取得网页的内容(HTML、XML、图像等等)、整理讯息(例如加入 CSS 等),以及计算网页的显示方式,然后会输出至显示器或打印机。浏览器的内核的不同对于网页的语法解释会有不同,所以渲染的效果也不相同。

JS引擎: 解析 Javascript 语言,执行 javascript语言来实现网页的动态效果。

最开始渲染引擎和 JS 引擎并没有区分的很明确,后来 JS 引擎越来越独立,内核就倾向于只指渲染引擎。有一个网页标准计划小组制作了一个 ACID 来测试引擎的兼容性和性能。

浏览器内核的模块:

  1. js引擎模块: 负责js程序的编译与运行
  2. html/css文档解析模块: 负责页面文本的解析
  3. DOM/css模块: 负责dom/css在内存的相关处理
  4. 布局和渲染模块: 负责页面的布局和效果的绘制(内存中的对象)
  5. 定时器模块
  6. 事件响应模块
  7. 网络请求模块: 处理ajax的请求

2.浏览器内核种类

内核的种类很多,如加上没什么人使用的非商业的免费内核,可能会有10多种,但是常见的浏览器内核可以分Trident、 Gecko、 Webkit、 Presto、 Blink五种

(1)Trident(IE内核)

国内很多的双核浏览器的其中一核便是 Trident,美其名曰 “兼容模式”。

代表: IE、傲游、世界之窗浏览器、Avant、腾讯TT、猎豹安全浏览器、360极速浏览器、百度浏览器等。

Window10 发布后,IE 将其内置浏览器命名为 Edge,Edge 最显著的特点就是新内核 EdgeHTML。

(2)Gecko(firefox)

Gecko(Firefox 内核): Mozilla FireFox(火狐浏览器) 采用该内核,Gecko 的特点是代码完全公开,因此,其可开发程度很高,全世界的程序员都可以为其编写代码,增加功能。

可惜这几年已经没落了,比如:打开速度慢、升级频繁、猪一样的队友flash、神一样的对手chrome。

(3) webkit(Safari)

Safari 是苹果公司开发的浏览器,所用浏览器内核的名称是大名鼎鼎的 WebKit。

现在很多人错误地把 webkit 叫做 chrome内核(即使 chrome内核已经是 blink 了),苹果感觉像被别人抢了媳妇,都哭晕再厕所里面了。

代表浏览器:傲游浏览器3、 Apple Safari (Win/Mac/iPhone/iPad)、Symbian手机浏览器、Android 默认浏览器,

(4) Chromium/Bink(chrome)

在 Chromium 项目中研发 Blink 渲染引擎(即浏览器核心),内置于 Chrome 浏览器之中。Blink 其实是 WebKit 的分支。

大部分国产浏览器最新版都采用Blink内核。

(5) Presto(Opera)

Presto 是挪威产浏览器 opera 的 “前任” 内核,为何说是 “前任”,因为最新的 opera 浏览器早已将之抛弃从而投入到了谷歌怀抱了。

3.浏览器内核技术

浏览器内核主要包括以下三个技术分支:排版渲染引擎、 JavaScript引擎,以及其他。

渲染引擎主要负责取得网页的内容(HTML、XML、图像等)、整理信息,以及计算网页的显示方式,然后输出至显示器。所有的网页浏览器、电子邮件客户端以及其他需要编辑、显示网络内容的应用程序都需要排版渲染引擎,特别是排版渲染引擎决定了浏览器如何显示网页的内容以及页面的格式信息。

JavaScript引擎是用来渲染JavaScript的,JavaScript的渲染速度越快,动态网页的展示也越快。

  • 移动端的浏览器内核主要说的是系统内置浏览器的内核。
  • iPhone 和 iPad 等苹果 iOS 平台主要是 WebKit
  • Android 4.4 之前的 Android 系统浏览器内核是 WebKit,Android4.4 系统浏览器切换到了Chromium,内核是 Webkit 的分支 Blink
  • Windows Phone 8 系统浏览器内核是 Trident

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
【PdgCntEditor】解... 一、问题背景 大部分的图书对应的PDF,目录中的页码并非PDF中直接索引的页码...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
修复 爱普生 EPSON L4... L4151 L4153 L4156 L4158 L4163 L4165 L4166 L4168 L4...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...