Получать новые статьи на свою почту
Популярные статьи
  • Что такое жёсткий диск, и в чём его сходство с подробнее
  • Почему в Proshow Producerе нету русского языка? подробнее
  • Дисковод оптических дисков, или просто CD/DVD/BD подробнее
  • Вся правда о том что такое IP подробнее
Поддержать проект
01.04.2018
Блог Дмитрия Вассиярова.
Автор: Рубрика:

Повесть о том — что такое DLL файлы

Лого

 

Рад видеть вас на своём блоге!

Нашли у себя в компьютере DLL файлы и понятия не имеете, что это такое? Я поделюсь с вами информацией. Без них большинство программ и операционная система в целом не смогут функционировать. Хотите знать больше? Не пропустите мою статью.

 

Разъяснение

Данная аббревиатура расшифровывается как «Dynamic Link Library», а на нашем языке — «библиотека динамической компоновки» или чаще как «динамически подключаемая библиотека». Она по умолчанию устанавливается в ОС Windows, а раньше ещё и в IBM OS/2, пока она не прекратила своё существование. Библиотека предназначена для многократного использования различным программным обеспечением.

DLL содержит в себе важные сведения: о конфигурации системы, совместимости устройств, командах для их корректной работы и пр. Всё это хранится в файлах одноимённого расширения либо .drv для нескольких системных драйверов, .cpl — для файлов панели управления или в .ocx, если речь идёт о библиотеках содержащих фреймворк ActiveX.

Объекты .dll включают в себя коды и данные, которые могут использоваться одновременно несколькими программами. Своим содержимым они похожи на тип файлов EXE. Кстати, у них даже одинаковый формат: Portable Executable (PE) для 32-х и 64-х битных приложений Windows, и New Executable (NE) для 16-битных.

Многие устанавливаемые нами программы уже имеют в своём наборе такие файлы. В противном случае они пользуются теми, которые есть в операционке.

 

Динамические библиотеки на практике

В теории вроде бы всё ясно, но чтобы понять суть предмета нашей беседы, необходимо увидеть его с практической стороны. Без него проги не могут работать, потому что не знают, как это делать.

Вот вам элементарный пример: чтобы на чистом листе в Office Word начали появляться вводимые вами символы, нужны компоненты библиотеки, потому что сама по себе ОС не в курсе, что значит та или иная нажатая вами клавиша.

Даже когда вы просто включаете компьютер и ещё не успели ничего сделать, библиотека уже активно действует: показала вам время и дату, открыла программы в автозапуске, выстроила оформление рабочего стола, проштудировала сведения о конфигурации операционки и т. п. Вдобавок, как система общаться с мышью, клавиатурой, принтером и другим оборудованием, тоже объясняет ДЛЛ.

 

Преимущества DLL

Для чего предназначены динамические библиотеки? Они создавались для того, чтобы:

  • Экономить ресурсы системы. Как я уже упоминал, для разных приложений может быть использован единовременно один и тот же набор функций, благодаря чему эргономично расходуется память ОС и дисковое пространство.
  • Применять к разноплановому софту, например, к офисным приложениям и в то же время к Visual Studio и пр.
  • Совершенствовать операционку посредством модульности. Проще говоря: разработчики с каждой новой версией совершенствуют незримые для пользователя библиотеки, благодаря чему программное обеспечение становится более функциональным.
  • Облегчить инсталляцию. Если для работы той или иной программы требуется исправить или обновить функцию в библиотеке, не нужно её повторно прикреплять к проге для открытия или установки. Более того, всё остальное ПО автоматически поймёт, что вы внесли коррективы, и воспользуется уже новой версией по мере надобности.

 

 

Ад для библиотек

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

 

Как это видит пользователь?

Предположим, вы никогда не обновляли на своём компьютере эти библиотеки и установили игру, выпущенную лет 5 назад. Она работает у вас нормально. Затем вы обнаружили, что недавно вышла последняя часть игры, и инсталлировали её тоже.

Однако вторая уже отказывается запускаться. Своё неповиновение она сопроводила сообщением, мол, ошибка DLL, отсутствует файл. Это значит, что имеющиеся на вашем компе компоненты, необходимые для её запуска, не работают или вовсе отсутствуют.

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

 

Решение

Чтобы подобные ситуации не всплывали, в последних поколениях Виндовс появилась технология Side-by-side assembly. Она позволяет использоваться параллельно разные версии библиотек. Правда, это нововведение идёт в разрез с принципом модульности, который изначально был преимуществом.

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

 

На этом всё.

Если вам станет что-то непонятно в компьютере или просто скучно, возвращайтесь — у меня всегда найдутся полезные статьи.

СчастлИво!

 

 

Этой статьей стоит поделиться
Получать новые статьи на свою почту

Комментариев к статье: 1

Оставить коментарий

:|:x:shock::oops::mrgreen::lol::idea::evil::cry::cool::arrow::???::?::!: