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