Chromium架构
下图是chromium的架构图,由于chromium项目极其庞大,我们没法一一列举所有的模块,所以这里只是列出主要的模块图。Blink(WebKit)作为chromium的内核引擎,位于整个架构图的最底层,在WebKit架构一节会做详细的介绍,除此之外,还有很多chromium项目独有的模块,包括多进程模型、沙箱模型、CC(Chromium Compositor)、GPU/CommandBuffer(硬件加速架构)、IPC多进程通信等等。
Content模块是Chromium项目最主要的部分,Content对底下的模块进行了封装,向上提供了一套支持多进程架构的Content API接口,用于网页的渲染。当然,多进程架构是在Windows或Linux平台上的Chromium浏览器才有用,在Android平台上,Webview只支持单进程方式(Android O已经支持多进程了)。
AwContents是基于ContentAPI开发的模块,是Chromium为了对接到AndroidWebview而封装的一个新类,但是AwContents模块提供的还不是WebView接口,所以还需要一层桥接部分,将AwContents桥接到Android WebView。
Android WebView则是Android framework层提供给apk调用的一套标准接口,可以用来构建一个运行于Android平台的浏览器。
Chromium架构相关推荐
- 【Android】Chromium架构简介
一.Chromium架构介绍 1.架构概览 Chromium采用是多进程架构,为什么采用多层架构呢? 因为构建一个从不会挂起或崩溃的渲染引擎几乎是不可能的.构建一个完全安全的渲染引擎也是几乎不可能的. ...
- Chromium基础架构
Chromium 简介 Android webview是单进程模式的Chromium,学习WebView自然绕不开Chromium. 什么是Chromium? Chromium是由Google主导开发 ...
- 深入理解浏览器原理和架构|硬核
本文用47张图带你了解「浏览器的发展史」.「浏览器的架构」.「浏览器的基本原理」以及 「浏览器的其它小知识」 ???? 正文开始 浏览器的主要功能就是向服务器发出请求,在浏览器窗口中展示HTML文档. ...
- 从架构出发探究Electron运行原理
早期桌面应用的开发主要借助原生 C/C++ API 进行,由于需要反复经历编译过程,且无法分离界面 UI 与业务代码,开发调试极为不便.后期出现的 QT 和 WPF 在一定程度上解决了界面代码分离和跨 ...
- bing浏览器_微软推出全新 Edge 浏览器,这 3 大特色亮点 Chrome 都没有
微软基于 Chromium 架构打造的全新一代 Edge浏览器正式版,今(1/16)于官网正式上线,适用系统平台,包括:Windows 10.Windows 7.Windows 8.1 与 macOS ...
- 世界第三大浏览器正在消亡
来源 :CSDN(ID:CSDNnews) 目前,世界上最受用户欢迎的三大浏览器分别是Chrome.Safari和Firefox.Chrome在全球市场上几乎占据垄断地位,而第三大浏览器Firefox ...
- 后端技术趋势指南|如何选择自己的技术方向
编程多条路,条条通罗马 后台大佬 后台路线都是面对后台服务器业务,比如web后台服务器,视频后台服务器,搜索后台服务器,游戏后台服务器,直播后台服务器,社交IM后台服务器等等,大部分代码和业务逻辑相关 ...
- 促使整个团队改善的首要驱动力一定来自技术领域
对于中国的技术团队来说,我坚信促使整个团队改善的首要驱动力一定来自技术领域,只有采用以技术领域为切入点逐步渗透到管理领域的方式,才更有可能让团队发生质的变化. 入职半年后的2013年6月份左 ...
- 高性能Web动画和渲染原理系列(4)“Compositor-Pipeline演讲PPT”学习摘要【华为云技术分享】
[摘要] 学习chromium对合成层的处理 示例代码托管在:http://www.github.com/dashnowords/blogs 博客园地址:<大史住在大前端>原创博文目录 附 ...
最新文章
- 第三章 系统指令与汇编程序设计 3.1 单片机指令系统
- xml解析:Sax,Dom,pull解析
- php json解析教程,php解析json
- js逻辑训练题_二建冲刺必刷300题!精选历年真题+母子题+模考易错题!
- jsp内置对象------session
- 计算机为什么启动二次才能打开,为什么电脑要2次重启才能启动显示器那
- Mac上Homebrew的使用 (Homebrew 使 OS X 更完整)
- linux go missing git command,安装beego出现go: missing Git command
- python学习turtle(龟图标状态)
- 2017.9.5.1.语文
- asp.net mvc View视图目录修改
- exchange2013 OWA界面使用公有计算机或私有计算机选项
- 动态包含与静态包含的区别
- 解决Intellij IDEA中找不到汉化包问题
- POI设置导出的EXCEL锁定指定的单元格
- 智能家居竞品分析:米家/HomeKit/美居/涂鸦智能的体验与思考
- ym——Android从零开始(3)(常用控件+下拉框视图)(新)
- zabbix通过yum安装,启动报错zabbix-agent.service never wrote its PID file. Failing.
- Linux指令整理(从入门到高级)+Shell语法
- npm install 报错:found XXX vulnerabilities (XXX low, X moderate),run `npm audit fix` to fix them, or `
热门文章
- ROS学习| navigation基本导航
- 2db多少功率_搞懂“dB”这个单位,到底有多难?
- LINUX学习之路(学LINUX必看)
- Nginx 使用letsencrypt在Docker上配置Https
- 33的挑战状(bilibili首届安全挑战赛)
- java英里转换成千米_英里和公里怎么换算
- mysql vacuum_PostgreSQL中快速对系统表实现vacuum full
- mysql易百_MySQL curtime()函数
- RFID Kill密码是什么
- 注册电子邮箱有哪些品牌?163VIP邮箱有什么好处?