Polkadot支持的双虚拟机执行栈是什么

原文作者:PaperMoon团队

Polkadot 的智能合约平台支持两种不同的虚拟机(VM)架构,为开发者在选择执行后端时提供了更高的灵活性。这种设计在即时的以太坊兼容性长期的技术创新 之间取得了平衡,使开发者既可以通过 Rust Ethereum Virtual Machine(REVM)部署无需修改的 EVM 合约 ,也可以通过 PolkaVM(PVM)针对更高性能进行优化。

这两种 VM 共享同一套基础设施,包括 RPC 接口、开发工具支持以及预编译合约(precompiles)。下文将对两种架构进行对比,并帮助你根据项目需求选择合适的 VM。

REVM 后端

REVM 后端是一个完整的、用 Rust 实现的以太坊虚拟机,使 Solidity 合约可以在 无需任何修改 的情况下运行在 Polkadot Hub 上。

核心优势

• 零修改部署:可直接部署现有的以太坊合约

• 完整的 EVM 兼容性:与以太坊 EVM 行为完全一致,适用于审计工具和字节码分析

• 熟悉的开发工具链:支持 Hardhat、Foundry、Remix 等主流以太坊开发工具

• 快速上线:无需迁移成本,即可在 Polkadot 上运行合约

• 成熟的生态基础设施:继续使用你已经熟悉的以太坊工具生态

工作原理

REVM 使以太坊开发者能够在不改变合约代码或开发流程的前提下,将项目无缝迁移至 Polkadot,同时享受更高的性能和更低的交易费用。

架构说明

Revive Pallet

pallet_revive 是负责执行智能合约的运行时模块。它通过以下流程处理以太坊风格的交易:

复制代码
用户 / dApp
   ↓
以太坊 JSON RPC 代理
   ↓
区块链节点
   ↓
pallet_revive

执行流程

  1. 提交以太坊交易

  2. 将交易重新封装为 Polkadot 兼容格式

  3. 处理交易

  4. 解码以太坊交易

  5. 执行合约

  6. 返回执行结果

  7. 转发结果

  8. 返回以太坊兼容的响应

这种基于代理的设计避免了对节点二进制文件的修改,从而保持了不同客户端实现之间的兼容性。同时,保留原始的以太坊交易数据,使现有工具可以继续处理熟悉的交易格式,大大降低了迁移成本。

另一种选择:PVM 后端

对于需要极致性能的高级使用场景,Polkadot Hub 还支持 PVM(Polkadot Virtual Machine)后端。PVM 基于 RISC-V 架构,在计算密集型工作负载下可提供更高的性能优化。Solidity 合约可以通过 resolc 编译器编译为 PVM 字节码。

对于大多数开发者而言,建议优先从 REVM 开始,以获得最简单、最完整的以太坊兼容体验;当项目对性能有明确需求时,再考虑使用 PVM。

什么是PVM?

PolkaVM 是一个基于 RISC-V 的通用型用户态虚拟机。

了解更多看这里:https://github.com/paritytech/polkavm

原文链接:https://docs.polkadot.com/smart-contracts/for-eth-devs/dual-vm-stack/

相关推荐
IvorySQL4 小时前
PostgreSQL 日报| PostgreSQL 19 默认 WAL 压缩算法(8 月 8 日)
数据库·postgresql·区块链
北冥you鱼6 小时前
DEX 合约接口设计:从核心功能到最佳实践
区块链
大鱼>1 天前
EVM字节码执行引擎深度解析:从Opcodes到Gas计费
区块链
大鱼>1 天前
共识算法:从PBFT到HotStuff的拜占庭容错演进
区块链·php·共识算法
磐链科技2 天前
区块链钱包开发新范式:如何用原生技术打造下一代Web3入口
web3·区块链
水无痕simon2 天前
15 转账对接文档
java·区块链
汇策研习社3 天前
双指标共振交易体系:GMMA趋势骨架 + MACD动能验证实战全解
大数据·人工智能·信息可视化·金融·区块链·fastbull
ZDGJ60993 天前
一文理清国际期货各大品类
大数据·区块链
Web3李李3 天前
如何选择适合自己的Web3项目本位模式?金本位与币本位选型指南
web3·区块链·软件开发·金本位·币本位·dapp经济模型设计·defi质押理财
磐链科技3 天前
区块链怎么实现经济效益,现在及未来的经济前景如何?
区块链