№ 34. Сборкой всех частей программы(объектных модулей) занимается редактор связей. Он размещает все модули в памяти и настраивает адресные константы внутри них так, чтобы они соответствовали фактическому местоположению в памяти. Редакторы бывают 3 разновидностей. 1) Загрузчик - загружает объектный модуль и передает управление на точку входа программы. 2) Компоновщик - формирует исполняемый файл, точно соответствующий образу программы в памяти, привязывая его к абсолютным адресам. 3) Компоновщик, генерирующий псевдоперемещаемый код - записывает в исполняемый файл таблицу перемещений (relocation table), где содержатся данные о ячейке внутри кода, которая зависит от местоположения в памяти. Такой исполняемый файл перед запуском программы требует настройки. Этим занимается операционная система, в формате которой создается исполняемый модуль. №35 -Библиотеки функций( определяют возможности системы, различают библиотеки для языков программирования и библиотеки для решения задач в конкретной проблемной области, представляют собой откомпилированные объектные модули). -Библиотеки классов( все ее классы должны быть написаны на том же ЯП, на котором пишется программа, различают конкретные классы, абстрактные классы, шаблоны классов, включаются в программу на этапе компиляции). -Библиотеки компонент( это готовые откомпилированные программные модули, предназначенные для использования в качестве составной части программы, и которыми можно манипулировать во время разработки программы, компоненты бывают локальные и распределенные).