是否可以将Google NACL作为流程沙盒在浏览器之外运行?

有帮助吗?

解决方案

本地客户 文档 可能是试图弄清一切如何工作的好起点。

正如马克·西伯恩(Mark Seaborn)和贝内特·伊(Bennet Yee)所指出的那样,您可能最好尝试使用 SEL_LDR. 。有关如何包含sel_ldr的更多详细信息”SEL_LDR的生活".

我没有亲自实施任何在浏览器之外使用NACL的东西,因此不幸的是,我无法评论此操作的便利性。

其他提示

是的。本机客户端的独立构建包含一个名为“ SEL_LDR”的程序,该程序在Web浏览器外部运行NACL沙盒。许多NACL的测试套件通过在SEL_LDR下运行程序而不是在浏览器下运行程序来测试NACL。

要添加Mark的答案,请查看SEL_UNIVERSAL目标。显然,有些接口无法支持,例如,胡椒接口,因为这样的独立运行不涉及浏览器。此外,我们支持的稳定ABI是由“集成运行时”或IRT暴露的稳定ABI,而IRT代码Thunk假定存在浏览器。 NACL通过SEL_LDR的独立使用可能必须最初使用SYSCALL接口,直到编写替代IRT为止。 (NB:我们不能保证SYSCALL接口的稳定性。)

你可以试试 run.py 在本地客户端的来源中包含。

这是一个运行Hello World程序的示例。

make test_hello_world_nexe
python native_client/run.py out/Debug/hello_world_newlib_x64.nexe

这个脚本可以构建,搜索和调用 sel_ldr, 并自动将适当的参数传递给它。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top