¿Qué es una biblioteca de enlace dinámico?

Una biblioteca de enlace dinámico (DLL) es el término designado a los archivos con código ejecutable que se cargan bajo operación de un programa por parte del sistema operativo.

Estos archivos son exclusivos del sistema Windows, siendo .dll la extensión con la que se identifican tales archivos, aunque el concepto principal existe en casi todos los sistemas operativos.
Los DLL son bibliotecas que contienen funcionalidades o recursos que utilizan las aplicaciones. Algunas ventajas de estos son:

  • Reducción en tamaño de archivos ejecutables, ya que gran parte del código del programa se puede almacenar en las bibliotecas y no en el mismo archivo ejecutable.
  • Se pueden compartir entre varias aplicaciones. Cuando el código es suficientemente genérico, se puede utilizar un sólo DLL para múltiples aplicaciones.
  • Facilidad en la gestión y aprovechamiento de la memoria del sistema, puesto que la carga dinámica permite al sistema operativo poder aplicar algoritmos que mejoren el rendimiento del sistema cuando se cargan estas bibliotecas.
  • Mayor flexibilidad en cambios. Al distribuir una nueva versión de la biblioteca es posible mejorar el rendimiento y solucionar algunos errores.

INFNIERNO DE LAS DLL

Aunque estos archivos representan excelentes ventajas, existen ciertos problemas que pueden ocurrir con las bibliotecas, ya que al estar en constante modificación por parte de los programas que utilizan las mismas bibliotecas, puede llegar el punto en que dejan de ser compatibles, lo que ocasiona dos efectos:

  • Que alguna instalación de software reemplace una DLL con una nueva versión que no es compatible.
  • Que al desinstalar algún programa, éste elimine una DLL compartida.

Como consecuencia en ambos casos, los programas que utilizaban la vieja versión de la DLL dejarán de funcionar, por ello se denominó a estos problemas como el “infierno de las DLL”.

Las versiones más nuevas de Windows y los nuevos scripts de instalación MSI han resuelto en gran parte este problema, sin embargo, el problema surge cuando se utilizan instaladores antiguos o se realizan modificaciones manuales.


Gracias por apoyar el libre conocimiento con tu donación!
Bitcoin: bc1q4sw9260twfcxatj8mjp7358cyvrf8whzlelyhj
Ethereum: 0xFb93D2a3c9d1A0b83EE629c2dE1725BCa192e581
Litecoin: LbFduJmHvQXcpCnwfUT7aJ4DYoWSL3iQw8
Dogecoin: D7QQVqNR5rk215A4zd2gyzV9P2bLQtZHFV
Transferencia bancaria en México:
Cuenta CLABE: 661610005838513425 Nombre: Masterhacks LATAM Banco: Alternativos

Unete a nuestros grupos:
WhatsApp: https://chat.whatsapp.com/HcazyklpyeU4X3BF657KFQ
Telegram: https://t.me/masterhacks_net
Canal de WhatsApp https://whatsapp.com/channel/0029VaBBLCn5vKAH9NOWCl3K