Click here to Skip to main content
15,884,298 members
Articles / All Topics

What is IL Code, CLR, CTS, CLS & JIT?

Rate me:
Please Sign up or sign in to vote.
4.42/5 (35 votes)
2 Jun 2014CPOL1 min read 135.5K   12   12
What is IL code, CLR, CTS, CLS & JIT

IL/MSIL/CIL - IL code is a CPU independent partially compiled code. It’s partially compiled because we do not know in what kind of environment .NET code will run and on runtime IL Code will compile to machine code using the environmental properties (CPU, OS, machine configuration, etc).

ILDASM - This is a tool provided by Visual Studio to view IL code. To run ILDASM, we have to select option “Visual Studio Command Prompt” from “Visual Studio Tools” and type ildasm. It will open the ildasm tool where we can open any exe/dll.ildasm tool read the assembly by reflection and it is showing us various properties, methods which our assembly has. Here, we can see IL code of any method/property by clicking on that.

CLR - CLR is the heart of the .NET framework and it does 4 primary important things:

  1. Garbage collection
  2. CAS (Code Access Security)
  3. CV (Code Verification)
  4. IL to Native translation

CTS - CTS ensures that data types defined in two different languages get compiled to a common data type. This is useful because there may be situations when we want code in one language to be called in other language.

We can see a practical demonstration of CTS by creating the same application in C# and VB.NET and then compare the IL code of both applications. Here, the datatype of both IL code is same.

CLS - CLS is a subset of CTS. CLS is a set of rules or guidelines. When any programming language adheres to these set of rules, it can be consumed by any .NET language.CTS.

JIT - JIT compiles the IL code to Machine code just before execution and then saves this transaction in memory.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Software Developer (Senior)
India India
I am "Akash Jain" working in IT Industry from last 6 years. From the beginning of my career I worked with C# for both windows and web application. In my short career I worked for 2 Major ERP Applications, e-commerce applications, CMS based applications and also few static websites.

I am a MCP for web application for ASP.NET 4.0. I have also done PMP training as project management is one of my interest area.

Comments and Discussions

 
Questionplease elaborate when you write an article. Pin
Deb Kumar Ghosal6-Nov-17 1:56
Deb Kumar Ghosal6-Nov-17 1:56 
GeneralMy vote of 1 Pin
Lodovico Guicciardini17-Oct-16 23:10
Lodovico Guicciardini17-Oct-16 23:10 
GeneralMy Vote of 1 Pin
Aaditya Hasiyan25-Aug-15 6:33
Aaditya Hasiyan25-Aug-15 6:33 
Questionpractical example Pin
Sakthikumars20-Aug-15 20:41
professionalSakthikumars20-Aug-15 20:41 
QuestionIts Good. Pin
Ujjval Shukla5-Jun-15 2:49
Ujjval Shukla5-Jun-15 2:49 
GeneralMy vote of 5 Pin
Santosh K. Tripathi4-Apr-15 19:09
professionalSantosh K. Tripathi4-Apr-15 19:09 
GeneralMy vote of 5 Pin
Ștefan-Mihai MOGA20-Jul-14 4:48
professionalȘtefan-Mihai MOGA20-Jul-14 4:48 
GeneralMy vote of 5 Pin
Omar Gameel Salem17-Jul-14 20:50
professionalOmar Gameel Salem17-Jul-14 20:50 
Questionsome good info Pin
BillW3316-Jul-14 11:13
professionalBillW3316-Jul-14 11:13 
QuestionUseful Information Pin
Rohan Vispute3-Jun-14 2:41
Rohan Vispute3-Jun-14 2:41 
QuestionShort and sweet explanation. Pin
Mukesh Dusane2-Jun-14 21:03
professionalMukesh Dusane2-Jun-14 21:03 
GeneralMy vote of 5 Pin
Akash Ashok Jain2-Jun-14 19:33
professionalAkash Ashok Jain2-Jun-14 19:33 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.