Что такое библиотека DLL в Windows ?!

что такое dll в Windows
Аббревиатура DLL расшифровывается как Dynamic Link Library. На русский язык это можно перевести как «динамически подключаемая библиотека», которая содержит определенные данные (либо код) используемые несколькими приложениями и программами. Благодаря модульности, они позволяют «наращивать» функционал операционной системы, а значит — увеличить возможности ОС.
Причем вся «прелесть» такого подхода заключается в том, что один и тот же файл может использоваться совершенно разными типами программ — играми, офисом, графическим редактором и т.п. 

В чем основные преимущества DLL?!

Я приведу только самые весомые плюсы использования динамически подключаемых библиотек:
— Способствуют более экономному и «правильному» использованию ресурсов.
— Обеспечение модульной архитектуры
— Простота установки и развертывания функционала
— Лёгкость обновления и расширения возможностей динамических библиотек
— Сокращение случаев дублирования кода
При нескольких программ с помощью той же библиотеки функций, библиотеки DLL можно уменьшить дублирование кода, который загружается на диске и в оперативной памяти.

К сожалению, есть и минусы:

— Снижение надёжности работы системы из-за угроз DLL HELL (одновременное использование программами разных версий одной и той же библиотеки, имеющих конфликт между собой)
— Конфликты библиотек
— Снижение безопасности системы из-за воздействия вирусов.

Где находятся DLL-файлы в Windows?!

Ещё с самых древних версий все наиболее важные для работы системы и прикладных программ библиотеки лежать в папке:

%windir%\System32

С появлением 64-битных версий Windows 7 и Windows 8 — добавилась ещё и папка:

%windir%\SysWOW64

Учитывая, что у большинства пользователей Windows система установлена на диске C:\, то пути будут соответственно:

C:\Windows\System32
и
C:\Windows\SysWOW64

При установке пакетов, инсталлятор автоматически кидает в эти папки нужные DLL-ки.

One thought on “Что такое библиотека DLL в Windows ?!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *