浏览器中WebAssembly MVP的现状

浏览器中WebAssembly MVP的现状,webassembly,Webassembly,说:“实现了完整的执行语义。”听起来MVP已经完成了,但到底缺少了什么,或者我做错了什么 WAST: JS代码: var xhr = new XMLHttpRequest(); xhr.open('GET', 'build/test.wasm', true); xhr.responseType = 'arraybuffer'; xhr.onload = function() { var module = Wasm.instantiateModule(new Uint8Array(xhr.

说:“实现了完整的执行语义。”听起来MVP已经完成了,但到底缺少了什么,或者我做错了什么

WAST:

JS代码:

var xhr = new XMLHttpRequest();
xhr.open('GET', 'build/test.wasm', true);
xhr.responseType = 'arraybuffer';
xhr.onload = function() {
    var module = Wasm.instantiateModule(new Uint8Array(xhr.response));
    console.log(module.exports.getMemorySize());
    console.log(module.exports.growMemory(1));
    console.log(module.exports.getMemorySize());
};
xhr.send(null);
Chrome Canary加载WASM文件,但grow_内存似乎未实现:

65536
0
65536
Firefox夜间加载失败:

TypeError: wasm validation error at offset 124: bad expression code

此外,页面大小似乎是0x10000,而不是0x1000。但我在设计或规范中找不到它。

2017年3月更新:

WebAssembly MVP具有:

WebAssembly CG成员代表四种浏览器:Chrome、Edge、Firefox、, 和WebKit,已经达成共识,最初的设计() WebAssembly API和二进制格式是完整的,没有进一步的 在没有实施经验和重要经验的情况下,设计工作是可能的 用法。这标志着浏览器预览的结束,并表示浏览器 默认情况下,可以在上开始装运WebAssembly。从这一点开始,, 未来的功能将设计为确保向后兼容性

这一共识包括: 伴随着。您可以测试WebAssembly 今天,通过以下步骤使用Emscripten工具链 以及阅读更多关于

接下来的步骤将是成立一个W3C工作组,以产生 WebAssembly初始版本的规范,并继续 在当前社区组中迭代。得到 参与,您可以加入并加入 WebAssembly GitHub项目

当前站点记录了MVP之后要遵循的以下步骤:

WebAssembly社区组和贡献者计划:

  • 蒸馏 和回购 在 回购
  • 为W3C WebAssembly工作组提出新章程
  • 从实验阶段毕业到稳定阶段(并更新Emscripten)
  • 将WebAssembly集成到浏览器开发人员工具中的其他原型
  • 着手

2016年11月更新:

目前有一个浏览器预览,征求开发者的反馈。发件人:

有一个初始()二进制格式的候选发行版和JavaScript API,它们在多个浏览器中实现。作为浏览器预览期的一部分,CG现在正在征求更广泛社区的反馈。CG的暂定目标是在2017年第一季度完成浏览器预览,尽管浏览器预览期间的重大发现可能会延长持续时间。当浏览器预览结束时,CG将生成WebAssembly的规范草案,默认情况下,浏览器供应商可以开始发布符合要求的实现

开发人员应该知道,在浏览器预览和WebAssembly的公开发布之间,至少会有一个突破性的变化,这将要求开发人员更新他们的工具链和二进制文件。这些变化将提前公布,如下所示

请参见开始试验以及如何以及在何处指导反馈


原始答案:

我们为演示同步了浏览器之间的功能对等,并打算从现在开始,向MVP同步更新所有浏览器+演示

我们有一些目前有效的东西,但不稳定。当我们使用更大、更多样化的代码库时,我们希望能够加快步伐,看看有什么可以改进,并获得信心,相信后MVP特性可以实现而不会令人头痛。我们还需要开发人员的反馈,以确保我们构建的内容是可用的

它缺少一些功能,例如
Wasm
JavaScript对象的API、跨
Wasm
实例共享内存和指针。我们还没有确定二进制格式,目前最大的变化是邮购,但还有很多较小的变化

还缺少浏览器集成:我们希望附带视图源代码,可能还有一些调试支持。还有一些性能调整和大量的安全测试

要跟踪这些问题,我建议查看和问题跟踪程序


关于您的具体问题,我们尚未在Chrome中完成
grow\u memory
。工作已经开始。

感谢您的快速回答,我发现了页面大小问题:
TypeError: wasm validation error at offset 124: bad expression code