WebAssembly介绍
WebAssembly介绍和资料收集
- 1: WebAssembly概述
- 2: 信息收集
- 3: WebAssembly介绍文章翻译
- 3.1: [译]WebAssembly到底是个啥
1 - WebAssembly概述
WebAssembly概述
WebAssembly(缩写为wasm) 是一个可移植、体积小、加载快并且兼容 Web 的全新格式,WebAssembly 是由主流浏览器厂商组成的 W3C 社区团体 制定的一个新的规范。目前多个浏览器已经达成对初始 WebAssembly 版本的一致意见 查看更多
WebAssembly的特点
-
高效
WebAssembly 有一套完整的语义,实际上 wasm 是体积小且加载快的二进制格式, 其目标就是充分发挥硬件能力以达到原生执行效率
-
安全
WebAssembly 运行在一个沙箱化的执行环境中,甚至可以在现有的 JavaScript 虚拟机中实现。在web环境中,WebAssembly将会严格遵守同源策略以及浏览器安全策略。
-
开放
WebAssembly 设计了一个非常规整的文本格式用来、调试、测试、实验、优化、学习、教学或者编写程序。可以以这种文本格式在web页面上查看wasm模块的源码。
-
标准
WebAssembly 在 web 中被设计成无版本、特性可测试、向后兼容的。WebAssembly 可以被 JavaScript 调用,进入 JavaScript 上下文,也可以像 Web API 一样调用浏览器的功能。当然,WebAssembly 不仅可以运行在浏览器上,也可以运行在非web环境下。
2 - 信息收集
WebAssembly信息
官方网站
社区
- WebAssembly Hub: 用于构建,部署,共享和发现 Envoy 和 Istio 的 Envoy Proxy Wasm 扩展的工具和存储库
社区各种 wasm runtime:
- wasmtime: JIT
- lucet: 即将合并到 wasmtime: AOT
- wasm-micro-runtime:interpreter,JIT,AoT
- wasmer:JIT
- life:golang,AoT,interpreter
- wavm:JIT
- wasm3:interpreter
文档
书籍
资源
- Awesome WebAssembly Languages: 可直接编译为 WebAssembly 或在有VM可以在 WebAssembly 中使用的编程语言精选列表。比较感兴趣的是: TinyGo / AssemblyScript 。
3 - WebAssembly介绍文章翻译
WebAssembly介绍文章翻译