Chromium浏览器之渲染引擎Blink

Blink是谷歌公司的浏览器Chromium使用的渲染引擎。

Blink处于一个包容性的开源社区里,它欢迎任何人分享其使命。

Blink是在一种抽象的平台上实现的, 因此本身不能运行。 Chromium Content module提供这个抽象平台运行所需的Blink的实现。 Content模块的开发有专门的文档描述。有关调试Blink一些提示和建议,请参阅入门Blink调试页面。

需要注意的是Blink的代码必须符合Blink编码风格指南所规定的编码风格。

那么问题来了:我怎么把Blink移植到我的平台?

Blink运行在沙盒里面的一个抽象的平台上,因此很少有操作系统的特定依赖。这种设计具有两种后果:(1)Blink不能单独运行,并且(2)移植到其他平台发生在不同的层。而不是添加特定于平台的代码,Blink,你应该使用Chromium’s content layer,它提供了这个虚拟平台上的多种操作系统,包括Windows,Linux,Mac OS X的,和Android的实现。一个叫CEF的单独的项目可能是你的平台上使用Chromium(从而Blink)最简单的方法。

Web平台的变化:指南

除了使网络平台更快速,更安全,提高网络平台也意味着增加新的功能和删除冗余代码。为了实现我们的使命,我们需要在一个透明的,负责任的和兼容的方式中小心改变面向网络的API。我们作为一个整体衡量作为向前推进的开放式网络平台的成功与否,而不仅仅是移动一个实现。

在实践中,Chromium社区努力确保Blink的交付在默认情况下的特征满足开放标准。作为我们工作的特点,Blink跟踪他们在Web标准社区的几乎每一个进步,它可以让Blink成为透明的--每个功能的状态和如何决定哪些功能,默认满足开放标准。

下面列出一些Blink正在考虑的其他变化:

让WebCore访问多进程的历史(目前它假定同一进程的同步访问历史)

删除了Widget树(在Mac WebKit1约束)

把WebCore分裂成模块

实验与移动DOM到JS堆

增加多核使用(例如,HTML解析器,样式引擎,JavaScript的解析器)

取出DOM的模糊部分,使向后兼容改变DOM晦涩的部分受益性能或消除复杂性。

用现代的,更快的tcmalloc在所有的Mac Chromium

实验增量或并行布局

现在,有且只有一个JavaScript引擎移除ScriptValue / ScriptState抽象修复内存泄漏

删除自定义JavaScript代码绑定

带来的WebCore加快速度与DOM3事件/ [DOM] UI事件。

点击打开链接

关注微信公众平台:程序员互动联盟(coder_online),你可以第一时间获取原创技术文章,和(java/C/C++/Android/Windows/Linux)技术大牛做朋友,在线交流编程经验,获取编程基础知识,解决浏览器相关问题。程序员互动联盟,开发人员自己的家。

时间: 2025-01-02 16:53:09

Chromium浏览器之渲染引擎Blink的相关文章

Android WebView启动Chromium渲染引擎的过程分析

Android WebView加载了Chromium动态库之后,就可以启动Chromium渲染引擎了.Chromium渲染引擎由Browser.Render和GPU三端组成.其中,Browser端负责将网页UI合成在屏幕上,Render端负责加载网页的URL和渲染网页的UI,GPU端负责执行Browser端和Render端请求的GPU命令.本文接下来详细分析Chromium渲染引擎三端的启动过程. 老罗的新浪微博:http://weibo.com/shengyangluo,欢迎关注! Andro

[ 浏览器内核 ] 渲染引擎机制

浏览器内核 浏览器最重要或者说核心的部分是“Rendering Engine”,可大概译为“渲染引擎”,不过我们一般习惯将之称为“浏览器内核”.负责对网页语法的解释(如标准通用标记语言下的一个应用HTML.JavaScript)并渲染(显示)网页. 所以,通常所谓的浏览器内核也就是浏览器所采用的渲染引擎,渲染引擎决定了浏览器如何显示网页的内容以及页面的格式信息.不同的浏览器内核对网页编写语法的解释也有不同,因此同一网页在不同的内核的浏览器里的渲染(显示)效果也可能不同,这也是网页编写者需要在不同

关于主流浏览器内核(排版引擎)(渲染引擎) 的整理介绍

 前情提要: 众多的浏览器,主流的内核就几个,那么各种浏览器究竟使用的哪种内核,各种内核又有什么优劣,使用浏览器的我们应有适当了解,选择自己喜欢的浏览器. 注 :内容多为查阅网络资料整理,少量个人主观意见,如有错误,谢谢指正. 一.什么是 浏览器内核 谷歌浏览器,火狐浏览器,360浏览器,Safari浏览器,欧朋浏览器,qq,uc,傲游,世界之窗...没错他们是浏览器.什么是浏览器内核呢 ,叫做“内核”基本上可以定义为浏览器最为重要的一部分,那么它的重要在哪里?它的作用是什么? 维基百科上这样解

JavaScript 如何工作:渲染引擎和性能优化技巧

翻译自:How JavaScript works: the rendering engine and tips to optimize its performance 这是探索 JavaScript 及其构建组件专题系列的第 11 篇.在识别和描述核心元素的过程中,我们分享了在构建 SessionStack 时使用的一些经验法则.SessionStack 是一个需要鲁棒且高性能的 JavaScript 应用程序,它帮助用户实时查看和重现它们 Web 应用程序的缺陷. 当构建 Web 应用程序时,

How Javascript works (Javascript工作原理) (十一) 渲染引擎及性能优化小技巧

个人总结:读完这篇文章需要20分钟,这篇文章主要讲解了浏览器中引擎的渲染机制. DOMtree       ----|   |---->  RenderTree CSSOMtree  ----| 这是 JavaScript 工作原理的第十一章. 迄今为止,之前的 JavaScript 工作原理系列文章集中于关注 JavaScript 语言本身的功能,在浏览器中的执行情况,如何优化等等. 然而,当在构建网络应用的时候,不仅仅只是编写自己运行的 JavaScript 代码.所编写的 JavaScri

浏览器内核、渲染引擎、js引擎

[1]定义 浏览器内核分成两部分渲染引擎和js引擎,由于js引擎越来越独立,内核就倾向于只指渲染引擎 渲染引擎是一种对HTML文档进行解析并将其显示在页面上的工具 [2]常见引擎 渲染引擎: firefox使用gecko引擎 IE使用Trident引擎 2015年微软推出自己新的浏览器,原名叫斯巴达,后改名edge,使用edge引擎 opera最早使用Presto引擎,后来弃用 chrome\safari\opera使用webkit引擎 13年chrome和opera开始使用Blink引擎 js

【转】浏览器内核、渲染引擎、js引擎

[1]定义 浏览器内核分成两部分渲染引擎和js引擎,由于js引擎越来越独立,内核就倾向于只指渲染引擎 渲染引擎是一种对HTML文档进行解析并将其显示在页面上的工具 [2]常见引擎 渲染引擎(内核): firefox使用gecko引擎 IE使用Trident引擎 2015年微软推出自己新的浏览器,原名叫斯巴达,后改名edge,使用edge引擎 opera最早使用Presto引擎,后来弃用 chrome\safari\opera使用webkit引擎 13年chrome和opera开始使用Blink引

【repost】浏览器内核、渲染引擎、js引擎

[1]定义 浏览器内核分成两部分渲染引擎和js引擎,由于js引擎越来越独立,内核就倾向于只指渲染引擎 渲染引擎是一种对HTML文档进行解析并将其显示在页面上的工具 [2]常见引擎 渲染引擎: firefox使用gecko引擎 IE使用Trident引擎 2015年微软推出自己新的浏览器,原名叫斯巴达,后改名edge,使用edge引擎 opera最早使用Presto引擎,后来弃用 chrome\safari\opera使用webkit引擎 13年chrome和opera开始使用Blink引擎 js

Chromium硬件加速渲染的UI合成过程分析

在Chromium中,Render端和WebGL端绘制出来的UI最终是通过Browser端显示在屏幕上的.换句话说,就是Browser端负责合成Render端和WebGL端的UI.这涉及到不同OpenGL上下文之间的资源传递和同步问题.其中,资源传递问题通过Mailbox机制解决,同步问题通过Sync Point机制解决.本文接下来就分析Browser端合成Render端和WebGL端UI的过程. 老罗的新浪微博:http://weibo.com/shengyangluo,欢迎关注! Rende