Запитання з тегом «dynamic-loading»

5
Який системний виклик використовується для завантаження бібліотек в Linux?
У straceвисновках шляхи до бібліотек, до яких виконується виклик, знаходяться у викликах open(). Це системний виклик, який використовують виконувані файли, які динамічно пов'язані? Про що dlopen()? open()це не дзвінок, як я здогадався, зіграє роль у виконанні програм.

2
Як експортувати LD_LIBRARY_PATH для всіх користувачів та системних служб
Я хочу експортувати LD_LIBRARY_PATHв системні сервіси та всіх користувачів. Системні послуги запускаються перед входом у систему, тому .bashrcце не застосовується. Як цього досягти?

2
Спільні бібліотеки ELF - мотивація для PLT
Чи може самостійно змінювати код для прискорення виклику функцій у динамічно пов'язаних бібліотеках? Наскільки я розумію, бібліотеки спільного використання ELF використовують своєрідну таблицю непрямих стрибків (таблиця зв’язків процедур або PLT), щоб увімкнути ледачі зв'язування функцій бібліотеки. Здається, мета полягає у тому, щоб уникнути необхідності змінювати таблицю в кодовому сегменті, одночасно …

1
Які частини виконуваного ELF завантажуються в пам'ять, а де?
Що я вже знаю: Виконавчий файл ELF має ряд розділів, очевидно, що розділи .text і .data завантажуються в пам'ять, оскільки це основні частини програми. Але для того, щоб програма працювала, їй потрібно більше інформації, особливо якщо вона динамічно пов'язана. Мене цікавлять такі розділи, як .plt, .got, .dynamic, .dynsym, .dynstr etcetera. …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.