Вопросы и ответы | 

Надежда Ковалевская
Игорь Орещенков
Игорь Орещенков | Репутация: 78 (Без статуса) 26 мая 2018 в 20:20

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

Если используется статическое связывание, то при сборке программы компилятор прикрепляет к её машинному коду код необходимых подпрограмм из библиотек, подставляет в точки вызовов подпрограмм их адреса, и записывает результат в исполняемый файл (например, EXE-файл для Windows). При запуске таких программ они загружаются в память вместе с подпрограммами и выполняются.

Чтобы не дублировать код подпрограмм в каждом исполняемом файле (а потом ещё и в оперативной памяти), операционная система может использовать динамические библиотеки (DLL-файлы для Windows). В этом случае машинный код подпрограмм из библиотеки загружается в общую область памяти, известную операционной системе. Программы, собранные с использованием динамического связывания, не имеют в своих файлах машинных кодов используемых подпрограмм. Вместо этого они настроены на использование таблицы адресов подпрограмм - при необходимости обратиться к подпрограмме программа ищет её адрес в этой таблице. А сама таблица адресов заполняется загрузчиком программы (это модуль операционной системы) в ходе подготовки её к выполнению. Заполнение этой таблицы и есть "связывание адресов во время выполнения".

В объектно-ориентированном программировании используется похожая концепция, которая называется ранним и поздним связыванием.

Рустам Шарифьянов
Владимир Ефименко
Владимир Ефименко | Репутация: 4897 (Эксперт) 11 апреля 2018 в 13:12

Добрый день. В разделе дипломы оформите заказ Pdf версии .после оплаты в истории заказов будет кнопка скачать

Инна Соболева
Вопрос по магазину

Здравствуйте, приобрела книгу в электроном виде ,ответили заказ принят , но я не могу оплатить, спасибо . Если можно ответьте пожалуйста по быстрее книга нужна 

Владимир Ефименко
Владимир Ефименко | Репутация: 4897 (Эксперт) 22 декабря 2017 в 12:41

Добрый день. Увы в системе оплаты ведутся работы и она временно не доступна , приносим извинения за доставленные неудобства.

Александр Адлер
Почему сбросился курс?

Здравствуйте!
Записался на курс "Администрирование сетей на платформе MS Windows Server", прошел первый тест, через некоторое время зашел, чтобы продолжить, но прогресс курса сброшен. В чем причина?

Лидия Большакова
Как пройти тест по Word?

Здравствуйте.

учитель задал пройти на этом сайте тест по Word, для получения аттестата, но найти я его не могу. прошу помочь.

Владимир Ефименко
Владимир Ефименко | Репутация: 4897 (Эксперт) 26 апреля 2017 в 14:51

Добрый день. В правом в верхнем углу вбиваете в поиск ключевое слово и находите нужный вам курс, после записываетесь и изучаете