В JavaScript-движок V8 добавлена поддержка WebAssembly
Реализация WASM, интегрированная в V8, основана на генерации движком WASM промежуточного кода, единого с оптимизирующим JavaScript-компилятором TurboFan, что позволило добиться высокой скорости компиляции и высокого качества кода за счёт задействования типовых и проверенных подсистем JIT и runtime. Интеграция также дала возможность обеспечить взаимодействие между WASM и JavaScript без дополнительных прослоек.
По своим задачам WebAssembly во многом напоминает PNaCl (Portable Native Client) и Asm.js. Основное отличие от Asm.js состоит в том, что WebAssembly является бинарным форматом, не завязанным на исходных текстах JavaScript и позволяющим выполнять в браузере низкоуровневый промежуточный код. В отличие от PNaCl, промежуточный код WASM не является машинным кодом и не изолирован в отдельной виртуальной машине, а выполняется с похожим на JavaScript уровнем изоляции. Среди основных задач WebAssembly выделяется обеспечение переносимости между браузерами, предсказуемость поведения и идентичности выполнения кода на разных платформах. Использование WebAssembly также позволит существенно сократить размер приложений, благодаря компактному промежуточному коду, и увеличить скорость декодирования.
Источник: http://www.opennet.ru/opennews/art.shtml?num=43651
|
0 | Tweet | Нравится |
|