@levinzhang
2019-12-21T15:10:01.000000Z
字数 1593
阅读 560
by
万维网联盟(W3C)最近宣布,WebAssembly核心规范成为了正式的Web标准。因此,继HTML、CSS和JavaScript之后,WebAssembly正式成为第四个在浏览器中可原生运行的语言。
万维网联盟(World Wide Web Consortium,W3C)最近宣布,WebAssembly核心规范成为了正式的Web标准。因此,继HTML、CSS和JavaScript之后,WebAssembly正式成为第四个在浏览器中可原生运行的语言。
WebAssembly核心规范将WebAssembly描述为安全的、可移植的、低层次的代码格式,旨在高效执行和紧凑化的表述。WebAssembly追求硬件独立、语言独立和平台独立。因此,WebAssembly可以面向所有的现代架构,包括桌面或移动设备,以及嵌入式系统。WebAssembly程序可以嵌入到浏览器中,可以作为独立的VM运行,也可以集成到其他的环境中。
为了拥抱各种使用场景,WebAssembly规范进行了分割和分层,拆分成了多个文档。核心规范涉及WebAssembly JS接口和WebAssembly Web API,前者提供了显式JavaScript API,用来和WebAssembly进行交互,而后者主要关注将WebAssembly与更广泛的Web平台集成。
久其核心,WebAssembly是一个虚拟指令集架构(instruction set architecture,ISA)。因此,核心规范解决了WebAssembly的核心ISA层的问题,定义了指令集、二进制编码、校验和执行语义,以及文本表述。
W3C的项目负责人Philippe Le Hégaret这样阐述WebAssembly的潜力:
之前的应用只能使用开放Web平台(Open Web Platform)技术,WebAssembly的到来扩展了它们所能达到的范围。在当今的世界中,机器学习和人工智能变得越来越常见,在不损害用户安全性的同时,在Web上实现高性能的应用是非常重要的。
我们可以看到,WebAssembly已经初步用到了一些工具软件(比如Google Earth port)、游戏(比如Doom3)、重量级的桌面应用程序(game editors)或设计工具(Figma)中。
Agora的高级架构师Chun Gao分享了他对这项技术的热情:
WebAssembly使得在Web上提供强大的计算能力成为可能。它将极大地扩展Web应用程序的应用场景,并迅速增加开发计算密集型应用的机会,包括实施音频/视频处理、硬核游戏以及基于Web技术的AI。作为RTC服务的提供商,Agora致力于交付实时性能更好的服务。我们发布了基于WebAssembly的产品,提升了视频流处理的性能和兼容性。我们相信,对于实现高性能Web应用程序的Web开发人员来说,WebAssembly将是最重要的可选方案。
随着1.0规范的发布,WebAssembly未来版本的工作也已经开始着手了,包括了线程、固定宽度SIMD、引用类型、尾调用和ECMAScript模块集成等特性。
万维网联盟(Wide Web Consortium,W3C)的使命是通过创建技术标准和指南来充分发挥Web的潜力,以确保Web对全球所有人都保持开放性、可访问性和可互操作性。W3C由美国麻省理工学院计算机科学与人工智能实验室(MIT CSAIL)、总部位于法国的欧洲信息与数学研究联盟(ERCIM)、日本庆应大学和中国的北京航空航天大学联合运营。
查看英文原文:WebAssembly 1.0 Becomes a W3C Recommendation and the Fourth Language to Run Natively in Browsers