托管执行和公共语言基础结构
处理器不能直接解释一个程序集.程序集采用的是另一种语言,即公共中间语言(Common Intermediate Language, CIL),或者简称为中间语言(IL).
注意 CIL的另一种说法即MSIL, 即Microsoft IL.
C#编译器只是将C#源代码文件转换成为CIL.为了将CIL代码转换成处理器能够理解的机器码,还要执行一个额外的步骤(该步骤通常是在执行时完成的).这个步骤涉及C#执行中的一个重要元素:VES(Virtual Execution System,虚拟执行系统).VES也被人称为“运行时”,它根据需要来编译CIL代码,这个过程称为即时编译或者JIT编译(just-in-time compilation).
托管代码(managed code) :代码在"运行时"这样一个"代理"的上下文中执行.
托管执行(managed execution):在"运行时"的控制下执行的过程.
非托管代码(unmanaged code):在执行过程中不需要"运行时"的代码.
CLI(common Languageinfrastructure,公共语言基础结构)
VES规范被包含在一个包容面更广的规范中,即CLI(common Languageinfrastructure,公共语言基础结构)规范.作为一个国际行标准,CLI包含了以下几方面的规范.
原文:https://www.cnblogs.com/caozhenjia/p/12201590.html