以太坊價格 以太坊價格
Ctrl+D 以太坊價格
ads
首頁 > PEPE幣 > Info

INT:INT主網4.0智能合約——WASM 篇

Author:

Time:1900/1/1 0:00:00

INT主網4.0兼容EVM和WASM這兩種虛擬機,本篇文章為大家介紹在INT主網4.0中開發中的WASM相關問題。

什么是WASM?

WASM,全稱為WebAssembly,是一種新的編碼方式,可以在現代瀏覽器中運行。作為一種低級的類匯編語言,WASM具有緊湊的二進制格式,可以接近原生的性能運行,并為諸如C/C++等語言提供一個編譯目標,以便它們可以在Web上運行。同時,WASM也是W3CWebAssemblyCommunityGroup開發的web瀏覽器的標準,獲得了各大主要瀏覽器廠商的積極支持。

對于網絡平臺而言,WASM提供了一條途徑,使得以各種語言編寫的代碼都可以以接近原生的速度在Web中運行。谷歌、蘋果、微軟三大競爭公司同時支持WASM作為中間代碼,所有其他語言(c,c++,java)編寫的程序都可以編程成WASM字節碼的程序,在這種情況下,以前無法以此方式運行的客戶端軟件都可以在Web中運行了。INT選擇兼容WASM的原因?

比特幣礦企Cormint完成3000萬美元A輪融資:5月16日消息,比特幣挖礦初創公司 Cormint 完成 3000 萬美元 A 輪融資,Cormint 總裁 Jamie McAvity 和半導體公司 Silicon Laboratories(SLAB)董事長 Nav Sooch 領投,Cormint 前 CTO Alessandro Piovoccari 等參投。

據悉,Cormint 該輪融資計劃用于在德克薩斯州建立一個算力為 2.4 EH/s 的數據中心。[2023/5/16 15:06:43]

對于INT的開發人員而言,WASM有著諸多對開發者友好的特點:

金融科技公司Moneybrain宣布已加入Visa的Fintech Fast Track計劃:10月11日消息,金融科技公司Moneybrain今天宣布已加入Visa的Fintech Fast Track計劃,加快與Visa的整合過程,并使Moneybrain能夠利用Visa全球支付網絡提供的覆蓋范圍、功能和安全性。通過Fast Track,Moneybrain正在努力將其轉換和使用加密貨幣的能力帶給美國消費者。(PR Web)[2021/10/11 20:20:43]

首先,WASM采用二進制編碼,在程序執行過程中的性能表現優越;

其次,就存儲成本而言,相對于文本格式,二進制編碼的文本占用的存儲空間更小,可以有效地降低存儲成本;

Rococo公布接入測試插槽項目順序:預計分五批上線Kilt、Interlay為第二批:1月16日,波卡中國社區PolkaWorld介紹Rococo團隊發布的V1測試插槽的總體策略。Polkadot給出了波卡測試網Rococov1平行鏈的大致上線順序,為:第二批:Kilt、Interlay(預計上線時間:1月18日當周);第三批:Darwinia、Phala、Crust、HydraDX;第四批:Bifrost、StarksNetwork、Clover、Zenlink;第五批:ChainX、Robonomics、PatractHub、MathWallet。

此外,策略還提到,為快速改善Rococo網絡,Parity將定期更新并重新啟動網絡。這涉及到客戶端和runtime代碼的更新以及鏈狀態的重置。最初的平行鏈每隔幾天上線一批,只有在網絡穩定運行時才會添加新的平行鏈。在不穩定時期可能會取消平行鏈的注冊以減輕網絡負擔,在穩定性提高后重新注冊這些平行鏈。當網絡可以順利擴展時,將以先到先得的方式注冊平行鏈。[2021/1/16 16:19:41]

最后,WASM支持的多語言使我們可以使用C/C++/RUST/Go等多種語言編寫智能合約并編譯成WASM格式的字節碼,也就是說INT可以兼容所有用c,c++等高級語言編寫的程序,INT的應用層生態將會更加豐富,想要參與INT生態建設也會變成一件更加容易的事情,開發人員的學習成本會變得非常低。

公告 | 庫幣上線Perth Mint Gold Token(PMGT):據庫幣KuCoin消息,庫幣已于2月24日上線Perth Mint Gold Token(PMGT)并開啟交易對:PMGT/USDT,預計未來一至兩周開放PMGT/BTC交易對。Perth Mint Gold Token (PMGT)是基于以太坊網絡,支持該代幣的黃金將由擁有珀斯造幣廠的西澳大利亞政府擔保。庫幣數字貨幣交易所,為來自207個國家的500萬用戶提供幣幣、法幣、合約、礦池、借貸等一站式服務。[2020/2/24]

另外WASM字節碼既可以編譯成機器碼后執行,又可以使用解釋器直接執行,兼容性和性能兩者兼有,選擇了WASM,可以依托WebAssembly生態,為INT獲得更多的發展可能性。

INT基于WASM做出哪些創新?

1)Gas手續費的收取:

INT從Ethereum吸取經驗教訓,并根據需要對WASM執行的每條指令收費。當合同執行的GAS費達到調用者給出的限額時,WASM虛擬機自動終止合同的繼續執行。

2)系統調用接口:

WASM模塊支持引入其他的WASM模塊以調用其中的函數,INT提供幾類的系統調用接口:

Libc標準庫部分接口:主要是與內存操作相關的函數,如malloc和free。因為WASM虛擬機作為WASM合約執行的宿主環境,需要對合約運行的虛擬內存進行分配與管理;

區塊鏈相關接口:為方便WASM合約方便訪問區塊鏈相關信息,INT提供了存儲讀寫、賬戶轉賬、事件觸發、交易信息等接口;

Library:主要是提供了BigInt和json操作函數,方便合約開發者的編寫;

3)內存管理:

WebAssembly提供了內存管理來處理字符串及其他復雜數據類型,內存在WASM的定義下,是一個隨著時間增長的字節數組。

所以,INT的WASM虛擬機在執行合約前,會根據合約導入的內存,為其創建內存實例,并初始化對應的data數據段內容。

具體實現上,INT采用了Buddy伙伴算法來管理WASM合約的運行內存,默認的初始內存大小為64KB,最大可增長到256KB。

4)簡化合約開發:

合約作為區塊鏈體系的商業載體,具有區塊鏈的應用價值。所以在合約開發方面,INT一直在努力降低開發門檻,簡化開發流程,讓更多的項目或企業可以將業務應用遷移到INT系統中來。

當然,WASM作為正在發展中的技術,除了有諸多的好處之外,也給開發工作帶來了一定的難度。

在內部的合約開發測試過程中,我們發現在引入了WASM虛擬機后發生了內存泄漏。由于INT的底層架構是使用go語言來實現的,當合約通過系統調用接口訪問底層native方法時,底層方法返回的數據保存在WASM的線性內存中,由于這個內存并不是開發者通過malloc分配的,所以會經常忘記調用free來釋放,造成內存泄漏。加上底層限制了一個合約可以使用的內存上限是256KB,所以會造成功能復雜的合約,最后由于超出內存上限而執行失敗。INT的開發人員在SDK中采用RAII和SharedPtr方式,不再暴露原始的內存地址,而是返回棧上的臨時對象,最終解決了內存泄漏的問題。

本期很高興為大家介紹了INT主網4.0的智能合約運用到的WASM虛擬機的相關問題,INT的開發人員正在進行積極的主網4.0開發工作,期待后面可以為大家帶來更多4.0的技術性文章。

Tags:INTWASASMWEBPaprprintr FinanceWasdaq Financejasmy幣為什么一直在跌Energy Web Token

PEPE幣
FINE:【獎勵發放】- YeaFinance (YEA)上線活動結束及獎勵發放的公告

親愛的用戶: DigiFinex于2020年09月30日10:00--10月6日10:00(GMT8)舉辦的“YeaFinance(YEA)上線DigiFinex”活動現已圓滿結束.

1900/1/1 0:00:00
幣虎合約2020年10月14日18:00上線REN永續合約

尊敬的用戶: 幣虎合約將于2020年10月14日18:00上線RENUSDT永續合約,并開通逐倉/全倉1-50倍杠桿,邀您體驗!截止目前.

1900/1/1 0:00:00
FILE:Filecoin主網上線倒計時2天 前置抵押FIL不足仍是礦工難題

北京時間10月13日,Filecoin距離主網上線還有兩天,主網預計啟動時間為Epoch148,888.

1900/1/1 0:00:00
BEN:幣圈總監:比特幣間歇式震蕩修整 只為華麗轉身俯沖上行

灰度宣布以太坊信托得到了美國證券交易委員會的批準。對此,這一批準只是表明:根據1934年美國證券交易法案,以太坊信托可以成為一家公開報告公司.

1900/1/1 0:00:00
VNT:【BICC】CVNT全球首發登陸BICC公告

尊敬的幣交所(BICC)用戶:您好,幣交所將于2020年10月8日20:00正式全球首發上線主網CVNT,并開通CVNT/USDT交易對.

1900/1/1 0:00:00
TBI:Hotbit 定于10月20日上線 YFIM (YFIM)

尊敬的用戶: Hotbit即將開啟YFIM(YFIM)數字資產服務。 具體安排如下: 充值時間:2020年10月19日16:00交易時間:2020年10月20日16:00(香港時間)提現時間:2.

1900/1/1 0:00:00
ads