Можно ли запустить Google NaCl вне браузера в качестве песочницы?
Могу ли я запустить собственный клиент Google вне браузера?
Ответы (4)
документация Native Client, вероятно, является хорошей отправной точкой для понимания того, как все работает.
Как отмечают Марк Сиборн и Беннет Йи, лучше всего использовать sel_ldr. Подробнее о том, как sel_ldr включен в "Жизнь sel_ldr".
Я лично не реализовал ничего, что использует NaCl вне браузера, поэтому, к сожалению, я не могу комментировать простоту этого.
да. Автономная сборка Native Client содержит программу под названием «sel_ldr», которая запускает песочницу NaCl вне веб-браузера. Многие наборы тестов NaCl тестируют NaCl, запуская программы под sel_ldr, а не под браузером.
Чтобы добавить к ответу Марка, взгляните на цель sel_universal. Очевидно, что некоторые интерфейсы не могут поддерживаться, например, интерфейсы Pepper, поскольку такой автономный запуск не требует использования браузера. Кроме того, стабильный ABI, который мы поддерживаем, — это тот, который предоставляется «интегрированной средой выполнения» или irt, а преобразователь кода irt предполагает наличие браузера. при автономном использовании NaCl через sel_ldr, вероятно, сначала придется использовать интерфейс системного вызова, пока не будет написан альтернативный irt. (Примечание: мы не гарантируем стабильность интерфейса системных вызовов.)
Вы можете попробовать run.py
, который включен в исходный код Native Client.
Вот пример запуска программы hello world.
make test_hello_world_nexe
python native_client/run.py out/Debug/hello_world_newlib_x64.nexe
Этот сценарий может создавать, искать и вызывать sel_ldr
, а также автоматически передавать ему правильные аргументы.