一文對比虛擬機EVM與WASM :速度、預編譯、靈活性和互操作性

一級標題
一級標題
一級標題
什麼是以太坊虛擬機(EVM)?
以太坊虛擬機是一種輕量級虛擬機,用於在以太坊網絡上運行各種智能合約。 EVM的功能不同於Windows等傳統操作系統,後者一次只能在一台機器上運行。 EVM 是構建在本機操作系統上的高級抽象,用於模擬物理機。
通過使用EVM,相同的平台可以在許多不同的操作系統和硬件架構上運行。該特性使虛擬機適合以太坊等網絡,可以通過分佈在世界各地的不同機器上的不同客戶端訪問這些網絡。 EVM可以模擬在物理CPU上執行的功能,並負責以太坊網絡上的大部分功能。
EVM具有以下特點:
確定性
確定性程序對相同的輸入集提供相同的輸出,而與它執行相同代碼的次數無關。在以太坊中,dApp每次處理數百萬美元,各種用戶需要知道代碼在執行的每個階段是如何反應的。
一級標題
一級標題
EVM 的功能
一級標題
EVM 的功能
它是以太坊網絡的去中心化處理單元。每個交互、交易和智能合約執行都只能在這裡發生。
負責為以太坊網絡上的不同智能合約創建運行時環境。
一級標題
一級標題
EVM 的挑戰
一級標題
WebAssembly (WASM)是一種新型代碼,可以在現代瀏覽器上高效地執行。這個新代碼是由萬維網聯盟(W3C)創建和定義的。 WASM是為網絡而建的,包括來自谷歌、Mozilla和蘋果的工程師。本質上,WASM通常被稱為Ethereum 2.0,它具有EVM的所有功能,並附帶了額外的功能。
一級標題
如前所述,來自谷歌、微軟和蘋果等大型技術公司的工程師都是開發團隊的一部分。因此,這些工程師要確保WASM與他們的引擎和協議兼容。
正文
正文
正文
創建WASM是為了快速、高效和便攜。 WASM將利用常見的硬件能力,以“接近本地速度”執行。
EVM 與WASM
速度
速度
速度
速度
簡單地說,EVM是一個萬事通,但卻什麼都不懂。 EVM如何處理編譯就是這一點的一個很好的例子。本機引擎努力尋找執行某些操作的最佳路徑,最終影響EVM的總體吞吐量。
EVM只能處理256位字節碼,這意味著小於256位的字節碼必須先轉換為256位格式,然後才能發送給EVM。 EVM的可擴展性問題很明顯,因為它每秒只處理25個交易。
WASM直接轉換為編譯後的代碼,這使它能夠更快地加載,同時增加每個區塊所處理的交易數量。
預編譯
一級標題
一級標題
小結
小結
Source:https://medium.com/momentum6/the-war-on-virtual-machines-wasm-vs-evm-8e68f9d53ef4


