EOS 插件依赖关系

EOS version: 1.0.5 update: 2018-06-19
 
EOS插件之间会有一个相互调用与依赖的关系,下面有一张我的画的一张草图,包含了此版本EOS全部插件相互之间的依赖关系,以下:
 
 
 
能够看出全部的业务关系基本上都依赖于chain_plugin和http_plugin这两个插件,下面有一幅EOS整体框架源码图,能够大体浏览下EOS各个模块
 
文件目录说明以下:
 
一、contracts目录
 
这个目录包含了EOS基础合约和示例合约,以及这些合约使用的库:eosiolib库、libc++库、musl库;
 
其中eosiolib库是EOS官方编写的库,libc++库、musl库是外部库。
 
二、plugins目录
 
EOS采用插件化设计,这个目录包含了EOS项目所用到的插件。
更多内容看这里: 从源码分析,EOS的插件化设计
 
三、libraries目录
 
这个目录包含了具体实现代码须要引用的基础类库:
 
  • abi-generator:生成ABI的类库
 
  • appbase:application基础类库
 
  • chain、chainbase:区块链基础类库
 
  • fc:通用函数库
 
  • wasm-jit:WebAssembly JIT编译库
 
 
四、programs目录
 
这个目录包含EOS最终构建的应用程序(eos/build/programs目录下)的源码:
 
  • cleos:命令行客户端
 
  • nodeos:服务端守护进程
 
  • keosd:钱包守护进程
 
  • eosio-abigen:ABI生成器
 
  • eosio-launcher:多节点启动器
 
  • snapshot:配置创世区块和创始相关工具的Web程序
 
 
五、governance目录
 
这个目录包含的不是源代码,而是EOS社区治理文件,以为比较重要,提到这里:
 
  • bp_agreement.md:区块生产者须要遵照的协议
 
  • constitution.md:EOS宪法
 
六、externals目录
 
这个目录包含的是外部项目:
 
 
相关文章
相关标签/搜索