一个启用另一个,还是一个影响另一个?
似乎 V8 允许原生 C++ 访问 Javascript,而 NaCl 允许您在浏览器中运行原生代码。
抱歉这个天真的问题。我落后于 Javascript 的最新发展,很惊讶现代浏览器实际上是 JIT 编译的!
一个启用另一个,还是一个影响另一个?
似乎 V8 允许原生 C++ 访问 Javascript,而 NaCl 允许您在浏览器中运行原生代码。
抱歉这个天真的问题。我落后于 Javascript 的最新发展,很惊讶现代浏览器实际上是 JIT 编译的!
简短的回答 - 不。
更长的答案,
Chrome 附带 V8 JS 引擎并使用它来执行嵌入在网页中的 JavaScript。Chrome 中的 V8 无法扩展以访问 C++,反之亦然。
NaCl 是一个工具链和运行时环境,允许您将现有的 C++ 代码编译为安全的可执行文件,然后从网页安全地执行它。
通过将 V8 嵌入到您自己的 C++ 应用程序中,可以单独使用 V8,并按照您认为合适的方式对其进行扩展。
HTH,约翰
http://research.google.com/pubs/archive/37204.pdf
可以在 NaCl 中运行 v8(的修改版本)。JIT 发出的代码序列必须符合沙盒安全规则。
反过来是不可能的。
:-)
-bsy