Describe the roles of CLR in .NET Framework.
CLR gives an environment to execute .NET applications on target machines. CLR is also a common runtime environment for all .NET code irrespective of their programming language, as the compilers of respective language in .NET Framework change every source code into a common language known as MSIL or IL (Intermediate Language).
CLR also gives various services to execute processes, like memory management service and security services. CLR performs various tasks to manage the implementation process of .NET applications.
The responsibilities of CLR are listed as follows:
Automatic memory management
Garbage Collection
Code Access Security
Code verification
JIT compilation of .NET code