WebAssembly
面向Web的二进制格式
WebAssembly(简称wasm)是一个虚拟指令集体系架构(virtual ISA),整体架构包括核心的ISA定义、二进制编码、程序语义的定义与执行,以及面向不同的嵌入环境(如Web)的应用编程接口(WebAssembly API)。其初始目标是为C/C++等语言编写的程序经过编译,在确保安全和接近原生应用的运行速度更好地在Web平台上运行。
定义
WebAssembly是一种运行在现代网络浏览器中的新型代码,并且提供新的性能特性和效果。它设计的目的不是为了手写代码而是为诸如 C、C++和Rust等低级源语言提供一个高效的编译目标。
特点
快速、高效、可移植——通过利用常见的硬件能力,WebAssembly 代码在不同平台上能够以接近本地速度运行。
可读、可调试——WebAssembly 是一门低阶语言,但是它有确实有一种人类可读的文本格式(其标准即将得到最终版本),这允许通过手工来写代码,看代码以及调试代码。
保持安全——WebAssembly被限制运行在一个安全的沙箱执行环境中。像其他网络代码一样,它遵循浏览器的同源策略和授权策略。
不破坏网络——WebAssembly的设计原则是与其他网络技术和谐共处并保持向后兼容
应用
WebAssembly支撑了一系列的应用场景,包括但不局限于:
视频与音频的编解码器(Codecs)、定制化的数据压缩、3D模型;
媒体编辑工具;
客户端的计算机视觉(Client-side computer vision);
将现有的胖客户端(应用程序)移植到Web平台;
任何需要在用户终端以极致速度运行的程序。
参考资料
最新修订时间:2023-05-19 23:20
目录
概述
定义
特点
参考资料