WebAssembly在Polkadot和Substrate中被用作runtime的编译目标。
WebAssembly是什么?
WebAssembly简称为Wasm,是一种用于基于堆栈的虚拟机的二进制指令格式。Wasm被设计成一个可移植的目标,用于编译高级语言,支持在web上部署客户端和服务器应用程序。
为什么要使用WebAssembly?
WebAssembly是一种平台无关的二进制格式,这意味着它可以在它所操作的任何机器上运行相同的指令。区块链需要确定性,以便在点对点网络中的所有节点上进行可靠的状态转换更新,而不强制每个节点运行完全相同的硬件。Wasm非常适合用于可能不同的机器集之间的可靠性。Wasm既高效又快速。这种效率意味着它可以作为一团代码上传到链上,而不会造成太多的状态膨胀,同时保持其以接近本机速度执行的能力。
分叉升级
通过在Substrate中使用Wasm,可以支持Polkadot、Kusama和许多连接链,这些链可以在不进行硬分叉的情况下升级其runtime逻辑。硬分叉是升级区块链的标准方法,由于需要离线协调,它很慢、效率低、容易出错,因此倾向于将多个升级打包到一个大型事件中。通过在链上部署Wasm,并让节点在特定的块高度自动执行新的逻辑,升级可以是小的、单独的、非常具体的。
包含规范链接的WebAssembly主页:https://webassembly.org/
用Rust写的WebAssembly解释器:https://github.com/paritytech/Wasmi
ParityWasm:Rust中的WebAssembly序列化/反序列化。https://github.com/paritytech/parity-Wasm
Wasmutils:在Parity和Wasm合约开发中使用的Wasm实用程序的集合。https://github.com/paritytech/Wasm-utils
原文链接:
https://wiki.polkadot.network/docs/en/learn-wasm
翻译:PolkaWorld社区
2020年,是一个特殊的年份;而2020年3月,更是可以载入史册的“黑色三月”,就算股神巴菲特也是“接连惊呼活久见”.
本公众号的文章只做研究、学习和交流使用,不具有任何的操作指导意义!币圈唯一每天坚持视频分析行情的公众号!如果需要视频行情分析.
亲爱的用户:币安逐仓杠杆已增加AUDIO、DREP、OG、PERL资产,并开放AUDIO/BTC、AUDIO/USDT、DREP/BTC、DREP/USDT、OG/BTC、OG/USDT、PER.
全聚合协议OpenOcean.Finance宣布已完成战略性融资。本轮融资由币安领投,其他投资方包括MulticoinCapital、LDCapital、CMSHoldings、Kenetic、.
金色财经区块链3月9日讯?NFT是一种区块链网络上买卖数字内容的代币,这些数字内容包括艺术品、交易卡、以及其他可收藏宠物等.
Gate.io已上线“Startup上线通道”,为给优质初创项目提供更为快捷的上币通道,和给予用户提供早期投资机会.