Click here to Skip to main content
Click here to Skip to main content

Tagged as

Go to top

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

, 2 Jun 2014
Rate this:
Please Sign up or sign in to vote.
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 i

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 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 ensure 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 practical demonstration of CTS by creating same application in C# and VB.Net and then compare the IL code of both application. 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)

Share

About the Author

Akash Ashok Jain
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.
Follow on   Twitter   Google+   LinkedIn

Comments and Discussions

 
GeneralMy vote of 5 PinprofessionalMihai MOGA20-Jul-14 4:48 
GeneralMy vote of 5 PinmemberOmar Gameel Salem17-Jul-14 20:50 
Questionsome good info PinprofessionalBillW3316-Jul-14 11:13 
QuestionUseful Information PinmemberRohan Vispute3-Jun-14 2:41 
QuestionShort and sweet explanation. PinmemberMukesh Dusane2-Jun-14 21:03 
GeneralMessage Removed PinprofessionalAkash Ashok Jain2-Jun-14 19:34 
GeneralMy vote of 5 [modified] PinprofessionalAkash Ashok Jain2-Jun-14 19:33 

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

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

| Advertise | Privacy | Mobile
Web01 | 2.8.140921.1 | Last Updated 2 Jun 2014
Article Copyright 2014 by Akash Ashok Jain
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid