以太坊原始碼分析(2)go ethereum 目錄大概介紹
go-ethereum專案的組織結構基本上是按照功能模組劃分的目錄,下面簡單介紹一下各個目錄的結構
accounts 實現了一個高等級的以太坊賬戶管理
bmt 二進位制的默克爾樹的實現
build 主要是編譯和構建的一些指令碼和配置
cmd 命令列工具,又分了很多的命令列工具,下面一個一個介紹
/abigen Source code generator to convert Ethereum contract definitions into easy to use, compile-time type-safe Go packages
/bootnode 啟動一個僅僅實現網路發現的節點
/evm 以太坊虛擬機器的開發工具, 用來提供一個可配置的,受隔離的程式碼除錯環境
/faucet
/geth 以太坊命令列客戶端,最重要的一個工具
/p2psim 提供了一個工具來模擬http的API
/puppeth 建立一個新的以太坊網路的嚮導
/rlpdump 提供了一個RLP資料的格式化輸出
/swarm swarm網路的接入點
/util 提供了一些公共的工具
/wnode 這是一個簡單的Whisper節點。 它可以用作獨立的引導節點。此外,可以用於不同的測試和診斷目的。
common 提供了一些公共的工具類
compression Package rle implements the run-length encoding used for Ethereum data.
consensus 提供了以太坊的一些共識演算法,比如ethhash, clique(proof-of-authority)
console console類
contracts
core 以太坊的核心資料結構和演算法(虛擬機器,狀態,區塊鏈,布隆過濾器)
crypto 加密和hash演算法,
eth 實現了以太坊的協議
ethclient 提供了以太坊的RPC客戶端
ethdb eth的資料庫(包括實際使用的leveldb和供測試使用的記憶體資料庫)
ethstats 提供網路狀態的報告
event 處理實時的事件
les 實現了以太坊的輕量級協議子集
light 實現為以太坊輕量級客戶端提供按需檢索的功能
log 提供對人機都友好的日誌資訊
metrics 提供磁碟計數器
miner 提供以太坊的區塊建立和挖礦
mobile 移動端使用的一些warpper
node 以太坊的多種型別的節點
p2p 以太坊p2p網路協議
rlp 以太坊序列化處理
rpc 遠端方法呼叫
swarm swarm網路處理
tests 測試
trie 以太坊重要的資料結構Package trie implements Merkle Patricia Tries.
whisper 提供了whisper節點的協議。
網址:http://www.qukuailianxueyuan.io/
欲領取造幣技術與全套虛擬機器資料
區塊鏈技術交流QQ群:756146052 備註:CSDN
尹成學院微信:備註:CSDN
相關文章
- open-ethereum-pool以太坊礦池原始碼分析(2)API分析原始碼API
- 以太坊原始碼分析(7)Ethereum 資源分享原始碼
- 以太坊原始碼分析(53)以太坊測試網路Clique_PoA介紹原始碼
- 以太坊原始碼分析(44)p2p-database.go原始碼分析原始碼DatabaseGo
- 以太坊原始碼分析(45)p2p-dial.go原始碼分析原始碼Go
- 以太坊原始碼分析(46)p2p-peer.go原始碼分析原始碼Go
- 以太坊原始碼分析(48)p2p-server.go原始碼分析原始碼ServerGo
- 以太坊原始碼分析(49)p2p-table.go原始碼分析原始碼Go
- 以太坊原始碼分析(50)p2p-udp.go原始碼分析原始碼UDPGo
- open-ethereum-pool以太坊礦池原始碼分析(1)-main入口分析原始碼AI
- 以太坊原始碼分析(1)go-ethereum的設計思路及模組組織形式原始碼Go
- open-ethereum-pool以太坊礦池原始碼分析(3)payouts模組原始碼
- open-ethereum-pool以太坊礦池原始碼分析(4)-policy模組原始碼
- open-ethereum-pool以太坊礦池原始碼分析(5)proxy模組原始碼
- open-ethereum-pool以太坊礦池原始碼分析(6)-redis模組原始碼Redis
- open-ethereum-pool以太坊礦池原始碼分析(7)unlocker模組原始碼
- 以太坊原始碼分析(4)accounts包簡介原始碼
- 以太坊原始碼分析(17)Internal包簡介原始碼
- 以太坊原始碼分析(37)eth以太坊協議分析原始碼協議
- 以太坊原始碼分析(18)以太坊交易執行分析原始碼
- 介紹一個 GitHub 上的 Laravel 以太坊包 Laravel-ethereumGithubLaravel
- 以太坊原始碼分析(14)P2P分析原始碼
- open-ethereum-pool以太坊礦池原始碼分析(1)環境安裝原始碼
- 以太坊原始碼分析(36)ethdb原始碼分析原始碼
- 以太坊原始碼分析(38)event原始碼分析原始碼
- 以太坊原始碼分析(41)hashimoto原始碼分析原始碼
- 以太坊原始碼分析(43)node原始碼分析原始碼
- 以太坊原始碼分析(51)rpc原始碼分析原始碼RPC
- 以太坊原始碼分析(52)trie原始碼分析原始碼
- 以太坊原始碼分析(13)RPC分析原始碼RPC
- 以太坊交易池原始碼分析原始碼
- 以太坊原始碼分析(52)以太坊fast sync演算法原始碼AST演算法
- 以太坊原始碼分析(5)accounts程式碼分析原始碼
- 以太坊原始碼分析(8)區塊分析原始碼
- 以太坊原始碼分析(9)cmd包分析原始碼
- 以太坊原始碼分析(16)挖礦分析原始碼
- 以太坊原始碼分析(35)eth-fetcher原始碼分析原始碼
- 以太坊原始碼分析(20)core-bloombits原始碼分析原始碼OOM