公共语言运行时(CLR)是一套完整的、高级的虚拟机,它被设计为用来支持不同的编程语言,并支持它们之间的互操作。
CLR和Java虚拟机一样也是一个运行时环境,是一个可由多种编程语言使用的运行环境。CLR的核心功能包括:内存管理、程序集加载、安全性、异常处理和线程同步,可由面向CLR的所有语言使用。并保证应用和底层操作系统之间必要的分离。CLR是.NET Framework的主要执行引擎。

CLR 的主要功能
运行时有很多功能,我们可以概括为以下几类:
基础功能——那些对其他的特性有广泛影响的功能。包括:
垃圾回收。
内存安全和类型安全。
对编程语言的高级支持。
次要功能——那些由基础功能发展而来的、但不是必须的功能:
AppDomains 程序隔离。
程序安全与沙盒。
其他功能——那些运行时环境需要的、但并不依赖基础功能的特性。这些功能帮助我们建立了一个完整的编程环境。比如:
版本管理。
调试、性能分析。
互操作。
