【发布时间】:2012-05-10 12:00:34
【问题描述】:
所以,我对 .NET 运行时架构和结构很感兴趣。我想逐步了解它是如何工作的。我有几本书,也在谷歌中寻找一些答案,但现在,我想要一些问题的正确答案。
在编写的书中,CSC.exe(编译器)生成托管模块,其中包含: 1.PE头 2.CLR头 3. 元数据 4. IL代码
编译后,工具 AL.exe(程序集链接器)将该模块合并到程序集中。 我也知道,程序集有两个主要的文件扩展名:DLL 或 EXE。
但是,我对托管模块很感兴趣。它如何编译编译器以及文件格式有什么?它是 .netmodule 扩展名吗?还是 DLL?
附言 对不起我的英语。
【问题讨论】:
-
阅读 ECMA335。有趣且内容丰富。
-
没有人。我明白什么是 IL 代码等等。我的问题是关于托管模块扩展。有时我读到,模块和程序集具有相同的扩展名( DLL )。有时我读到,模块有 .netmodule 扩展名。有一些模糊的文件扩展名到底有一个模块(托管模块)。我们知道,Managed module有4个要点: 1. PE Header; 2.CLR头; 3.元数据; 4. IL代码;但是什么是物理管理模块。当语言编译器从高级代码创建它时,它有什么扩展?
标签: .net clr .net-assembly