Dot net framework
Dot net framework is the collection class library called Framework Class Library (FCL) .
* It provides common platform across a variety of devices and other programming language
* Able to integrate with other technology to build the good work.
Dot net frameworks provide a large number of classes. Sometime programmer gets confused to use the existing program or to create a new one for better speed. But sometimes due to high load of work programmer used the existing code which is already present in FCL (Framework Class Library).
Features related to framework:
Common Type System (CTS )
It ensures that, program which is not written in Dot Net language can interact with dot Net Framework.
In CTS, there are two containers:
1st container stored the value which is called Stack.
2nd container stored the reference which is called as Heap.
Then CTS provides the base set of data types which makes other language to interact easily in .Net framework.
Common language runtime ( CLR ):
It provides the execution environment for all programming language which is supported by the dot net technology.
It covers the managed code to Native code.
Managed code means the code which runs under CLR.
Native code is compiled to run with a particular processor
The CLR provides memory management, type safety, exception handling, garbage collection, security and thread management.
Just in Time (JIT)
It is a compiler which converts IL code to Native code. This compiler compile before the MS Intermediate language is executed. Native code is the CPU specific code.
There are three types of compiler:
Pre-JIT Compiler (Compile whole code to Native code)
Normal JIT Compiler ( compile only that method that are at run-time but store the method into the cache which is useful when method is called again and again then it will compile it in cache for execution)
Econo JIT compiler (Compile only that method that are at run-time methods are not stored)
Common Intermediate Language:
It is an intermediate language between the source code and machine code. During the compile time, the compiler convert the source code into Microsoft Intermediate Language, .exe and .dll file is build then the code is sent to CLR (JIT compiler) which convert the it to the native code
It is in binary format that describe the characteristics of code. Metadata is machine-readable information. When a compiler compiles the program, it produces the CLR along with the Metadata. Both are contained in the PE file. Metadata is machine-readable information.