8.3. Разработка совместно используемых библиотек
8.3. Разработка совместно используемых библиотек
Создание совместно используемых библиотек не намного труднее разработки обычных статических библиотек. Существует лишь несколько ограничений, но с ними очень легко справиться. Однако совместно используемым библиотекам присуща одна уникальная и основная функциональность, позволяющая управлять бинарной совместимостью в различных версиях библиотек.
Совместно используемые библиотеки ориентированы на поддержание обратной совместимости. Это значит, что двоичный файл, собранный с ранней версией библиотеки, будет работать и с более поздней ее версией. Однако в некоторых случаях библиотеки не являются совместимыми: например, при необходимости модифицировать интерфейсы способом, не предусматривающим обратную совместимость.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Совместно используемые обработчики
Совместно используемые обработчики Совместно используемые (shared) обработчики выполняются практически так же, как и не совместно используемые. Существует, однако, три главных отличия.• Флаг SA_SHIRQ должен быть установлен в параметре flags при вызове функции
8.2. Совместно используемые библиотеки
8.2. Совместно используемые библиотеки Совместно используемые, или разделяемые, библиотеки обладают рядом преимуществ по сравнению со статическими библиотеками.• Linux разделяет используемую для кода исполняемого файла память между всеми процессами, которые совместно
8.3.3. Разработка совместимых библиотек
8.3.3. Разработка совместимых библиотек При разработке собственных библиотек необходимо знать факторы, делающие библиотеку несовместимой. Существуют три основных причины несовместимости.1. Изменение или удаление интерфейсов экспортированных функций.2. Изменение
8.4. Сборка совместно используемых библиотек
8.4. Сборка совместно используемых библиотек Если вы разобрались с концепцией имен soname, все остальное просто. Достаточно следовать нескольким несложным правилам, которые перечислены ниже.• Собирайте свой исходный код с указанием флага -fPIC для gcc. В результате
8.5. Инсталляция совместно используемых библиотек
8.5. Инсталляция совместно используемых библиотек Программа ldconfig выполняет всю рутинную работу по инсталляции совместно используемых библиотек. Вам всего лишь нужно получить файлы и запустить ldconfig. Выполните описанные ниже шаги.1. Скопируйте совместно используемую
8.6. Работа с совместно используемыми библиотеками
8.6. Работа с совместно используемыми библиотеками Самый легкий способ работы с совместно используемыми библиотеками — игнорировать тот факт, что она совместная. Компилятор С автоматически задействует совместно используемые библиотеки вместо статических, если ему явно
Форматы данных, используемых при создании Web-узла
Форматы данных, используемых при создании Web-узла Несмотря на наличие специализированных инструментальных средств, необходимо знать форматы основных данных, применяемых при создании Web-узлов. Как правило, основное содержимое Web-узла составляют статические Web-страницы,
2.3.2. Совместно используемые библиотеки
2.3.2. Совместно используемые библиотеки Совместно используемая библиотека (известная также как динамически подключаемая библиотека) напоминает архив тем, что она представляет собой группу объектных файлов. Но между ними есть ряд важных различий. Самое основное из них
5.1. Совместно используемая память
5.1. Совместно используемая память Простейшим способом взаимодействия процессов является совместный доступ к общей области памяти. Это выглядит так, как если бы два или более процесса вызвали функцию malloc() и получили указатели на один и тот же блок памяти. Когда один из
18.5.3. Использование команды ls совместно с циклом for
18.5.3. Использование команды ls совместно с циклом for Этот цикл оценивает команду ls интерпретатора shell и отображает сведения о файлах текущего каталога.$ pg forls#!/bin/sh# forlsfor loop in `ls` doecho $LOOP done$
Замечания о формулировках заданий и используемых в них данных
Замечания о формулировках заданий и используемых в них данных Если о типе исходных или результирующих числовых данных в задании ничего не сказано, то предполагаются вещественные данные. Исключение составляет группы заданий Dynamic и Tree (а также ObjDyn и ObjTree), в которой все
Потребители и производители повторно используемых программ
Потребители и производители повторно используемых программ В приведенном выше списке преимуществ можно выделить две ситуации - использование профессиональных или собственных компонентов. Первые четыре элемента списка описывают ситуацию использования существующих,
Форматы для распространения повторно используемых компонентов
Форматы для распространения повторно используемых компонентов Еще одной задачей, охватывающей как технические, так и организационные проблемы, является выбор представления для распространения: исходный текст или двоичный формат? Это спорный вопрос, и мы ограничимся