Среда выполнения WebAssembly против интерпретатора против движка - PullRequest
0 голосов
/ 05 мая 2020

Из webassembly.org :

WebAssembly (сокращенно Wasm) - это двоичный формат инструкций для виртуальной машины на основе стека.

В контексте Wasm / WASI, что такое

  • WebAssembly время выполнения?
  • WebAssembly интерпретатор?
  • механизм WebAssembly ?

и в приведенном выше контексте:

  • среда хоста?

Я полагаю, что практическое значение этих терминов может отличаться при использовании в контексте веб-браузера, но я думаю, что следует сосредоточить внимание на собственном использовании кода Wasm.

1 Ответ

2 голосов
/ 05 мая 2020

Должен признать, я предпочел их предыдущее краткое изложение технологии:

WebAssembly или wasm - новый переносимый формат, эффективный по размеру и времени загрузки, подходящий для компиляции в Интернет

Для уточнения c WebAssembly - это набор инструкций, он очень похож на обычный язык ассемблера с низкоуровневым «ощущением». Язык поддерживает только типы c, без строк, массивов и т. Д. c ...

Спецификация WebAssembly также определяет виртуальную машину, на которой он работает.

Чтобы ответить на ваши вопросы :

что такое среда выполнения WebAssembly?

Это машина или виртуальная машина, которая может выполнять набор инструкций WebAssembly, как описано в спецификации. У вас есть один в вашем браузере!

что такое интерпретатор WebAssembly?

Интерпретаторы и компиляторы - это два разных подхода к выполнению языка - как описано здесь:

Как работает интерпретатор / компилятор

что такое движок WebAssembly?

Практически то же самое, что и среда выполнения.

среда хоста?

Среда выполнения WebAssembly обычно находится внутри хоста - это потому, что сама WebAssembly не может выполнять какие-либо операции ввода-вывода. Чтобы сделать что-то полезное, он работает с хост-средой для достижения этой цели.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...