EOS虚拟机与智能合约详解与分析

EOS虚拟机同经典的EVM,是EOS中运行智能合约的容器,但是从设计上讲它与EOS.IO是分离的。进
一步脚本语言和虚拟机的技术设计与EOS.IO分离。从宏观来讲任何语言或者虚拟机,只要满足条件适
合沙盒模式运行,同时满足一定的运行效率,都可以通过满足EOS.IO提供的API来加入到EOS.IO的消
息传递过程中。以下为github上官方的说明:

The EOS.IO software will be first and foremost a platform for coordinating
the delivery of authenticated messages (called Actions) to accounts. The details 
of scripting language and virtual machine are implementation specific details
that are mostly independent from the design of the EOS.IO technology. Any 
language or virtual machine that is deterministic and properly sandboxed with
sufficient performance can be integrated with the EOS.IO software API.


本文就EOSIO中的智能合约和虚拟机进行分析来从更加全面的角度来看EOS是如何构建和实现。

LLVM相关内容

  • LLVM架构概述
  • LLVM IR格式
  • LLVM IR指令集
  • LLVM IR系统类型
  • LLVM IR内存模型
  • LLVM IR函数调用
  • LLVM IR示例
  • LLVM JIT实现原理
  • LLVM JIT代码示例

WASM相关

  • WebAssembly概述
  • WebAssembly WAST格式介绍
  • WebAssembly WASM格式介绍
  • WASM运行介绍与分析

EOS智能合约

  • EOS智能合约概览
  • EOS智能合约与Action
  • EOS智能合约执行流程
  • EOS智能合约之inline Communication
  • EOS智能合约之Deferred Communication
  • 执行流程示例
  • EOS智能合约示例说明
  • EOS智能合约相关工具

EOS虚拟机分析

  • EOS虚拟机概览
  • EOS虚拟机实现思路分析
  • EOS虚拟机架构概述
  • EOS虚拟机实现与分析
  • EOS虚拟机核心接口
  • EOS虚拟机架构应用层
  • EOS虚拟机客户端合约部署
  • EOS虚拟机服务端合约部署
  • EOS虚拟机服务端合约的调用执行
  • EOS虚拟机Module IR生成
  • EOS虚拟机之VirtualMachine实例化
  • EOS虚拟机之Binaryen底层解释器
  • EOS虚拟机之ModuleInstance的创建
  • Appply接口的实现和调用
  • CallFunction的实现
  • WAVM底层解释器
  • ModuleInstance的生成
  • Apply接口实现和调用
  • InvokeFunction的实现

本文全面的介绍了EOS虚拟机和智能合约相关的技术,文章放于github,地址为:https://github.com/XChainLab/documentation/blob/master/VM/EOS/EOSVMArch.md 希望对EOS感兴趣的开发者有所帮助。

注:本文写于360区块链实验室

猜你喜欢

转载自blog.csdn.net/SunnyWed/article/details/81280835