首页>>资讯>>学院

一文读懂虚拟机 (VM)

2025-09-15 13:55:00 0

您是否想过在 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 工具和平台背后的运作机制。

声明:本网站所有相关资料如有侵权请联系站长删除,资料仅供用户学习及研究之用,不构成任何投资建议!