Responsibility of CLR in .NET Framework
Garbage Collection: - CLR manages memory to avoid memory leaks. When objects are not referred GC automatically releases those memories and allocates it back to OS.
.
Code Access Security: - CAS grants rights to program. This granted right is dependent upon the configuration of machine.
.
Code Verification: - This ensures proper execution of .NET application and prevents .NET application to perform illegal operation such as accessing in valid memory location etc.
.
IL to Native translators and optimizer: - CLR uses JIT compiler to translate to IL code to machine code or native code depending on target machine. Thus final execution of .NET application happened!