概述
.NET Framework 是一种技术,该技术支持生成和运行下一代应用程序和 XML Web Services。 .NETFramework 旨在实现下列目标:
一个公共编程框架,成为基类库,所有语言的开发者都能利用它。是CLI(Common Language Infrastructure,公共语言基础结构)的规范之一。
CLR(公共语言运行时)
CLR(公共语言运行时,CommonLanguage Runtime)和Java虚拟机一样也是一个运行时环境,是一个可由多种编程语言使用的运行环境。CLR的核心功能包括:内存管理、程序集加载、安全性、异常处理和线程同步,可由面向CLR的所有语言使用。并保证应用和底层操作系统之间必要的分离。CLR是.NET Framework的主要执行引擎。
MSIL(微软中间语言)
在.NET框架中,公共语言基础结构允许不同的语言使用.NET框架,在程序执行过程中这些语言(C#、VB.NET等)最后都被转换成一种通用语言:MSIL(微软中间语言)。
当我们以.NET程序语言如C#编写好代码之后,就是用.NET提供的编译器来编译程序,由此产生exe或者dll件。但此时所编译出来的代码并不是可以让CPU能马上执行的机器码,而是MSIL。在代码被调用执行时,CLR的Class Loader会将MSIL代码载入内存,通过即时(Just In Time)方式临时编译成某一平台的CPU可以执行的程序。
原文:http://blog.csdn.net/senior_lee/article/details/19412105