Как бежать на Linux? - PullRequest
       2

Как бежать на Linux?

3 голосов
/ 03 февраля 2011

Вопрос заключается в том, как выполнить двоичный файл формата out (я имею в виду старый формат, который, например, использовался во FreeBSD до его миграции в ELF) в системе Linux.Есть ли возможность сделать это без дополнительного кодирования (есть какое-то существующее решение)?Вероятно, это должно быть в форме модуля ядра или патча для ядра Linux.Другим решением может быть средство запуска пользовательского пространства (может быть даже компоновщик времени выполнения).Я искал что-то подобное, но не смог что-то найти.Я еще не проверил разницу в интерфейсах системных вызовов, если у вас есть какие-либо комментарии по этому поводу, вы можете их предоставить.

PS Я знаю, что написание средства запуска из пользовательского пространства для статического двоичного файла довольно тривиально, новопрос о каком-то существующем решении.

Ответы [ 2 ]

5 голосов
/ 03 февраля 2011

Проверьте наличие CONFIG_BINFMT_AOUT в конфигурации вашего ядра.

Если ваше ядро ​​имеет /proc/config.gz:

zgrep CONFIG_BINFMT_AOUT /proc/config.gz

В Ubuntu и т.п.:

grep CONFIG_BINFMT_AOUT /boot/config-$(uname -r)
2 голосов
/ 03 февраля 2011

Параметром ядра было CONFIG_BINFMT_AOUT, не уверен, что он все еще присутствует или необходим.

...