"理解 Cartesi 虚拟机" 这部分的内容是在讨论应用特定的 Rollups 带来的计算可扩展性,我们可以如何利用它。正如我们在《理解 Cartesi Rollups》的第二部分(https://cartesi.io/blog/understanding-cartesi-rollups-pt2/)中所解释的那样,这使我们能够在设计灵活性和抽象层面上进行工作。也就是说,Cartesi 允许开发者使用熟悉的工具并重新利用现有的开源代码中存在的知识和工作,以构建更好的去中心化应用程序。
这其中的好处在 Cartesi 技术的另一个关键组成部分中得以展示:Cartesi 虚拟机,或称 CVM.
什么是虚拟机?
首先,让我们了解一下什么是虚拟机。虚拟机简单来说是能够模拟实际计算机上的所有工作的程序。我们可以将其视为计算机的数字版本,其中包括物理计算机的所有组件(CPU、内存等),但它完全存在于虚拟世界中。
虚拟机非常有用,有许多类型的虚拟机用于各种不同的目的。它们可以是流行的编程语言如Java的重要组成部分。它们还可以允许开发者在云中运行应用程序,创建像 Parallels 这样的隔离环境,用于在Mac上运行Windows应用程序,或者为新软件产品的测试提供便利,这都取决于所需的虚拟机类型。
虚拟机在 web3 的上下文中在部署和执行智能合同方面发挥作用。以太坊虚拟机(EVM)开创了在区块链网络之上运行虚拟机的概念,以便开发者可以编程和设计交易。
问题在于,这种虚拟机受制于该网络的时间和空间限制。而且,它专门设计用于运行这些智能合同。即使我们找到了在区块链虚拟机中使用传统编程语言的方法,它们仍然受到这种范式的限制。
尽管从技术上来说仍然是虚拟机,但当前基于区块链的虚拟机的行为方式与正常的物理计算机不同。它们也无法运行用户习惯的那种软件。
正如我们在查看游戏或 DeFi dApps 时所看到的,像 Cartesi Rollups 这样以应用为中心的 Rollups 超越了这一限制 — 它们使我们能够执行超过 36 亿条指令。让我们回到关于我们可以用这个能力做什么的问题。
一种新的用于 web3 的虚拟机
所有这些计算能力的提升使我们能够构建一种更好的虚拟机,用于处理应用特定的 Rollups。这可以让开发者摆脱以太坊虚拟机的有限世界,回到像 Linux 这样的传统开发环境的无限世界。
这正是 Cartesi 虚拟机所做的。CVM 被设计用于与 RISC-V 一起工作,RISC-V 是一种由大公司如NVIDIA、Intel、Google、QUALCOMM和Tencent支持的计算机抽象模型的开放标准。
RISC-V 足够强大,可以运行像 Linux 这样的操作系统以及它所支持的软件。具体来说,Linux 现在可以成为一个区块链操作系统,在这个操作系统上,web3 开发者可以构建超越以太坊虚拟机限制的去中心化应用程序(dApps)。
可验证性
最棒的部分是,发生在 CVM 中的一切都通过 Cartesi Rollups 报告回区块链。因此,CVM 能够提供可验证的计算,享有区块链网络提供的安全性、透明性和不可变性的所有好处。
这使得 CVM 在其属性上独一无二,使其具备有效的争议解决机制。如果有人在 CVM 上运行一个 dApp,涉及的各方都不需要相互信任,因为 CVM 具备以下特点:
自包含:它在与任何外部影响隔离的环境中运行。
可复现:其他人可以获得与其返回的完全相同的结果。
透明:它所做的一切都可以被任何人检查。
总而言之,这意味着在 Cartesi 虚拟机内运行程序的诚实人总是获得完全相同的结果。相反,关于这些结果的不诚实声明可以在区块链上争议解决,以确保诚实的结果将占上风。这一点是真实的,尽管 Cartesi 虚拟机比区块链快了几个数量级。
抽象可扩展性
但也许与 CVM 合作最重要的优势是将抽象可扩展性引入到 web3。这是区块链可扩展性的一个被忽视的方面,对于构建更好的去中心化应用程序至关重要。
我们定义抽象可扩展性如下:“抽象可扩展性是系统整体能力的扩展,它允许编程组件作为新的开发环境的构建模块使用。抽象可扩展性增加了开发者可以执行的重要操作数量,而无需重新构建它们。”
这意味着 CVM 为 web3 开发者提供了能力,通过引用其他不一定在 web3 中的开发者的工作,并将其重复使用为他们自己创作的构建模块,从而构建更好的去中心化应用程序。抽象可扩展性使他们无需“重新发明轮子”,以适应其他区块链虚拟机的限制。
(在这篇文章中深入探讨了这个概念(https://cartesi.io/blog/abstraction-scalability/),其中它被称为“内容可扩展性”。)
web3 开发者现在可以使用的抽象范围包括从 Python 库如 numpy 到构建经典游戏如模拟城市所需的工具。我们谈论的是编程语言、编译器、链接器、性能分析工具、调试器,以及你期望在正常操作系统中拥有的一切。由于 Cartesi 和 CVM 的支持,所有这些内容都可以在链上可验证地运行。
你认为你理解了 Cartesi 虚拟机吗?通过参加 Cartesi Questboard 上的 Grokking Cartesi 虚拟机测验来测试你的知识。
在文档中了解更多关于 CVM 的信息。您还可以通过加入社区,了解 Cartesi 生态系统中发生的一切。
关于 Cartesi
Cartesi 是一种特定于应用程序的汇总协议,具有运行 Linux 发行版的虚拟机,为 DApp 开发人员创造了更丰富、更广泛的设计空间。
Cartesi Rollups 提供模块化扩展解决方案,可部署为 L2、L3 或主权 Rollups,同时保持强大的基础层安全保证。
免责声明
本文章仅供一般参考和信息分享之用,不构成法律、金融或投资建议。本信息的准确性和完整性不受保证,也不应被视为对特定情况的建议。读者应自行进行独立的研究和咨询,以做出任何决策。作者和相关机构对任何因依赖本信息而产生的损失或损害概不负责。在做出任何金融或投资决策之前,强烈建议咨询专业人士以获取个性化的建议。
虚拟货币属于高风险投资品,在做出投资决策前,请咨询相关监管机构是否存在投资亏损风险。
来源:金色财经