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/

相关推荐
木西13 小时前
深度拆解 Grass 模式:基于 EIP-712 与 DePIN 架构的奖励分发系统实现
web3·智能合约·solidity
kida_yuan14 小时前
【以太来袭】4. Geth 原理与解析
区块链
blockcoach2 天前
刘教链|金融市场中的物理学规律:平方根定律
区块链
Black_mario2 天前
Web3 时代的“伯克希尔”时刻:解析 Jason Hitchcock 与 Greenlane 的 Berachain 主权财库之路
web3
碳链价值3 天前
吴忌寒清仓比特币背后
区块链
blockcoach3 天前
刘教链|BTC的时光机
区块链
China_Yanhy3 天前
入职 Web3 运维日记 · 第 14 日:铸造无形钥匙 —— OIDC 与 CI/CD 施工实录
运维·web3
lsrsyx3 天前
TEBBIT:以安全、创新与服务,重塑您的数字资产交易体验
安全·区块链
lsrsyx3 天前
Icoin:当市场归于理性,强者浮出水面
区块链