什么是托管模块?
1. 任何使用面向CLR的编程语言,经过编译器后,生成的结果就是托管模块
2. 托管模块是标准的32位Microsof windons 可移植体(PE32)文件或64位 PE32+
1. 托管模块的组成部分
1. PE32或PE32+头
1. 标准Windows PE头
1. PE32格式,文件能在32位和64位Windows上运行
2. PE32+格式 只能在64位Windows上运行
2. 还标识了文件类型,包括GUI,CUI或者DLL,并包含一个时间标志来指出文件生成时间
2. CLR头(包含这个模块成为托管模块的信息)
1. 版本,flag,托管模块入口方法的元素据,模块的元素据,资源,强名称
3. 元数据,每个模块都包含元素据,主要有两种表
1. 描述源代码中定义的类型和成员
2. 描述源代码引用的类型和成员
4. IL代码
1. 编译器编译源代码生成的代码。
2. 在运行时,CLR将IL编译成本机CPU指令