什么是虚拟机 (VM)?

关键方面

  • 虚拟机 (VM) 允许在同一设备上执行不同的操作系统或应用程序,而无需额外的硬件。

  • 虚拟机非常适合安全地测试新软件,尝试其他系统或隔离可能存在风险的程序。

  • VM如Gate的虚拟机(GVM)允许智能合约和去中心化应用(dApps)在全球计算机网络上可靠地执行。

  • 虽然虚拟机提供灵活性和控制,但它们可能需要在性能、资源使用和复杂性方面进行补偿。

介绍

你是否曾想在你的 MacBook 上运行 Windows,或者试用 Linux 应用而不更改你的操作系统或购买单独的电脑?虚拟机让你能够做到这一点,通过创建一个隔离的环境,在这个环境中不同的操作系统和应用程序可以安全地运行。它们也广泛用于区块链网络中,以支持智能合约和去中心化应用。(dApps)。

什么是虚拟机?

虚拟机就像一台你可以通过几个点击来配置的计算机,无需额外的硬件。你可以安装操作系统、保存文件、运行应用程序并连接互联网,但这一切都发生在你现有的计算机内,也称为宿主机。

你的宿主系统在后台完成繁重的工作,为虚拟机提供内存、处理能力和存储空间,以确保其顺利运行。这在你需要使用只在其他操作系统上可用的软件时尤其有用。

VM是如何真正工作的?

在幕后,一种叫做虚拟机监控器的软件管理着这一切。虚拟机监控器利用你计算机的物理资源,如 CPU、(RAM) 和存储,将其划分以便多个虚拟机(VM)可以同时使用。

存在两种主要类型的虚拟机监控程序:

  • 类型 1 (裸金属):这些直接安装在硬件上,通常用于数据中心或云平台。它们旨在提供性能和效率。

  • 类型 2 (托管): 这些在你的常规操作系统上运行 (作为应用),适合用于测试和开发。

一旦配置了虚拟机,你可以像使用真实计算机一样启动它,安装软件、浏览网页或创建应用程序。

为什么使用虚拟机?

1. 为了测试新的操作系统

通过虚拟机,你可以在不对主计算机进行更改的情况下测试不同的操作系统。这就像在一个安全和独立的空间中尝试一个新系统。

2. 隔离风险软件

你是否需要打开一个你不确定的文件或者尝试一个未知的应用程序?在虚拟机中运行它可以保护你的电脑,因此如果你发现了恶意软件或系统故障,你的主电脑将不会受到影响。

3. 为了运行遗留软件或不可用的软件

某些程序仅在较旧的系统上运行,例如 Windows XP。虚拟机可以重建该环境,让你继续使用可能在当前设备上无法运行的软件。

4. 为了在不同平台上开发和测试代码

虚拟机使开发人员能够在不同的操作系统上测试代码,并模拟新应用程序在不同环境中的表现。

5. 为了推动云

许多云服务(如Gate Cloud)是建立在虚拟机上的。当你在云中启动一个实例时,你是在一个远程数据中心启动一个虚拟机,准备托管网站、应用程序或数据库。

区块链网络如何利用虚拟机

传统的虚拟机是隔离的环境,而区块链虚拟机则充当在区块链网络上执行智能合约的引擎。Gate (GVM) 允许开发者使用 Solidity、Vyper 和 Yul 等语言编写智能合约,并在 Gate 及其他兼容 GVM 的网络上部署。GVM 确保网络中的每个节点在创建或与智能合约互动时遵循相同的规则。

区块链网络根据设计目标实现其自身类型的虚拟机(VM)。有些专注于速度和可扩展性,而另一些则寻求为开发者提供更安全或灵活的选择。像NEAR和Cosmos这样的网络使用基于WebAssembly (WASM)的虚拟机,支持用多种编程语言编写的智能合约。

其他区块链网络如Sui使用MoveVM,该虚拟机执行用Move语言编写的智能合约。区块链Solana使用一个自定义执行环境,通常称为Solana虚拟机(SVM),旨在并行处理交易并处理网络上的大量活动。

虚拟机在行动

你可能没有注意到,但虚拟机在你与去中心化应用(dApps)交互时在后台工作。

  • 如果你使用一个去中心化金融应用(DeFi),比如Gate Swap来交换代币,你的交易将由在GVM中运行的智能合约处理。

  • 如果您正在铸造NFT,虚拟机会执行代码以维护每个NFT的所有者记录。当您进行购买或转让时,虚拟机会更新记录以保持NFT的所有权准确。

  • 如果你使用二层扩展解决方案,您的交易可以由专用虚拟机执行,比如 zkGVM。zkGVM 使得在享受零知识证明的同时执行智能合约成为可能 (ZKP)。

虚拟机的限制

1. 性能过载:虚拟机在硬件和运行的代码之间增加了一层额外的抽象。这可能会导致速度变慢或相比直接在物理机上运行应用程序需要更多的计算资源。

2. 操作复杂性:维护虚拟机 ( 尤其是在云基础设施或区块链网络 ) 中需要大量的配置和更新工作。这将耗费时间,通常需要专业的工具和知识。

3. 兼容性:智能合约通常是为特定的虚拟机环境设计的。在Gate上编写的智能合约代码必须重写或调整才能在像Solana这样的不兼容区块链上运行。这意味着开发人员如果希望在多个环境中发布相同的应用程序,就必须投入额外的时间和精力。

结论

虚拟机在常规计算机的运行以及区块链系统中扮演着重要角色。它们允许您运行不同的操作系统、安全地测试软件,并利用相同的硬件进行多任务处理。

虚拟机也被用于区块链网络中,以推动智能合约和去中心化应用。即使你不是专家,了解虚拟机的工作原理也能让你更好地理解我们使用的许多DeFi工具和平台背后的运作。

查看原文
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 评论
  • 转发
  • 分享
评论
0/400
暂无评论
交易,随时随地
qrCode
扫码下载 Gate App
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)