4.3以太坊虚拟机EVM
01 传统意义上的虚拟机
虚拟机:实际上不是物理计算机,而是一个用来模仿物理计算机的软件环境,但虚拟机可以像物理计
算机一样运行程序。用于托管虚拟机的物理计算机通常可以支持多台虚拟机。另外,不仅在系统层上
有虚拟机的概念,在程序语言上也有虚拟机的概念,比如java 的JVM ,微软的.NET 等。
区块链与创新思维
02 传统意义上的虚拟机
虚拟机是用来解决什么问题呢?
为了抽象掉硬件底层。从系统层来说,硬件和操作系统都越来越多样化了。比如同样是X86的CPU ,
有的支持到SSE4 ,有的只支持MMX,还有的只支持3DNow,如果想要代码跑得快,需要自己去做繁
琐的检测,还要写多份代码来应对。如果其他硬件也出现了各种不同,例如硬盘接口SCSI、IDE、
SATA、iSCSI,3D运算DirectX、OpenGL、3dfx等等,会产生更多不便。于是虚拟机就诞生了,它可
以自动兼容所有硬件。
虚拟机技术基本上都是将硬件层或是系统层进行了一次抽象,以致对应用层屏蔽掉了底层的实现细节,
有利于应用的快速实现和部署。
区块链与创新思维
03 虚拟机的分类
虚拟机按层次来说可以分为下列三大类:高级语言虚拟机、操作系统层的虚拟机和硬件层的虚拟机
• 然而它们的实现越往底层难度就越大。
• 对于一个操作系统,它们的架构层次是:最下层是硬件层,之上是硬件驱动,再之上是操作系统内
核,然后才是操作系统接口和应用程序。我们可以把任何形式的虚拟机都想象成一个容器,在这个
容器里它截获了本该发往底层的指令,自己处理。
• 高级语言虚拟机:是就一个代码解释器,不需要二进制代码,只需要中间代码,然后虚拟机处理后,
再移交给 CPU 和存储结构。虚拟机模拟的是代码的执行。
• 操作系统层的虚拟机:所有操作系统接口调用都会被该容器截获,经过处理后,发送到当前适当的
平台上。
• 硬件层的虚拟机:是最复杂的工程,是虚拟化技术的一大重点,是对硬件层以及硬件驱动层的模拟。
区块链与创新思维
04 区块链虚拟机
区块链怎么支持各个领域的业务逻辑呢?
• 传统的精简指令集计算机的 CPU 只提供了有限的执行指令和存储器,但是各种类型的应用都能在
这台计算机上运行。究其原理,就是因为系统存在一个“虚拟机”将高层语言的实现都转换成了 CPU
的相关执行指令。高层语言提供语法,人们使用高级语言开发相关应用。由低到高的层次结构分别
为:硬件指令,虚拟机,高级语言和应用层。
• 很明显,如果要在区块链里支持各种应用,也需要有这样的层次结构,因此需要区块链提供一套指
令,并且区块链里的虚拟机可以对这些指令作相关的解释。另外,高级语言的实现需要有一个编译
器将实现编译成虚拟机支持的指令。这样,区块链就完美支持了语言和业务的分离,从而可以在区
块链里开发各种业务应用。
区块链与创新思维
05 区块链虚拟机
虚拟机架构组织及运行原理
虚拟机架构的组成部分:
• 指令:区块链系统底层支持的原子操作指令
• 虚拟机:对原子操作指令的解释
• 编译器:将高级语言转换为虚拟机支持的指令
• 高级语言:用于实现在区块链里运行业务应用
还有两个重要的组成部分
• 1. 区块链系统提供的原始API ,用于在编写智能合约需要时,获取系统相关数据或是状态;
• 2. ABI ,全称是application binary interface ,一个智能合约发布后,其他的应用需要知道这个合约
提供了什么功能接口以及数据结构。
区块链与创新思维
06 区块链虚拟机
虚拟机架构组织及运行原理
因此,当所有的部分都就绪后,我们就可以用高级语言和 API 编写符合业务逻辑的智能合约,然
后用相关编译器将智能合约编译成 byte codes ,并且也会生成相关的ABI 描述。经过严格测试后,
就可以将智能合约的 byte codes 和 ABI 以交易的形式发布到区块链中。矿工会验证你交易的合法性,
如果入块成功,将会返回智能合约地址。用户会调用这个合约地址来获取 ABI ,再根据ABI
您可能关注的文档
最近下载
- 完全平方公式课件北师大版数学七年级下册.pptx VIP
- 2024年孤独症康复机构工作总结报告6篇.docx VIP
- 锂离子电池正极材料回收技术进展.pptx VIP
- 考研专业课-历史学基础综合辅导讲义.pdf VIP
- GB50037-2013 建筑地面设计规范.pdf VIP
- 废旧锂电池回收技术与环保意义.pptx VIP
- 华硕主板B760M-P 简体中文版使用手册(华硕B760M-P主板说明书).pdf VIP
- 2025年贵州省高考生物真题卷(含答案与解析).pdf VIP
- 学校校长述职报告 学校校长述职报告PPT (20篇).docx VIP
- 1.3乘法公式课时1-平方差公式(课件)北师大版(2025)数学七年级下册.pptx VIP
原创力文档

文档评论(0)