Ensamblaje vs dll
Una biblioteca es una colección de recursos que se pueden utilizar para desarrollar aplicaciones. Una biblioteca generalmente se compone de subrutinas, funciones, clases, valores y tipos. Durante el proceso de enlace (generalmente realizado por un enlazador), las bibliotecas y los ejecutables hacen referencia entre sí. Los archivos DLL son los archivos de la biblioteca que están vinculados dinámicamente. DLL fue desarrollado por Microsoft. Pero debido a algunos problemas presentes con archivos DLL, Microsoft se le ocurrió el formato de archivo de ensamblaje (con el .NET Framework). Los archivos de ensamblaje son muy similares a los DLL físicamente, pero tienen muchas diferencias internas.
Que es dll?
La biblioteca de enlaces dinámicos (más comúnmente conocido como DLL) es una implementación de la biblioteca compartida desarrollada por Microsoft. Usa el .dll, .OCX o .Extensiones DRV y se utilizan en Microsoft Windows y sistemas operativos OS/2 ... DLL es utilizado por los archivos DLL regulares. Y .La extensión OCX es utilizada por las bibliotecas que contienen controles ActiveX y .DRV Extension es utilizado por archivos de controlador del sistema heredado. El formato de archivo DLL es el mismo que los archivos de Windows exe (archivos ejecutables portátiles en Windows de 32 bits/64 bits y nuevo ejecutable en Windows de 16 bits). Por lo tanto, cualquier combinación de código, datos y recursos se puede contener en archivos DLL (al igual que en los archivos EXE). De hecho, los archivos de datos con el formato de archivo DLL se denominan DLL de recursos. Bibliotecas de iconos (con .Extensión ICL) y archivos de fuentes (con .Fon y .Extensiones FOT) son ejemplos de DLL de recursos.
Los componentes llamados secciones forman una DLL y cada sección tiene sus propios atributos como solo lectura/escritura y ejecutable/no ejecutable. Las secciones del código son ejecutables, mientras que las secciones de datos no son ejecutables. Las secciones del código son compartidas y las secciones de datos son privadas. Eso significa que todos los procesos utilizando la DLL utilizarán la misma copia del código, mientras que cada proceso tendrá su propia copia de los datos. La biblioteca dinámica principal para Windows es el kernel32.DLL, que contiene las funciones base (funcionalidad relacionada con la memoria y la memoria) en Windows. Com (modelo de objeto componente) es la extensión de DLL a OOP (programación orientada a objetos). Las DLL convencionales son más fáciles de usar que los archivos COM.
Que es una asamblea?
Microsoft introdujo los archivos de ensamblaje para resolver varios problemas presentes con archivos DLL. Los archivos de ensamblaje se introdujeron con Microsoft .NET Framework. Una unidad lógica de funcionalidad ejecutable se llama ensamblaje. Los ensamblados son ejecutables bajo .CLR neto (tiempo de ejecución del idioma común). Físicamente, los ensamblados existen como archivos exe o dll. Pero, son muy diferentes a los DLL de Microsoft Win32, internamente. Un archivo de ensamblaje está compuesto por un manifiesto, metadatos, MISL (código de lenguaje intermedio de Microsoft) y otros recursos. Una asamblea se autodescribe. El manifiesto contiene la información como el nombre, la versión, la cultura, el nombre fuerte, la lista de archivos, los tipos y las dependencias. El código MISL se ejecuta a través de CLR (no se puede ejecutar directamente).
¿Cuál es la diferencia entre ensamblaje y dll??
DLL es una biblioteca vinculada dinámicamente. Aunque, los asambleas son físicamente iguales a los DLL, son muy diferentes internamente. No es posible mantener la consistencia entre un conjunto de DLLS, pero el CLR puede mantener la consistencia entre un conjunto de ensamblajes, porque los ensamblados se autodescriben (contienen la lista de dependencias internamente). A diferencia de los DLL, la información de versiones se aplica para ensamblados (por el CLR). La implementación de lado a lado (diferentes aplicaciones que usan diferentes versiones) es posible con los ensamblados.