Операция выполнена!
Закрыть
Хабы: Linux, Реверс-инжиниринг, Информационная безопасность, Системное администрирование

Вы когда-нибудь задумывались, что происходит после того, как вы нажимаете Enter в терминале Linux? Вводите ./myprogram и...

Что именно происходит дальше? Как ядро находит файл? Как загружает его в память? Кто вызывает main? И как на всё это посмотреть вживую?

Разберемся на примере пустой программы empty_sleep. Она ничего не делает, просто запускается и завершается через 30 секунд. В ней нет лишнего кода и мы сможем сосредоточиться только на процессе загрузки. Всё, что мы увидим, относится к большинству динамически скомпилированных программ в Linux.

В этой статье покажу как с помощью strace в реальном времени проследить путь программы от execve до _start и main.

Читать далее
Читайте также
НОВОСТИ

ПИШИТЕ

Техническая поддержка проекта ВсеТут

info@vsetut.pro