Динамически подключаемая библиотека | это... Что такое Динамически подключаемая библиотека? (original) (raw)

Есть более полная статья

DLL (англ. dynamic-link library — «библиотека динамической компоновки», «динамически подключаемая библиотека») — понятие операционных систем Microsoft Windows и IBM OS/2, динамическая библиотека, позволяющая многократное использование различными программными приложениями. K DLL относятся также элементы управления ActiveX и драйверы. В мире UNIX аналогичные функции выполняют так называемые общие объекты (англ. shared objects).

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

Цели введения

Первоначально предполагалось, что введение DLL позволит эффективно организовать память и дисковое пространство, используя только один экземпляр библиотечного модуля для различных приложений. Это было особенно важно для ранних версий Microsoft Windows с жёсткими ограничениями по памяти.

Далее, предполагалось улучшить эффективность разработок и использования системных средств за счёт модульности. Замена _DLL_-программ с одной версии на другую должна была позволить независимо наращивать систему, не затрагивая приложений. Кроме того, динамические библиотеки могли использоваться разнотипными приложениями — например, Microsoft Office, Microsoft Visual Studio и т. п.

В дальнейшем идея модульности выросла в концепции Component Object Model и System Object Model.

Фактически, полных преимуществ от внедрения динамически подключаемых библиотек получить не удалось по причине явления, называемого DLL hell («ад DLL»). DLL hell возникает, когда несколько приложений требуют одновременно различные, не полностью совместимые, версии библиотек, что приводит к сбоям в этих приложениях и к конфликтам типа DLL hell, резко снижая общую надёжность операционных систем. Поздние версии Microsoft Windows стали разрешать параллельное использование разных версий DLL (технология SxS), что свело на нет преимущества изначального принципа модульности.

Ссылки

Просмотр этого шаблона Компоненты Microsoft Windows
Основные AeroClearTypeДиспетчер рабочего столаDirectXПанель задач (ПускОбласть уведомлений) • Проводник (Пространство имён • Специальные папки • Ассоциации файлов) • Windows Search (Smart folders • iFilters) • GDIWIMSMB.NET FrameworkXPS • Active Scripting (WSHVBScriptJScript) • COM (OLEDCOMActiveX • Структурированное хранилище • Сервер транзакций) • Теневая копияWDDM • UAA • Консоль Win32
Службыуправления Архивация и восстановление • COMMAND.COMcmd.exeСредство переноса данных • Просмотр событий • Установщикnetsh.exePowerShell • Отчёты о проблемах • rundll32.exe • Программа подготовки системы (Sysprep) • Настройка системы (MSConfig) • Проверка системных файлов • Индекс производительности • Центр обновленияВосстановление системыДефрагментация дискаДиспетчер задачДиспетчер устройствКонсоль управленияОчистка дискаПанель управления (элементы)
Приложения Контакты • DVD Maker • Факсы и сканирование • Internet Explorer • Журнал • Экранная лупаMedia CenterПроигрыватель Windows Media • Программа совместной работы • Центр устройств Windows Mobile • Центр мобильности • Экранный диктор • Paint • Редактор личных символов • Удалённый помощник • Распознавание речи • WordPadБлокнотБоковая панельЗвукозапись • Календарь • КалькуляторНожницыПочта • Таблица символов • Исторические: Movie MakerNetMeetingOutlook ExpressДиспетчер программДиспетчер файловФотоальбом
Игры Chess Titans • Mahjong Titans • Purble Place • Пасьянсы (КосынкаПаукСолитер) • СапёрПинбол • Червы
Ядро ОС Ntoskrnl.exeСлой аппаратных абстракций (hal.dll) • Бездействие системыsvchost.exeРеестрСлужбыДиспетчер управления сервисамиDLL (формат модулей) • PENTLDR • Диспетчер загрузки • Программа входа в систему (winlogon.exe) • Консоль восстановления • Windows RE • Windows PE • Защита ядра от изменений
Службы Autorun.inf • Фоновая интеллектуальная служба передачи • Файловая система стандартного журналирования • Отчёты об ошибках • Планировщик классов мультимедиа • Теневая копияПланировщик задач • Беспроводная настройка
Файловые системы ProtogonNTFS (Жёсткая ссылкаТочка соединенияТочка монтирования • Точка повторной обработки • Символьная ссылкаTxFEFS) • WinFSFATexFATCDFS • UDF • DFS • IFS
Сервер Active Directory • Службы развёртывания • Служба репликации файлов • DNS • Домены • Перенаправление папок • Hyper-VIIS • Media Services • MSMQ • Защита доступа к сети (NAP) • Службы печати для UNIX • Удалённое разностное сжатие • Службы удаленной установки • Служба управления правами • Перемещаемые профили пользователейSharePoint • Диспетчер системных ресурсов • Удаленный рабочий стол • WSUSГрупповая политикаКоординатор распределённых транзакций
Архитектура NT • Диспетчер объектов • Пакеты запроса ввода/вывода • Диспетчер транзакций ядра • Диспетчер логических дисков • Диспетчер учетных записей безопасности • Защита ресурсовlsass.execsrss.exesmss.exe • spoolsv.exe • Запуск
Безопасность BitLockerЗащитникПредотвращение выполнения данных • Обязательный контроль целостности • Защищенный канал данных • UAC • UIPI • БрандмауэрЦентр обеспечения безопасностиЗащита файлов
Совместимость Подсистема UNIX (Interix) • Виртуальная машина DOS • Windows on WindowsWOW64