繁体   English   中英

WebAssembly 运行时 vs. 解释器 vs. 引擎

[英]WebAssembly runtime vs. interpreter vs. engine

来自webassembly.org

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

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

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

在上述情况下:

  • 主机环境?

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

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

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

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

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

要回答您的问题:

什么是 WebAssembly 运行时?

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

什么是 WebAssembly 解释器?

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

解释器/编译器如何工作

什么是 WebAssembly 引擎?

几乎与运行时相同。

主机环境?

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM