.Net运行时(CLR):也称公共语言运行时(Common Language Runtime)或CLR,它实际上管理代码,他可以处理加载程序、运行程序 的代码以及提供所有支持服务的代码。
受管制的代码:在.Net环境中运行的任何代码都是受管制的代码(managed code),.Net外部的代码也运行在windows上,这些代码称 为未受管制的代码(unmanaged code)。
中间语言(IL):在.net运行时加载和运行代码时,这种语言确定代码的位置。在编译受管制的代码时,编译器实际上是用中间语言,CLR处理 代码执行前的最后编译阶段。IL可以非常快速的编译成本机代码,同时支持.Net的功能。
公共类型系统(CTS):为了实现语言的互操作性,必须有一组各种语言都认可的基本数据类型,这样才能对所有的语言进行标准化处理。CTS 就提供了这个功能,还提供了定义定制类的功能
.Net基类:这是一个扩展的类库,他饱含预先写好的代码,执行各种windows任务。
装配件:装配件是存储编译好的受管制的代码单元。他与传统的exe和dll有些类似,但具有自我描述的重要功能,包括所谓的元数据,他给出了 装配件及在其中定义的方法,类型等细节,装配件可以是私有的(只能用于一个应用程序),也可以是共享的(可以用于windows上所 有的应用程序)。
装配件告诉缓冲存储器:这是存储共享装配件的磁盘区域
公共语言规范(CLS):这是确保代码可以在任何语言中访问的最小集合,所有用于.Net的编译器都应该该支持CLS。CLS构成了可以在.Net 和 IL中使用的功能子集,代码也可以使用CLS外部的功能。如果非CLS功能在代码所在的装配件外部是可见的,那么这 些功能就不能在某些语言中使用。
反射:因为装配件完全是自我描述的,因此理论上可以编程访问装配件元数据。实际上一些基类就是为了达到这些功能而设计的。这种技术称为 反射。
Just-In-Time 编译(JIT):表示执行编译过程的最后阶段, 即从中间语言转换为本机代码,其名称的来源是部分代码是按需要即时编译的。
装配件清单:这是存储包含元数据的装配件的区域。
应用域:这是CLR允许不同的代码在同一个过程空间中运行的方式。这些代码的独立性是通过下述方式实现的:在执行代码前使用IL的类型安全性进行验证,确定代码之间的 每个部分都是正确的。
无用存储单元收集:这是CLR清理不需要的内存的方式,应用程序不需要负责内存的清理。
本文介绍了.Net运行时(CLR)相关知识,包括受管制与未受管制代码、中间语言(IL)、公共类型系统(CTS)等。还提及.Net基类、装配件、公共语言规范(CLS)等组件,以及反射、JIT编译等技术,同时说明了应用域和无用存储单元收集等内容。
2152

被折叠的 条评论
为什么被折叠?



