结构

LLVM每日谈之六 LLVM的源码结构

a 夏天 提交于 2019-12-09 21:09:50
作者: snsn1984 这里简单介绍下LLVM的源码结构,让大家知道LLVM的每个文件夹都放的是什么内容。 参考文档: http://llvm.org/docs/GettingStarted.html#getting-started llvm/examples 这个目录主要是一些简单例子,演示如何使用LLVM IR 和 JIT。还有建立一个简单的编译器的例子的代码。 建立简单编译器的文档地址:http://llvm.org/docs/tutorial/ llvm/include 这个目录主要包含LLVM library的公共头文件。 llvm/lib 这个目录包含了大部分的LLVM的源码。在LLVM中大部分的源码都是以库的形式存在的,这样不同的工具之前就很容易共用代码。 llvm/projects 这个目录包含着一些依赖LLVM的工程,这些工程严格来说又不算LLVM一部分。 llvm/runtimes 这个目录包含了一些库,这些库会编译成LLVM的bitcode,然后当clang linking 程序的时候使用。 llvm/test 这个目录是LLVM的测试套件,包含了很多测试用例,这些测试用例是测试LLVM的所有基本功能的。 llvm/tools 这个目录理是各个工具的源码,这些工具都是建立在刚才上面的那些库的基础之上的。也是主要的用户接口。 llvm/utils

chromium浏览器开发系列第三篇:chromium源码目录说明

爷,独闯天下 提交于 2019-12-05 18:37:55
附上上两篇文章地址,方便大家查看: 下载源码 编译源码 上两篇介绍了下载源码和编译源码,这次主要介绍 chromium 的源码目录结构,我也是通过源码和官网结合来跟大家说,如果有说的不准确的,欢迎交流。 另外,官网的不一定准确,他们其实也很懒,所以最主要还是靠自己。官网只能作为一个参考。 Chromium 结构相对两年前变化很大。目录结构依然很清晰,主要有三个部分(不包括其他的库):浏览器,渲染器, webkit 。浏览器是主要的进程,代表所有的 UI 和 I / O 。渲染通常是每个 tab 页的子过程,是由浏览器驱动。 Webkit 做布局和渲染。 简单介绍解决方案文件: 解决方案文件是 src/chrome/chrome.sln 。 启动代码是在 chrome/chrome_initial 项目。 常见的共享库的代码是在 base 项目。此代码是所有项目之间共享, chromium 团队试着让它尽可能的小。 常见的浏览器特定的代码在 chrome/common 项目,它由浏览器和渲染器之间共享。 Webkit 内核代码是在项目 third_party/WebKit (只读) 。之前的 src/ webkit下 为 chromium 对 webkit 的一个封装,现在已经删除 webkit_glue 项目,把一些测试文件移植到 content/ 下,一些文件已经删除。

Cordova(PhoneGap)体系结构(Android)

£可爱£侵袭症+ 提交于 2019-11-26 18:50:37
作者:tonyley 出处: http://my.oschina.net/tonywolf/blog 转载请注明出处 说明 : 本文档只争对 Cordova(PhoneGap) 的 Android 端,基于 Cordova2.1.0 版本。 一.总体结构 Cordova的目标是用HTML,JS,来完成手机客户端的开发,并且是只开发一次可以在各种手机平台上跑,所以理想状态是用JS去控制所有事件。Cordova基于WebView组件。每个继承自DroidGap的Activity对应一个独立的CordovaWebView。Cordova提供了一些列的JS接口来访问Android的native(详细参见http://docs.phonegap.com/en/2.1.0/)。以插件(Plugin)的形式提供自定义接口给JS端访问。 二.一些疑问 1. Cordova框架是如何启动的? 2. 插件是怎么回事?如何工作的。 3. Cordova的官方文档都是说JS如何访问Android的native,那么在Android的native中是否可以访问JS的函数?如何访问? 三.结构解剖 1.Cordova的启动 1) 如何启动 Cordova提供了一个Class(DroidGap)和一个interface(CordovaInterface)来让Android开发者开发Cordova