nWebView 是webkit最核心的一个view,WebView管理WebFrameView和WebFrame之间的交互,一个WebView对象绑定一个window,并且要求MainFrame加载url,一个WebPage对应一个Window. 
  
WebView
n它对应的是根window。 
n它负责处理外部所有消息,并转发给相关模块。 
n它负责mainFrame和历史记录的管理工作。 
n¨  
WebFrame
  
nFrame的管理者 
n负责资源加载和反馈处理 
¨临时数据资源(provisional data source)和确认数据资源(Committed Data Sources) 
¨WebKit提交请求是异步响应的。在发送请求到收到数据的过程,Webkit会创建一个临时数据资源(provisional data source),这个资源并不知道是否能正确接收数据,所以是临时的。当这个临时数据资源变成有效时,WebFrame才会有真正的数据资源。开始WebFrame并没有数据资源(data source),只有一个空白页显示。 
¨WebFrame收到第一个字节数据,Data Source就变确认数据资源(Committed Data Sources) 
¨了。如果临时数据资源(provisional data source)有错误,就不会变成确认数据资源(Committed Data Sources)。 
¨当数据资源变成确认的(committed)状态,WebFrame将创建相应的document representation 和document view 。

浏览器的分层结构

nWebKit上层组织应用 
nWebCore 
¨Page与外框相关的内容(Frame,Page,History,Focus,Window) 
¨Loader加载资源及Cache 
¨HTML-DOM HTML内容及解析 
¨DOM- DOM CORE内容 
¨XML- XML内容及解析 
¨Render-排版功能 
¨CSS-DOM CSS内容 
¨Binding-DOM与JavascriptCore绑定的功能 
¨Editing-所有与编辑相关的功能 
nJavascriptCore-javascript引擎 
¨API-基本javascript功能
¨Binding与其它功能绑定的功能,如:DOM,C,JNI 
¨DerviedSource自动产生的代码 
¨ForwordHeads头文件,无实际意义 
¨PCRE-Perl-Compatible Regular Expressions  (正则表达式函数库(Perl 兼容)) 
¨KJS-Javascript Kernel 
¨WTF-KDE的C++模板库 
nUnicode-qt unicode 库 
nGToolsMalloc-Google TCMalloc库 
nCURL-url 客户端传输库 
nPlatForm- 与平台相关的功能,如图形图像,字体,Unicode, IO,输入法等.
 

现代浏览器体系结构
n浏览器系统结构图分为四层 
n第一层为业务应用层,用户可在webkit基础上构建各种应用。 
n第二层为插件及第三方库。 
n第三层为webkit平台Porting所需的接口层。 
n最底层为平台和操作系统支持层,提供webkit平台所需的软硬件资源。

最新文章

  1. canvas画圆(一)
  2. HDU5950(矩阵快速幂)
  3. Android学习笔记——权限解释
  4. Ionic 开发环境搭建
  5. JS日历制作获取时间
  6. Round and Round We Go
  7. outlook经常无故崩溃解决办法
  8. Android Glide+CircleImageView实现加载圆形图片列表
  9. 为EF DbContext生成的实体添加注释(T5模板应用)[转]
  10. 海量数据面试题----分而治之/hash映射 + hash统计 + 堆/快速/归并排序
  11. 【Struts2学习笔记(1)】Struts2中Action名称的搜索顺序和多个Action共享一个视图--全局result配置
  12. 交换机VLAN研究
  13. Ajax改动购物车
  14. python 产生token及token验证
  15. Apache服务器中设置端口映射和反向代理的方法
  16. C++顺序容器之deque初探
  17. 软件架构设计学习总结(1):标准Web系统的架构分层
  18. 造轮子 | 怎样设计一个面向协议的 iOS 网络请求库
  19. OpenGL学习脚印:深度測试(depth testing)
  20. Spring 加载配置文件的方式

热门文章

  1. 【7】.net WebAPI Owin OAuth 2.0 密码模式验证实例
  2. ajax success和error接收了哪些状态码
  3. SLF4+Logback 使用及配置
  4. jsp技术知识点
  5. UVA 562(01背包)
  6. Excel2010条件格式的位置
  7. Thymeleaf学习记录(8)--表达式基本对象
  8. PoPo数据可视化周刊第一期
  9. 用CSS3 & jQuery创建apple TV海报视差效果
  10. 如何用Fireworks制作经典的扫光字GIF动画