What is Common Language Runtime (CLR) in .NET

Common Language Runtime (CLR)

The CLR is a virtual machine that provides a runtime environment for the .NET Framework. It is responsible for managing the code execution. The code developed with a language compiler that targets the runtime and the code which is directly managed by the CLR is called managed code

The CLR manages the code execution by providing memory management and enforcing security policies. It provides cross-language integration, exception handling, enhanced security, deployment support, and more. And it is used to execute different languages including C#, VB, and more. 

The Common Language Runtime (CLR) helps to convert the source code into the byte code and this byte code is known as Common Intermediate Language (CIL). And after converting that code into byte code a CLR uses a JIT compiler at run time which helps to convert a CIL code into the machine code.

common language runtime in .net, common language runtime diagram


Exception Handling: It provides exception-handling capabilities that allow developers to catch and handle errors that occur during runtime. And it improves the application performance.

Memory Management: It provides automatic memory management for .NET applications. And it automatically manages memory allocation, deallocation, and garbage collection. 

Multiple Languages: It supports multiple programming languages, including C#, VB.NET, and F#.

Object-Oriented Programming: It supports object-oriented programming (OOP) concepts such as inheritance, polymorphism, and encapsulation which easier to write code that is reusable, and maintainable.

Multithread & Garbage Collection: CLR allows the creation of multithreaded, scalable applications and Garbage Collection.

Debug Support: It provides comprehensive debugging support which makes it easier to identify and fix bugs in .NET applications.


i) Common Language Specification (CLS): It is a part of the specifications of the .NET Framework. And it is the fundamental set of language features supported by the Common Language Runtime (CLR) of the .NET Framework.

ii) Common Type System (CTS): It is a fundamental concept in the Microsoft .NET framework, which defines a set of rules and guidelines for the creation, usage, and management of data types in .NET applications.

And It is a standard for defining and using data types in the .NET framework.

It is used to ensure interoperability between different programming languages that are used to develop .NET applications. The common Type System (CTS) is intended to allow programs written in different programming languages to easily share information.

iii) Garbage Collection (GC): The Garbage Collection (GC) is responsible for managing the memory that is used by .NET applications.

iv) Just-In-Time (JIT): The Just-In-Time (JIT) compiler is responsible for converting the Intermediate Language Code into the native machine code that can be executed by the operating system.


Post a Comment

* Please Don't Spam Here. All the Comments are Reviewed by Admin.

Top Post Ad

Below Post Ad

Ads Section