|

Методика линковки программных систем с использованием статических и динамических библиотек

Авторы: Луцук Р.А., Мельников Д.В., Новиков Т.А.
Опубликовано в выпуске: #7(84)/2023
DOI: 10.18698/2541-8009-2023-7-921


Раздел: Приборостроение, метрология и информационно-измерительные приборы и системы | Рубрика: Твердотельная электроника, радиоэлектронные компоненты, микро- и наноэлектроника

Ключевые слова: программирование, программное обеспечение, проектирование, компиляция, линковка, компоновщик, статическая и динамическая библиотеки, сборка проекта

Опубликовано: 27.07.2023

Рассмотрен заключительный этап процесса компиляции программы, а именно этап линковки, т. е. связывания в единый файл уже скомпилированных фрагментов кода и кода всех остальных библиотеки. Описан механизм работы библиотеки BFD (Binary File Descriptor) и особенности ее использования. Выполнено сравнение статических и динамических библиотек. Работа компоновщика и его взаимодействие с различными объектными файлами рассмотрены на примере GNU linker. Также было рассмотрены преимущества и недостатки статических и динамических библиотек по таким параметрам, как занимаемая память исполняемого файла, а также время линковки.


Литература

[1] Брайант Р.Э., О’Халларон Д.Р. Компьютерные системы: архитектура и программирование. Москва, ДМК Пресс, 2022, 994 с.

[2] Ахо А., Лам М.С., Сети Р., Ульман Д. Компиляторы: принципы, технологии и инструменты. Москва, Диалектика, 2020, 1184 с.

[3] Taylor I.L., Chamberlain S. The GNU linker. GNU ld. version 2. GNU ORG, 1994, 96 p.

[4] Chamberlain S. LIB BFD, the Binary File Descriptor Library. BFD version < 3.0. GNU ORG, 1991.

[5] Керниган Б., Ритчи Д. Язык программирования Си. Москва, Вильямс, 2019, 288 с.

[6] Демин А.А., Карпунин А.А., Ганев Ю.М. Методы верификации и валидации сложных программных систем. Программные продукты и системы, 2014, № 4, с. 229–233.

[7] Карпунин А.А., Ганев Ю.М., Чернов М.М. Методы обеспечения качества при проектировании сложных программных систем. Надежность и качество сложных систем, 2015, № 2 (10), с. 78–84.

[8] Власов А.И., Карпунин А.А., Курышев Р.Э. Визуальное моделирование smart-технологий проектного управления. Надежность и качество. Тр. междунар. симпозиума: сб. докл. Пенза, ПГУ, 2020, т. 1, с. 64–70.