關鍵要點
虛擬機 (VM) 可讓您在同一裝置上執行不同的作業系統或應用程式,而不需要額外的硬體。
VM 非常適合安全地測試新軟體、試用其他系統或隔離可能有風險的程式。
以太坊虛擬機 (EVM) 等 VM 能使智能合約和去中心化應用程式 (DApp) 在全球電腦網路上可靠地執行。
雖然 VM 可提供靈活性和控制權,但它們在效能、資源利用和複雜性方面也伴隨著妥協。
前言
您是否曾想過在您的 MacBook 上執行 Windows,或在不更換作業系統或購買單獨電腦的情況下測試 Linux 應用程式?VM 可讓您創建一個隔離的環境,使不同的作業系統和應用程式可以安全地執行。它們也廣泛應用於區塊鏈網路,支援智能合約和去中心化應用程式 (DApp)。
什麼是 VM?
VM 就像是一台您只需點擊幾下即可設定的電腦,不需要額外的硬體。您可以安裝作業系統、儲存檔案、執行應用程式並連接到網路,但都是在又稱為主機的現有電腦內執行。
您的主機系統在後台進行繁重的工作,提供記憶體、處理能力和儲存空間,以便 VM 能夠平穩運作。這在您需要使用僅在其他作業系統上提供的軟體時特別有用。
VM 實際上如何運作?
在後台,有一種稱為虛擬機管理程式 (hypervisor) 的軟體管理著這一切。虛擬機管理程式會將中央處理器 (CPU)、隨機存取記憶體 (RAM) 以及儲存空間等電腦的實體資源進行劃分,以便讓多個 VM 可以同時使用。
虛擬機管理程式有兩種主要類型:
第 1 類 (裸機):這些虛擬機管理程式會直接安裝在硬體上,通常用於資料中心或雲端平台。它們是為了效能和效率而打造。
第 2 類 (託管):這些虛擬機管理程式會在一般作業系統 (如應用程式) 上執行,適合用於測試和開發。
VM 設定完成後,您就可以像使用真正的電腦一樣啟動它並安裝軟體、瀏覽網頁或建立應用程式。
為什麼要使用 VM?
1. 測試新的作業系統
使用 VM,您可以測試不同的作業系統,而無需對主電腦進行任何變更。這就像在一個安全的、獨立的空間中試用新系統。
2. 隔離有風險的軟體
需要開啟一個您不確定的檔案或測試一個不熟悉的應用程式嗎?在 VM 中執行它可以保護您的電腦,因此如果您遇到惡意軟體或系統當機,您的主電腦也不會受到影響。
3. 執行舊版或已不提供的軟體
有些程式只能在 Windows XP 等舊系統上執行。VM 可以重建該環境,讓您繼續使用可能無法在現有裝置上執行的軟體。
4. 跨平台開發和測試程式碼
VM 使開發人員更容易在不同的作業系統上測試程式碼,並模擬新應用程式在不同環境中的行為。
5. 為雲端提供支援
許多雲端服務 (如 AWS、Azure 和 Google 雲端硬碟) 都建構於 VM。當您啟動雲端執行個體時,您是在遠端資料中心中啟動一個準備好代管網站、應用程式或資料庫的 VM。
區塊鏈網路如何使用 VM
傳統的 VM 是隔離的沙盒,而區塊鏈 VM 則是在區塊鏈網路中執行智能合約的引擎。以太坊虛擬機 (EVM ) 可讓開發人員使用 Solidity、Vyper 和 Yul 等語言編寫智能合約,並將其部署到以太坊及其他與 EVM 相容的網路上。EVM 會確保網路各節點在創建或與智能合約互動時遵循相同的規則。
區塊鏈網路會根據設計目標實施其專屬的 VM 類型。有些專注於速度和可擴展性,而有些則致力於為開發人員提供更安全或更靈活的服務。NEAR 和 Cosmos 等網路使用基於 WebAssembly (WASM) 的 VM,支援使用多種程式語言編寫的智能合約。
其他區塊鏈網路如 Sui 則使用 MoveVM 執行使用 Move 語言編寫的智能合約。Solana 區塊鏈使用通常稱為 Solana 虛擬機 (SVM) 的自訂運行時間,旨在並行處理交易並處理大量的網路活動。
虛擬機的實際運作
您可能不會注意到它們,但每當您與去中心化應用程式 (DApp) 互動時,VM 都在後台運作。
如果您正在使用 Uniswap 等去中心化金融 (DeFi) 應用程式進行代幣交換交易,那麼您的交易將由在 EVM 內部執行的智能合約處理。
如果您正在鑄造 NFT,VM 會執行程式碼追蹤每個 NFT 的所有者。當您進行購買或轉移時,VM 會更新記錄,確保 NFT 的所有權保持準確。
如果您正在使用第 2 層匯總,您的交易可能會由專門的 VM 執行,例如 zkEVM。zkEVM 使零知識匯總能夠執行智能合約,同時受益於零知識證明 (ZKP)。
VM 的限制
1. 效能負擔:VM 在硬體與執行的程式碼之間多增加了一層,因此可能會比直接在實體機器上執行應用程式的速度慢,或需要更多的運算資源。
2. 操作複雜性:維護 VM (尤其是在雲端基礎架構或區塊鏈網路中) 需要花費大量精力進行設定和更新,因此需要耗費時間,並且通常需要專業的工具和知識。
3. 相容性:智能合約通常是為特定的 VM 環境所設計。為以太坊上的智能合約所編寫的程式碼需要重新編寫或調整,才能在 Solana 等其他不相容的區塊鏈上執行。這意味著開發人員如果想要在多個環境中啟動同一應用程式,就需要花費額外的時間和精力。
總結
VM 在一般電腦和區塊鏈系統的運作中扮演著重要角色,讓您能夠執行不同的作業系統、安全地測試軟體,並在相同的硬體上執行多項任務。
虛擬機還能用於區塊鏈網路,為智能合約和去中心化應用程式提供支援。即使您不是專家,了解 VM 的運作方式也能讓您更理解我們使用的許多 DeFi 工具和平台背後的運作情形。
延伸閱讀
免責聲明:本內容按「如實」原則呈現給您,僅用於一般資訊和教育目的,不作任何形式的陳述或保證。請勿將其視為財務、法律或其他專業建議,亦未企圖推薦購買任何特定產品或服務。您應該向適當的專業顧問尋求建議。您所在的地區可能無法提供本文中提及的產品。本文由第三方貢獻者提供,請注意,文中所述看法均屬第三方貢獻者所有,不一定能反映幣安學院意見。請閱讀我們完整的免責聲明以了解詳情。數位資產價格可能會波動。您的投資價值可能會下跌或上漲,您可能無法收回投資金額。您的投資決定由您全權負責,幣安學院對於您可能遭受的任何損失概不負責。本文並非財務、法律或其他專業建議。如需更多資訊,請參閱我們的使用條款和風險警告。