<p id="bffd9"><cite id="bffd9"></cite></p>

      <cite id="bffd9"><b id="bffd9"><thead id="bffd9"></thead></b></cite>
        <output id="bffd9"><cite id="bffd9"></cite></output>

              <p id="bffd9"></p>

                    <p id="bffd9"></p>
                    只發布交易干貨的網站
                    用實戰期貨交易系統和心得助你重塑交易認知

                    +1分期貨開戶,保證金無條件+1%

                    點擊查看最新手續費保證金一覽表

                    科普丨虛擬機之戰:WASM與EVM

                    科普丨虛擬機之戰:WASM與EVM

                    什么是虛擬機(EVM)?

                    以太坊虛擬機是一種輕量級虛擬機,用于在以太坊網絡上運行各種智能合約。EVM的功能不同于Windows等傳統操作系統,后者一次只能在一臺機器上運行。EVM 是構建在本機操作系統上的高級抽象,用于模擬物理機。
                    通過使用EVM,相同的平臺可以在許多不同的操作系統和硬件架構上運行。該特性使虛擬機適合以太坊等網絡,可以通過分布在世界各地的不同機器上的不同客戶端訪問這些網絡。EVM可以模擬在物理CPU上執行的功能,并負責以太坊網絡上的大部分功能。
                    EVM具有以下特點:

                    確定性

                    確定性程序對相同的輸入集提供相同的輸出,而與它執行相同代碼的次數無關。在以太坊中,dApp每次處理數百萬美元,各種用戶需要知道代碼在執行的每個階段是如何反應的。

                    可隔離

                    智能合約需要在完全隔離的環境中運行。這確保了如果智能合約發生黑客或bug,它不會影響底層協議的其他部分。

                    可終止

                    以太坊智能合約是圖靈完備的。因此,只要有足夠的時間和資源,他們就應該能夠解決任何問題。智能合約應該有終止機制,因為很難確定合約是否會在規定的期限內完成所有操作。以太坊使用“gas”限制來終止超出執行限制的智能合約。

                    EVM 的功能

                    • 它是以太坊網絡的去中心化處理單元。每個交互、交易和智能合約執行都只能在這里發生。
                    • 獲取并執行指令,然后通過給定的指令分派器解碼操作數。
                    • 負責所有的數據結構,如操作數,數據處理和指令。
                    • 跟蹤網絡組件,如存儲狀態、區塊信息和世界狀態。
                    • 負責為以太坊網絡上的不同智能合約創建運行時環境。

                    EVM 的挑戰

                    • EVM處理如此多不同的操作并不快,但是它的操作碼規范還沒有發展到可以處理變化的需求。
                    • 未能進化意味著語言也有局限性。

                    什么是WebAssembly (WASM)?

                    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直接轉換為編譯后的代碼,這使它能夠更快地加載,同時增加每個區塊所處理的交易數量。

                    預編譯

                    EVM依賴于預編譯(預編譯合約)。當發出預編譯調用時,EVM將執行預定義的本機代碼,然后顯示結果。這些預編譯特定于用于基本操作的特定協議,例如簽名方案和哈希。

                    盡管預編譯在不消耗大量gas的情況下使加密計算變得高效,但它們也帶來了問題。引入新的預編譯器通常要求網絡經歷一個系統范圍的硬分叉。

                    WASM消除了以太坊對預編譯合同的依賴。由于WASM非常高效,開發人員可以創建高效、快速的智能合約,而無需擔心潛在的硬分叉。

                    靈活性和互操作性

                    WASM支持更多的語言,并且提供了比EVM更廣泛的工具集。WASM支持傳統語言,如Rust、C和c++。WASM也被本地JavaScript引擎支持,例如 Google 的 V8 引擎(基于 Node.js 和 Chromium 的瀏覽器)、微軟的 Chakra 引擎(Microsoft Edge)和 Mozilla 的 Spidermonkey 引擎(Thunderbird 和 Firefox)。

                    小結

                    以太坊引入了上不可用的某些功能。以太坊虛擬機的引入允許開發人員輕松地創建和部署智能合約。然而,EVM也有許多局限性,而WASM正試圖解決這些局限性。根據WebAssembly.org, WebAssembly 1.0已經被提供給四個主要的瀏覽器引擎。

                    本文鏈接:https://www.8btc.com/article/6710711
                    轉載請注明文章出處

                    來源:全球財富網



                    本文名稱:《科普丨虛擬機之戰:WASM與EVM》
                    本文鏈接:http://www.bjhqmc.com/tuijian/20691.html
                    免責聲明:投資有風險!入市需謹慎!本站內容均由用戶自發貢獻,或整編自互聯網,或AI編輯完成,因此對于內容真實性不能作任何類型的保證!請自行判斷內容真假!但是如您發現有涉嫌:抄襲侵權、違法違規、疑似詐騙、虛假不良等內容,請通過底部“聯系&建議”通道,及時與本站聯系,本站始終秉持積極配合態度處理各類問題,因此在收到郵件后,必會刪除相應內容!另外,如需做其他配合工作,如:設置相關詞匯屏蔽等,均可配合完成,以防止后續出現此類內容。生活不易,還請手下留情!由衷希望大家能多多理解,在此先謝過大家了~

                    我要說說 搶沙發

                    評論前必須登錄!

                    立即登錄   注冊

                    切換注冊

                    登錄

                    忘記密碼 ?

                    切換登錄

                    注冊

                    我們將發送一封驗證郵件至你的郵箱, 請正確填寫以完成賬號注冊和激活

                      <p id="bffd9"><cite id="bffd9"></cite></p>

                        <cite id="bffd9"><b id="bffd9"><thead id="bffd9"></thead></b></cite>
                          <output id="bffd9"><cite id="bffd9"></cite></output>

                                <p id="bffd9"></p>

                                      <p id="bffd9"></p>
                                      成人电影