В SDK разработчика NaCl (родной клиент) есть sel_ldr.py
(безопасный загрузчик эльфа), который позволяет пользователю запускать исполняемый файл NaCl (.nexe
), созданный с помощью инструментальной цепочки NaCl или PNaCl. Что именно делает sel_ldr.py
во время работы этих .nexe
файлов?Поведение и системные вызовы NaCl sel_ldr
В частности, как sel_ldr обрабатывает вызовы операционной системы исполняемых файлов NaCl? Чтение документации NaCl. Большая часть информации относится к использованию API перечня для создания переносимых приложений браузера Chrome, и нет подробных сведений о том, как sel_ldr service-runtime обрабатывает эти исполняемые файлы NaCl.
Я создал много исполняемых файлов NaCl, которые во время работы в sel_ldr могут создавать каталоги, файлы, каналы, выполнять спящий режим и использовать различные другие системные вызовы, и он работает правильно. Я знаю, что собственный клиент сам контролирует системные вызовы. Этот мониторинг выполняется с использованием API-интерфейса перечня или sel_ldr.py перехватывает и перенаправляет системные вызовы на собственные решения системного вызова NaCl в своей изолированной программной среде?
Stack Overflow не позволяет мне размещать более двух ссылок, поэтому здесь приведены ссылки на источники: [заголовок, открытый разработчиком] (http://src.chromium.org/viewvc/native_client/trunk/src/native_client/ src/trusted/service_runtime/include/sys/nacl_syscalls.h) и контекстный переключатель [x86-32] (http://src.chromium.org/viewvc/native_client/trunk/src/native_client/src/trusted/service_runtime/ arch/x86_32/nacl_syscall_32.S). –
Это отличный ответ! Я очень рад, что разработчики Chrome находятся в Stack Overflow. Когда devenv получит компилятор, я буду танцевать от радости. –