Friday, August 29, 2008

CLR - Common Language Runtime

What it does
Like Java Virtual Machine.
1. Load classes and compile it JIT
2. Verify versioning, security of assembles
3. Garbase Collection

CLR executables or assemblies, .dll or .exe file

PE - Portable Executable
all assemblies must confirm to PE format.
dumpbin.exe, a commandline tool to produce PE file from an assembly:
dumpbin hello.exe/all

PE has two sections: Meta data and IL, which controls execution of CLR

Meta data
Data about data, is description of the assembly, modules, classes, interfaces, properties, fields, events etc.

Meta data includes type library, so CLR can ensure type safe.
Class Loader and JIT compiler use the meta data as well.

Also, tools such as intelisense, is implemented with meta data.
ildasm.exe, il disassembler, let us see both metadata and il of an assembly

No comments: