时间:2021-12-03|浏览:413
Arbitrum和Optimism是以太坊Layer2扩展的主要项目是Rollup技术核心的二层扩展符合以太网未来的发展方向。
但是,面对未来丰富的生态应用预期,需要虚拟机来实现编辑能力。ollp技术核心使这个方向成为实现稍微困难的技术需求。目前两者都局限于虚拟机不成熟。限制了这一层的编辑能力。
今天本文中,我们将摘录资料来了解Arbitrum虚拟机网络设计原理。
AVM设计的起点是基于以太网虚拟机 (EVM),因为Arbitrum目标是高效地执行EVM编写或编译程序,所以Arbitrum并未更改EVM大多数设计。AVM采用EVM数据类型和EVM操作指令等。
这样看来,AVM和EVM两者的区别来自Arbitrum的layer2需求和Arbitrum多轮挑战协议。
执行与证明
与EVM架构不同,Arbitrum需要支持本地执行和信用证明。VM该系统通过重新执行有争议的代码来解决争议,而Arbitrum依靠形成最终证明的挑战协议来解决争议。
Arbitrum我希望在当地可信的环境中优化速度,因为当地执行是常见的情况。系统很少需要证明,但需要始终保持准备证明的状态。
操作系统
Arbitrum使用2层操作系统ArbOS。ArbOS控制单独合同的执行,隔离它们,跟踪它们的资源使用情况。
此外,上述功能是在2层可信软件中执行的,而不是像以太网那样将可信添加到1层网络建设的强制性规则中,这样参与者将从2层较低的计算和存储成本中受益,而不是将这些资源成本作为1层EthBridge管理合同的一部分,增加成本。
Merkleize
任何依赖断言和争议解决(至少包括所有总结协议)的两层协议都必须定义一个规则,用于处理虚拟机的完整状态erkle哈希。这个规则必须是架构定义的一部分,因为它依赖于解决争议。
维护的Merkle当需要重新计算时,哈希也需要保持有效。这将对构建内存产生一些影响。任何大型和可变的存储结构对M都有影响erkleize都很贵,Merkleize的算法必须是架构规范的一部分。
AVM该架构通过只有大小有限、不可变的内存对象(元组)来满足这一需求,这些对象可以通过引用包含其他元组来满足。元组不能当场修改,但有一个指令可以复制带修改的元组。这允许构建树结构,其行为类似于大型平面存储器。通过访问内部使用元组的库,应用程序可以使用大型平面数组和键值存储等功能。
元组的语义不可能创建元组的循环结构,因此 AVM 通过使用引用计数和不可变结构,可以安全地管理元组。每个元组值的哈希只需要计算一次,因为内容是不可变的。
代码点
代码的常规组织是存储指令的线性阵列,需要保持指向下一个指令的程序计数器。使用这种传统方法证明执行指令需要对数时间和空间,因为它必须提供Merkle证明当前PC下的指令。
AVM使用这种传统的执行方法,但它增加了一个功能,使证明和证明检查需要恒定的时间和空间。为了证明,程序计数器被当前代码点哈希值取代,这是机器状态的一部分。
在正常执行中(无需证明时),通常只使用传统架构 PC 值。然而,当需要证明时,证明人可以使用搜索表获得任何相关信息。 PC 对应的代码点哈希值。
用戶喜愛的交易所
已有账号登陆后会弹出下载