OKEx交易所注册(获10%好友返利):https://www.okx.com/join/8581013
币安交易所注册(20%手续费减免):https://www.binance.com/zh-CN/register?ref=38069452
总结
虚拟机通常是真实计算机的表示,提供实际硬件、系统调用和其他内核功能的软件抽象。 以太坊虚拟机 (EVM) 是以太坊网络的组件,用于管理智能合约的部署和执行。 以太坊虚拟机的指令集是图灵完备的,允许部署在网络上的合约执行常规计算机程序可以执行的任何任务。 以太坊 2.0 将用 eWASM 取代 EVM,它允许网络部署任何编译到 WebAssembly 的代码,从而使系统更快、更高效。自七年前首次亮相以来,以太坊对分布式网络的影响仅次于比特币。去中心化经济的愿景始于。然而,尽管迄今为止已经经历了十多年的发展,但世界上第一个加密货币仍远未准备好进入主流。
比特币被概念化为日常支付网络,如今几乎不被用作点对点电子现金系统。其无与伦比的市场价格上涨推动该行业将其更多地视为一种价值储存手段,但它可以做的不仅仅是转移代币。
在 Vitalik Buterin 提出这个想法仅仅两年后,它就上线了2013 年和之后的一年。从那时起,以太坊一直在不断发展,现在是世界上使用最活跃的区块链网络。以太坊开创了可编程智能合约的概念,为区块链带来了一个服务世界,影响了从 ICO 到收益农业的各种趋势。
什么是智能合约?
智能合约是自动执行的代码指令片段,买卖双方之间的协议条款直接写入其中。该代码管理区块链相关各方之间的安排,允许网络参与者进行受控交易,而无需中央机构、监管框架或外部执行系统。
美国计算机科学家 Nick Szabo 于 1994 年首次提出,他最初将智能合约定义为基于合约条款执行的计算机化交易协议。 Szabo 早在比特币出现之前就创造了一种虚拟货币,他于 1998 年发明了 Bit Gold。他的智能合约目标是扩展以电子方式转移价值的功能。
Szabo 还提议将智能合约用于衍生品和债券等合成资产,创建通过以各种方式组合不同金融工具形成的证券。当时,Bit Gold 的创造者本人曾表示,这最终会导致复杂的支付期限结构被内置到标准化合约中,由于其计算机化分析,交易成本低。
事实证明,他是对的。事实上,早在有人听说区块链之前,Szabo 在他的论文中所做的许多预测就已经成为现实。例如,今天,衍生品合约主要通过计算机网络使用复杂的期限结构进行交易。
以太坊是过去几十年概念化思想的汇编,在目前的状态下,它实际上与比特币非常相似。虽然升级将改变网络,但今天,它们都使用耗电的工作量证明算法。然而,以太坊的核心是它与当时开发的任何东西的区别,也是当今网络能力的基础。
什么是以太坊虚拟机 (EVM)?
以太坊虚拟机 (EVM) 是一种计算引擎,类似于其他虚拟机,如微软的 .NET 框架,甚至一些字节码编译语言的解释器。 EVM 是管理智能合约部署和执行的以太坊网络的组件。虽然 EVM 不需要从事简单的价值转移,它确实计算网络状态的更新。
用外行的话来说,EVM 是一台“世界计算机”,拥有自己的永久数据存储和遍布全球的分散节点,处理数百万个可执行文件对象。它还具有基于堆栈的架构,将所有内存中的值存储在一个堆栈中,并使用 256 位的字长来支持椭圆曲线运算和本机散列。
EVM 具有许多可寻址的数据组件,例如包含已执行智能合约字节码的不可变程序代码 ROM 和每个位置初始化为零的易失性存储器。由于以太坊客户端梳理经过验证的区块以确定要部署哪些智能合约,因此执行顺序是在 EVM 之外组织的。这意味着它没有调度能力,使得以太坊类似于没有系统接口处理或硬件支持的单线程世界计算机。
什么是虚拟机?
虚拟机通常是真实计算机的表示,提供实际硬件、系统调用和其他内核功能的软件抽象。在这种情况下,以太坊虚拟机只是一个计算引擎,在比传统虚拟机更受限制的环境中运行。
与 Java 虚拟机规范类似,EVM 仅提供计算和存储的抽象。 JVM 旨在为应用程序运行时提供与平台无关的环境,从而实现跨各种硬件/软件组合的兼容性。与 Java 虚拟机一样,EVM 也需要将高级编程语言编译成字节码指令集。
以太坊虚拟机是如何工作的?
以太坊虚拟机的指令集允许部署在网络上的合约执行常规计算机程序可以执行的任何任务。流行的用例包括创建符合 ERC-721 标准以及遵循 ERC-721 标准的可替代代币。这些代币具有各种属性,可用于众筹、去中心化金融市场、预测市场,在某种程度上,甚至用于游戏。
但是,这种能力伴随着一个重要的警告——一些程序可能需要很长时间才能执行。这被称为“停机问题”,并使以太坊网络面临运行永无止境的程序的风险。问题是程序不能仅仅通过检查代码就被标记为无限循环——程序必须被执行。如果没有调度程序,这样的程序会完全停止网络,但幸运的是以太坊有一个聪明的方法来处理这个问题。
什么是以太坊 Gas?
使用称为网络的概念需要为其计算成本付费。在执行了某个最大计算之后,在为交易提供燃料的气体耗尽后执行结束,EVM 停止程序。这意味着 EVM 只是一个准图灵完备的机器——它运行你扔给它的任何程序,但前提是程序在使用一定的计算能力后结束。
在以太坊上,这个限制并不是一成不变的,网络参与者可以付费将其增加到称为“区块气体限制”的最大值。随着时间的推移,网络可以同意增加这个上限,但是有合同调用在任何给定实例中可以消耗的计算量的限制。超过此限制的交易将被终止。
EVM 对网络的总吞吐量还有一些其他限制。它的操作码规范自创建以来就没有改变过,也没有针对不同的硬件平台进行优化。此外,EVM 必须处理如此大量的不同操作,这使得它比它本来可以做的慢得多。
这会造成运营瓶颈,极大地影响区块链的效率。自从最初的设计以来,EVM 本身并没有太大的发展gn,限制了平台对编写智能合约代码的工具和语言支持。
EVM 的优势
EVM 是一个非常强大的沙盒堆栈,集成到每个以太坊全节点中,负责部署以编译为 EVM 字节码的代码编写的智能合约。这将机器代码与网络的其余部分、其文件系统以及主机节点上的任何进程隔离开来,网络上的每个节点都运行具有相同指令集的实例。
EVM 的局限性以及它如何解决这些问题?
然而,即使有令人难以置信的提议和对网络的创新补充,例如 rollups、Plasma 和 ,除非基础层能够以最高效率运行,否则它所能达到的效果总会受到限制。
为了解决这些问题,以太坊 2.0 将用 eWASM 替换 EVM,这允许网络部署任何编译到 WebAssembly 的代码,从而使系统更快、更高效。 eWASM 实施也将非常安全、高度兼容,并使网络能够利用标准硬件功能以接近原生的速度运行智能合约。
由于 eWASM 将支持更广泛的编程语言,它还将有助于使以太坊网络更具互操作性。借助竞争性智能合约平台(例如使可互操作成为现实),这绝对是升级到 .
的一个关键方面。以太坊虚拟机的意义是什么?
以太坊虚拟机是以太坊平台的重要组成部分,对其共识引擎至关重要。通过为任何人创建一个无需信任的、确定性的环境来执行代码,以太坊正在引领世界处理金钱和金融的方式发生转变。
对于在 EVM 上实现的每条指令,网络都会以 gas 单位跟踪相关的执行成本,并保留此数量可确保区块链永远不会遇到一个不断运行的算法。这保证了即使执行失败,验证者也至少收到 gas 费用,并防止任何合约运行时间超过系统允许的时间。
当以太坊收到交易时,验证器会确保 EVM 在其部署期间不会遇到任何异常,并验证与其执行相关的信息。 EVM 不像比特币那样对每个金融交易向参与者收费,而是支持按软件指令定价的服务。作为一个图灵完备的环境,以太坊在技术上是一种全球去中心化的通用计算机,最终可能会扮演我们今天所知道的互联网的角色。
以太坊虚拟机的未来是什么?
EVM 远非完美。事实上,根据以太坊开发人员 Lane Rettig 的说法,EVM 是在没有“大量设计思维”的情况下创建的,以太坊开发社区的许多杰出成员都认同这种观点。虽然它在内部非常一致,但 EVM 在构建时并未考虑到实际实现。
然而,随着以太坊 2.0 转向 eWASM,网络正在将效率置于正确性之上。 WebAssembly 旨在更接近实际的硬件指令,使其在翻译代码逻辑方面做得更好。由于 WASM 与机器指令一对一映射,因此它可能会显着提高网络的性能。
从文件共享经济和点对点众筹到出租未使用的硬盘空间和分散的社交媒体平台,以太坊的未来看起来一片光明。互联网是当今最有价值的全球网络,就像 TCP/IP 的发展如何导致我们热爱和崇拜的万维网一样,区块链技术和以太坊为未来所拥有的东西可能同样非凡。
OKEx交易所注册(获10%好友返利):https://www.okx.com/join/8581013
币安交易所注册(20%手续费减免):https://www.binance.com/zh-CN/register?ref=38069452
没有评论: