0

来自webassembly.org

WebAssembly(缩写为 Wasm)是一种用于基于堆栈的虚拟机的二进制指令格式。

在 Wasm/WASI 的上下文中,什么是

  • WebAssembly运行时?
  • WebAssembly解释器?
  • WebAssembly引擎?

在上述情况下:

  • 主机环境

我想这些术语的实际含义在 Web 浏览器上下文中使用时可能会有所不同,但我认为重点应该放在 Wasm 代码的本机用法上。

4

1 回答 1

2

我必须承认,我更喜欢他们之前对技术的总结:

WebAssembly 或 wasm 是一种新的可移植、节省大小和加载时间的格式,适用于编译到 Web

具体来说,WebAssembly 是一个指令集,它看起来很像普通的汇编语言,带有一种低级的“感觉”。该语言仅支持数字类型,不支持字符串、数组等...

WebAssembly 规范还定义了它运行的虚拟机。

要回答您的问题:

什么是 WebAssembly 运行时?

如规范中所述,它是可以执行 WebAssembly 指令集的机器或虚拟机。您的浏览器中有一个!

什么是 WebAssembly 解释器?

解释器和编译器是执行语言的两种不同方法 - 如此处所述:

解释器/编译器如何工作

什么是 WebAssembly 引擎?

几乎与运行时相同。

主机环境?

WebAssembly 运行时通常存在于主机中——这是因为 WebAssembly 本身无法执行任何 I/O。为了做一些有用的事情,它与宿主环境一起工作来实现这一点。

于 2020-05-05T16:40:17.483 回答