Wednesday, July 9, 2008

.Net Assembly, Metadata and Manifest

If you create a .dll or an .exe file using .Net compiler, the resulting module is called Assembly.
Assembly consists of CIL (Common Intermediate language aka Intermediate language IL aka Microsoft Intermediate language MSIL)
CIL: Platform independent bytecode. JIT (Just in time compiler) compiles this CIL to platform specific code when necessary.
Metadata: Assemblies contain Metadata, which describes in clear detail the characteristics of each TYPE(Classes, Structures,Enumerations,Delegates & Interfaces) and its members like properties, methods etc. Visual Studio reads the Metadata to provide Intellisense feature.
Manifest: In addition to CIL and Metadata, Assemblies contain Metadata to describe the assembly itself. This is called Manifest and it includes version of the assembly, external dependency, culture information, copyright information etc

No comments:

Post a Comment