LINUX.ORG.RU

История изменений

Исправление Unicode4all, (текущая версия) :

Ты имеешь в виду, как оболочка загружает бинарь? Если так, то делает это она через системный вызов execve. Внутри неё идёт подготовка файла (создаётся структура binprm, которая содержит, например, аргументы командной строки и первые 128 байтов файла для определения сигнатуры), дальше вызывается функция search_binary_handler, которая подбирает интерпретатор для исполняемого файла (при помощи функции load_binary), это, например, интерпретор скриптов, который ищет шебанг и вызывает соответствующую программу-интерпретатор. Если функция определяет, что это ELF бинарь, то вызывает функцию load_elf_binary, которая проверяет архитектуру файла и загружает в память слинкованные библиотеки, а затем уже запускает процесс при помощи функции start_thread, которой на вход подаётся точка входа программы.

Исходная версия Unicode4all, :

Ты имеешь в виду, как оболочка загружает бинарь? Если так, то делает это она через системный вызов execve.