要点
虚拟机 (VM) 让您在同一设备上运行不同操作系统或应用,无需额外硬件支持。
虚拟机非常适合安全测试新软件、尝试不同系统或隔离潜在风险程序。
以太坊虚拟机 (EVM) 等 VM 使智能合约和去中心化应用 (DApp) 能在全球计算机网络上稳定执行。
虽然 VM 提供了更高的灵活性与控制权,但在性能、资源利用和复杂性方面也存在一定限制。
简介
您是否想过在 MacBook 上运行 Windows,或在不更换操作系统和不购买新电脑的情况下测试 Linux 应用?虚拟机 (VM) 可以创建一个隔离环境,让不同的操作系统和应用在同一设备上安全运行。虚拟机也广泛应用于区块链网络,为智能合约和去中心化应用 (DApp) 提供支持。
什么是 VM?
VM 就像一台“虚拟电脑”,只需点击几下即可设置完毕,无需额外硬件。它允许您安装操作系统、保存文件、运行应用并连接网络,而这一切都在现有计算机(即主机)内完成。
主机系统会在后台提供内存、计算能力和存储空间,确保 VM 的平稳运行,这在需要使用仅支持其他操作系统的软件时尤为方便。
VM 实际上如何运作?
在后台,一种称为“虚拟机管理程序”(hypervisor) 的软件负责管理一切。它会将计算机的物理资源(如 CPU、随机存储器 (RAM) 和存储空间)划分出来,供多个 VM 同时使用。
虚拟机管理程序主要分为两类:
第 1 类(裸机型):直接安装在硬件上,常用于数据中心或云平台,追求高性能和高效率。
第 2 类(托管型):运行在常规操作系统上(类似于 App),更适合开发和测试环境。
当 VM 配置完毕后,您就可以像使用一台真正的电脑一样启动它,并安装软件、浏览网页,甚至开发应用。
为什么要使用 VM?
1. 测试新的操作系统
借助 VM,您可以尝试不同的操作系统,而不会影响主机。您可以将其视为一个独立、安全的“实验环境”。
2. 隔离潜在的风险软件
想要打开一个来源不明的文件,或测试一个不熟悉的应用?在 VM 中运行它们更为安全,即使遇到恶意软件或系统崩溃,也不会影响您的主机。
3. 运行旧版或已停用的软件
有些程序只能在 Windows XP 等旧系统上运行。通过 VM,您可以重建这种环境,继续使用新设备不兼容的软件。
4. 跨平台开发与代码测试
使用 VM,开发者可以轻松在不同操作系统上测试代码,模拟新应用在不同环境中的运行效果。
5. 为云服务提供支持
许多云服务(如 AWS、Azure、Google Cloud)都基于 VM 提供。当您启动云端实例时,本质上就是在远程数据中心中启动了一台 VM,用来托管网站、App 或数据库。
区块链网络如何使用 VM?
传统的 VM 主要用于隔离环境(沙盒),而在区块链网络中,VM 则是运行智能合约的引擎。举例来说,通过以太坊虚拟机 (EVM),开发者可以用 Solidity、Vyper 或 Yul 等语言编写智能合约,并将其部署到以太坊及其他 EVM 兼容网络上。EVM 可确保网络中的所有节点在创建智能合约或与之交互时遵循相同规则。
不同的区块链网络会根据自身设计目标开发专属 VM:有的追求速度与可扩展性;有的则侧重于安全性与开发灵活性。NEAR 和 Cosmos 使用基于 WebAssembly (WASM) 的 VM,支持以多种编程语言编写的智能合约。
Sui 等区块链网络采用 MoveVM,可运行以 Move 语言编写的智能合约。Solana 区块链使用定制的运行时,称为 Solana Virtual Machine (SVM),专为并行处理交易和高频网络活动而设计。
虚拟机的实际运作
虽然用户平时不会直接感知到 VM 的存在,但每次与去中心化应用 (DApp) 交互时,它们都在后台运行:
去中心化金融 (DeFi) 交易:如果您使用 Uniswap 等 DeFi 应用兑换代币,交易会由运行在 EVM 内的智能合约来执行。
NFT 铸造:当您铸造 NFT 时,VM 会运行代码来追踪 NFT 的所有权,并在买卖或转移时更新记录,确保 NFT 的所有权信息准确无误。
Layer 2 汇总:在使用 Layer 2 汇总时,交易可能由专门的 VM 来执行,例如 zkEVM。zkEVM 不仅使零知识汇总能够运行智能合约,还能充分利用零知识证明 (ZKP)。
VM 的限制
1. 性能管理成本:VM 在硬件与执行的代码之间增加了一层,因此运行速度通常比直接在实体机器上执行 App 要慢,或需要消耗更多计算资源。
2. 操作复杂:维护 VM(尤其是在云端基础架构或区块链网络中)需要投入大量精力进行设置和更新。这不仅耗时,往往还需要专业的工具和知识。
3. 兼容性问题:智能合约通常针对特定 VM 环境而设计。例如,以太坊的合约代码若要在 Solana 等不兼容的区块链上运行,就必须进行修改或重写。这意味着开发者若希望在多个环境中部署同一 App,需要投入更多的时间和精力。
结语
VM 在传统计算机和区块链系统中都发挥着重要作用。它们让用户能够运行不同的操作系统、安全地测试软件,并在同一硬件上同时执行多项任务。
在区块链领域,VM 可为智能合约和去中心化应用 (DApp) 的运行提供支持。即使您不是技术专家,了解 VM 的基本原理也有助于您更好地认识许多 DeFi 工具和平台背后的运作机制。
延伸阅读
免责声明:本文内容按“原样”提供,仅作一般资讯及教育用途,不构成任何陈述或保证。本文不应解释为财务、法律或其他专业建议,且未推荐您购买任何特定产品或服务。您应自行向合适的专业顾问寻求建议。您所在地区可能不提供本文提及的产品。如本文由第三方投稿,请注意本文观点属于第三方投稿人,不一定反映币安学院的观点。欲知详情,敬请阅读免责声明全文。数字资产价格可能会波动。您的投资价值可能会下跌或上涨,且投资本金可能无法收回。您对自己的投资决策全权负责,币安学院对您可能遭受的任何损失概不负责。本文不构成财务、法律或其他专业建议。欲知详情,敬请参阅我们的使用条款和风险提示。