CLR - Common Language Runtime
It
is the runtime that converts a MSIL code into the host machine language code.
It is the execution engine for .NET Framework applications. It provides a
number of services, including:
·
Code management
(loading and execution)
·
Memory Management
·
Thread Management
·
Conversion of IL to
native code.
·
Access to metadata
(enhanced type information)
·
Managing memory for
managed objects (Garbage collection)
·
Enforcement of code
access security ( Security Management)
·
Exception handling,
including cross-language exceptions
·
Interoperation btw
managed code, COM objects, and pre-existing DLL's (unmanaged code and data)
·
Support for
developer services (profiling, debugging, and so on).
·
Type safety.