Время связи - Link time

В Информатика, время ссылки относится к периоду времени во время создания компьютерной программы, в течение которого компоновщик применяется к этой программе.[1][2][3] Время связывания происходит после время компиляции и раньше время выполнения (когда программа является казнен ).

Обычно говорят о операции времени ссылки (операции, выполняемые компоновщиком) или время ссылки (язык программирования требования, которым должны соответствовать скомпилированные исходный код для его успешного связывания).

Операции времени связывания

Операции, выполняемые во время связывания, обычно включают исправление адресов объектов и функций, на которые имеются внешние ссылки, различные виды перекрестных проверок модулей (например, проверка типа на видимых извне идентификаторах и на некоторых языках создание экземпляров шаблонов ). Немного оптимизация компиляторов отложить генерацию кода до времени компоновки, потому что именно здесь им доступна информация о полной программе. Разрешение внешних переменных в программе также выполняется во время компоновки.

В оптимизация времени компоновки (LTO), если он включен, происходит во время связывания.

Требования ко времени ссылки

Определение языка программирования может указывать требования ко времени компоновки, которым должен соответствовать исходный код для успешной компиляции (например, максимальное количество символов во внешне видимом идентификаторе, которое должно считаться значимым).

Исключения

В некоторых языки программирования[который? ] может потребоваться некоторая компиляция и компоновка во время выполнения.

Рекомендации

  1. ^ Свобода, Джесси (2001). Sams научитесь C ++ за 24 часа. Самс Паблишинг. п. 16. ISBN  9780672322242.
  2. ^ Радд, Дэвид (1994). Введение в проектирование и разработку программного обеспечения с помощью ADA. Западный паб. С. 24–25. ISBN  9780314028297.
  3. ^ Страуструп, Бьярн (2014). Программирование: принципы и практика использования C ++. Эддисон-Уэсли Профессионал. п. 51. ISBN  9780133796742.