Ethereum 源码分析之框架
accounts 实现了一个高等级的以太坊账户管理
bmt 二进制的默克尔树的实现
build 主要是编译和构建的一些脚本和配置
cmd 命令行工具,又分了很多的命令行工具,下面一个一个介绍
/abigen ABI生成器,Application Binary Interface, 应用二进制接口,在以太坊生态系统中,它是一个标准的用来与合约交互的方式
/bootnode 启动一个仅仅实现网络发现的节点
/clef 用来签名交易和数据,同时作为geth账户管理工具的替代
/ethkey 操作以太坊keyfiles的命令行工具
/evm 以太坊虚拟机的开发工具,用来提供一个可配置的,受隔离的代码调试环境
/faucet faucet is a Ether faucet backed by a light client
/geth 以太坊命令行客户端,最重要的一个工具
/internal 内部工具,提供了与用户浏览器交互的实用程序
/p2psim 提供了一个工具来模拟http的API
/puppeth 创建一个新的以太坊网络的向导
/rlpdump 提供了一个RLP数据的格式化输出
/swarm swarm网络的接入点
/util 提供了一些公共的工具
/wnode 这是一个简单的Whisper节点,它可以用作独立的引导节点。此外,可以用于不同的测试和诊断目的
common 提供了一些公共的工具类
consensus 提供了以太坊的一些共识算法,比如ethhash, clique(proof-of-authority)
console 提供JavaScript交互运行环境
containers 容器,提供一些linux系统开发环境和正式环境的dockerfile
contracts 合约
core 以太坊的核心数据结构和算法(虚拟机,状态,区块链,布隆过滤器)
crypto 加密和hash算法
dashboard 提供嵌入在geth里面的一个数据观察仪,用来收集和观察以太坊节点有用的信息
eth 实现了以太坊的协议
ethclient 提供了以太坊的RPC客户端
ethdb eth的数据库(包括实际使用的leveldb和供测试使用的内存数据库)
ethstats 提供网络状态的报告
event 处理实时的事件
internal 内部工具,提供编译、debug、ethapi等
les 实现了以太坊的轻量级协议子集
light 实现为以太坊轻量级客户端提供按需检索的功能
log 提供对人机都友好的日志信息
metrics 提供磁盘计数器
miner 提供以太坊的区块创建和挖矿
mobile 移动端使用的一些warpper
node 以太坊的多种类型的节点
p2p 以太坊p2p网络协议
params 以太坊多种参数
rlp 以太坊序列化处理
rpc 远程方法调用
signer 签名机构,包含规则、存储等
swarm swarm网络处理
tests 测试
trie 以太坊重要的数据结构Package trie implements Merkle Patricia Tries
whisper 提供了whisper节点的协议。
Ethereum 源码分析之框架的更多相关文章
- [Abp vNext 源码分析] - 1. 框架启动流程分析
一.简要说明 本篇文章主要剖析与讲解 Abp vNext 在 Web API 项目下的启动流程,让大家了解整个 Abp vNext 框架是如何运作的.总的来说 ,Abp vNext 比起 ABP 框架 ...
- $Django cbv源码分析 djangorestframework框架之APIView源码分析
1 CBV的源码分析 #视图 class login (View): pass #路由 url(r'^books/$', views.login.as_view()) #阅读源码: #左侧工程栏--- ...
- SQLmap源码分析之框架初始化(一)
SQLmap是现在搞web人手一个的注入神器,不仅包含了主流数据库的SQL注入检测,而且包含提权以及后渗透模块.基于python2.x开发而成,使用方便.所以研究web安全少不了分析源码,学习代码的同 ...
- [ethereum源码分析](3) ethereum初始化指令
前言 在上一章介绍了关于区块链的一些基础知识,这一章会分析指令 geth --datadir dev/data/02 init private-geth/genesis.json 的源码,若你的eth ...
- TOMCAT源码分析(启动框架)
建议: 毕竟TOMCAT的框架还是比较复杂的, 单是从文字上理解, 是不那么容易掌握TOMCAT的框架的. 所以得实践.实践.再实践. 建议下载一份TOMCAT的源码, 调试通过, 然后单步跟踪其启动 ...
- Activiti源码分析(框架、核心类。。。)
http://jiangwenfeng762.iteye.com/blog/1338553 Activiti是业界很流行的java工作流引擎,关于Activiti与JBPM5的关系和如何选择不是本文要 ...
- go ethereum源码分析 PartIV Transaction相关
核心数据结构: core.types.transaction.go type Transaction struct { data txdata // caches hash atomic.Value ...
- [ethereum源码分析](5) 创建新账号
前言 在上一章我们介绍了 ethereum运行开启console 的过程,那么在这一章我们将会介绍如何在以太坊中创建一个新的账号.以下的理解可能存在错误,如果各位大虾发现错误,还望指正. 指令分析 指 ...
- [ethereum源码分析](4) ethereum运行开启console
前言 在上一章我们介绍了 ethereum初始化指令 ,包括了系统是如何调用指令和指令的执行.在本章节我们将会介绍 geth --datadir dev/data/ --networkid cons ...
随机推荐
- PHP Functions - arsort()
<?php $characters = array('a','b','c','d','e','f'); arsort($characters); print_r($characters); /* ...
- 用C#开发的双色球走势图(原创)值得园友拥有(二)接上一篇
昨晚由于时间的原因只写了一部分内容,今天将这一部分内容补充完毕,多谢各位园友的支持. 这是用C#开发的双色球走势图(原创)值得园友拥有 新的园友可以看昨晚写的内容,以免脱节.首先回复园友的评论,有说好 ...
- [翻译]NUnit---Range and Repeat Attributes(十五)
RangeAttribute (NUnit 2.5) Range特性用于为参数话测试方法的参数的值范围指定一个值,与Random特性一样,NUnit会将每个参数的值组合为一些了测试用例,所以如果为一个 ...
- Install Nginx on CentOS 7
To set up the yum repository for RHEL/CentOS, create the file named /etc/yum.repos.d/nginx.repo with ...
- selenium下拉框踩坑埋坑
本文来自网易云社区 作者:王利蓉 最近web端全站重构,所有的页面都大大小小都有些变动,UI就全军覆没了,用例从登录改,改到个人信息页面发现根以前的实现方式完全不一样,这可怎么解决 1.以前的实现(o ...
- pageadmin CMS网站制作教程:模板中的站点数据调用
pageadmin CMS网站建设教程:模板中的站点数据调用 1.获取当前站点Id,返回int数字 Html.CurrentSiteId() 2.获取当前站点url地址,返回string字符串 Htm ...
- pageadmin CMS网站建设教程:模板中如何实现信息数据共享
pageadmin CMS网站制作教程:模板中如何实现信息数据共享 很多时候信息数据需要共享,一个最常用的应用场景就是手机版(独立手机,非响应式)本共享pc版本数据,下面以这个场景为例讲解. 假设手机 ...
- Flask基础-配置,路由
一,配置文件 flask中的配置文件是一个flask.config.Config对象(继承字典),默认配置为: { 'DEBUG': get_debug_flag(default=False), 是否 ...
- 深度认识 Sharding-JDBC:做最轻量级的数据库中间层
转自: https://juejin.im/entry/5905ac37a22b9d0065e1199c 基于关系型数据库的水平扩展方案有很多开源的解决方案,但成熟稳定的产品凤毛麟角.当当自研的数据库 ...
- 分布式ehcache缓存
今天在这里了记录一下学习ehcache分布式集群的过程. ehcache的三种最为常用集群方式,分别是 RMI.JGroups 以及 EhCache Server . 这里主要讲一下rmi方式. 1. ...