Linux userland exec - PullRequest
       45

Linux userland exec

2 голосов
/ 21 ноября 2010

Мне нужна библиотека C, которая позволяет мне exec () в статически связанном двоичном файле без вызова системного вызова execve () .Причина, по которой системный вызов не работает, заключается в том, что двоичный файл не является исполняемым, и сделать его исполняемым в этой системе невозможно.Для динамически связанных двоичных файлов выполнение /lib/ld-linux.so.2 progname делает свое дело, но это приводит к ошибкам в моем статически связанном двоичном файле.

Я нашел ul_exec 1.1 в http://archive.cert.uni -stuttgart.de / bugtraq / 2004 /01 / msg00002.html , но это похоже на segfault для его собственного Hello, World двоичного файла в моей системе.

Один из вариантов - сделать копию двоичного файла, сделатьисполняемый файл копии и вызовите execve () .Я ищу решение, которое не нуждается в такой копии (из соображений производительности).

Ответы [ 3 ]

4 голосов
/ 07 июня 2013

Я обновил пользовательский интерфейс Grugq для работы с современными x86 Linux. Я написал x86_64 пользовательский exec с нуля.

1 голос
/ 21 ноября 2010

тогда как насчет файловой системы пользовательского режима (например, с использованием python-fuse), которая отображает бит выполнения на любой указанный файл? будет ли это слишком большой удар по производительности?

0 голосов
/ 10 декабря 2010

Есть хорошая короткая вики-статья с некоторыми не полностью готовыми к реализации реализациями: http://plash.beasts.org/wiki/UserModeExec

...