托管模块的组成:PE表头,CLR表头,元数据,中间语言(IL)代码
中间语言(IL):面向对象的机器语言
程序集:组件复用,实施安全策略和版本策略的最小单位
程序集的组成:清单,托管模块,资源文件
即时编译(JIT),生成本地代码(NGen.exe),代码验证与安全(PEVerify.exe)
ECMA标准——动态脚本语言(ECMAScript)
ECMA标准——C#编程语言
ECMA标准——通用语言基础构造(CLI):文件格式,通用类型系统(CTS),可扩展元数据系统,中间语言(IL),对底层平台的访问(P/Invoke)
通用语言运行时(CLR),通用类型系统(CTS),通用语言规范(CLS)
CLR支持的三种互操作:
1、托管代码调用DLL中非托管函数(P/Invoke)
2、托管代码使用现存的COM组件(非托管组件作为COM服务器)(TlbImp.exe)
3、非托管代码使用托管类型(托管类型作为COM服务器)(TlbExp.exe、RegAsm.exe)
CSC.exe,AL.exe,ILASM.exe,ILDASM.exe,NGen.exe,PEVerify.exe,TlbImp.exe,TlbExp.exe,RegAsm.exe